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

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

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

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
pullwall

Well done! 코딩

AI

[pytorch] 심층신경망 (Deep Neural Network) 예제 코드

2024. 11. 19. 16:27
728x90
import torch
import torch.nn as nn
import torch.nn.init as init
import torch.optim as optim

num_data = 1000
num_epoch = 10000

noise = init.normal_(torch.FloatTensor(num_data, 1), std=1)
x = init.uniform_(torch.Tensor(num_data, 1), -15, 15)
y = (x**2) +3
y_noise = y + noise

# Sequential 함수 안에 작성된 순서대로 데이터 연산 진행
# 은닉층은 4개, activation은 ReLU 사용
model = nn.Sequential(
    nn.Linear(1,6),
    nn.ReLU(),
    nn.Linear(6,10),
    nn.ReLU(),
    nn.Linear(10,6),
    nn.ReLU(),
    nn.Linear(6,1),
)

loss_func = nn.L1Loss()
optimizer = optim.SGD(model.parameters(), lr=0.002)

loss_array = []

for i in range(num_epoch):
  # gradient를 누적하지 않기 위해 매 epoch마다 0으로 초기화
  optimizer.zero_grad()
  output = model(x)
  loss = loss_func(output, y_noise)
  # gradient 계산
  loss.backward()
  # 파라미터 업데이트
  optimizer.step()
  loss_array.append(loss.item())


# loss 시각화
import matplotlib.pyplot as plt
plt.plot(loss_array)
plt.xlabel("Epoch")
plt.ylabel("Loss")
plt.title("Training Loss Over Epochs")
plt.show()
728x90

'AI' 카테고리의 다른 글

[pytorch] 순환신경망 (Recurrent Neural Network) 예제 코드  (0) 2024.11.21
[pytorch] 합성곱 신경망 (Convolution Neural Network) 예제 코드  (0) 2024.11.20
[pytorch] 선형 회귀 (Linear Regression) 예제 코드  (0) 2024.11.19
seq2seq (시퀀스 to 시퀀스)  (0) 2024.09.12
RNN (Recurrent Neural Network)  (0) 2024.09.12
    'AI' 카테고리의 다른 글
    • [pytorch] 순환신경망 (Recurrent Neural Network) 예제 코드
    • [pytorch] 합성곱 신경망 (Convolution Neural Network) 예제 코드
    • [pytorch] 선형 회귀 (Linear Regression) 예제 코드
    • seq2seq (시퀀스 to 시퀀스)
    pullwall
    pullwall

    티스토리툴바