pullwall
Well done! 코딩
pullwall
전체 방문자
오늘
어제
  • 분류 전체보기 (151)
    • 개발환경 (2)
    • java study (21)
    • 백준 단계별 (51)
    • 알고리즘 (3)
    • AI (43)
    • 클라우드 (3)
      • Kubernetes in Google (3)
    • 논문 (5)
    • 리눅스 (1)
    • AWS (4)
    • 수학 (15)
    • 기타 (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • LLM
  • Java
  • 쿠버네티스
  • 알고리즘
  • 자바독학
  • 자바
  • 선택정렬
  • pytorch
  • 정렬알고리즘
  • AWS
  • Kubernetes
  • Ai
  • 논문리뷰
  • 정렬
  • Google
  • dataset
  • 단계별
  • 수학
  • 백준
  • 백준 단계별

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
pullwall

Well done! 코딩

AI

[pytorch] 선형 회귀 (Linear Regression) 예제 코드

2024. 11. 19. 15:29
728x90
import torch
import torch.nn as nn
import torch.optim as optim
import torch.nn.init as init

num_data = 1000
num_epoch = 500

x = init.uniform(torch.Tensor(num_data, 1), -10, 10)
noise = init.normal(torch.Tensor(num_data, 1), std=1)

y = 2*x+3
y_noise = 2*(x+noise)+3

model = nn.Linear(1,1)
# Loss함수로 L1 Loss
loss_func = nn.L1Loss()

# Optimizer로 Stochastic Gradient Descent
optimizer = optim.SGD(model.parameters(), lr=0.01)

label = y_noise


# model 학습
for i in range(num_epoch):
  # gradient를 누적하지 않도록 zero_grad 를 통해 매번 0으로 초기화
  optimizer.zero_grad()
  output = model(x)

  loss = loss_func(output, label)
  # gradient 계산
  loss.backward()
  # 파라미터 업데이트
  optimizer.step()

  if i%10 == 0:
    print(loss.data)


# 학습을 통해 결정된 weight와 bias 출력
param_list = list(model.parameters())
print(param_list[0].item(), param_list[1].item())
728x90

'AI' 카테고리의 다른 글

[pytorch] 합성곱 신경망 (Convolution Neural Network) 예제 코드  (0) 2024.11.20
[pytorch] 심층신경망 (Deep Neural Network) 예제 코드  (0) 2024.11.19
seq2seq (시퀀스 to 시퀀스)  (0) 2024.09.12
RNN (Recurrent Neural Network)  (0) 2024.09.12
VGGnet  (0) 2024.09.12
    'AI' 카테고리의 다른 글
    • [pytorch] 합성곱 신경망 (Convolution Neural Network) 예제 코드
    • [pytorch] 심층신경망 (Deep Neural Network) 예제 코드
    • seq2seq (시퀀스 to 시퀀스)
    • RNN (Recurrent Neural Network)
    pullwall
    pullwall

    티스토리툴바