GR_Wyatt
욕심쟁이와이엇
GR_Wyatt
전체 방문자
오늘
어제
  • 분류 전체보기 (35)
    • Legged Robot (1)
      • 이론 (1)
    • 인공지능 (14)
      • 인공지능 기초 정리 (14)
    • 영상처리 (5)
    • Pytorch 기본 (1)
    • 리눅스환경 (11)
    • 결과물_깃허브링크 (1)
    • 잡담 및 후기 (1)

블로그 메뉴

  • 💡Github
  • 📝 Write
  • ⚙ Setup
  • 홈

공지사항

인기 글

태그

  • chromekeyring제거
  • graphicdriver
  • keyring제거
  • 머신러닝
  • 영상처리
  • jupyternotebook설치
  • 공부
  • chromekeyingremove
  • 파이썬
  • 리눅스
  • 프로3세대
  • tensorflow-gpu설치
  • cudnn7.5
  • cuda10.0
  • 인공지능
  • keras설치
  • 텐서플로
  • jupyter설치
  • 우분투
  • tensorflow설치
  • tensorflow-gpu
  • conda가상환경
  • OpenCV
  • 쿠다설치
  • ibus-setup
  • netplan
  • ubuntu18.04
  • 딥러닝
  • 우분투18.04
  • 그래픽드라이버설치

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
GR_Wyatt

욕심쟁이와이엇

Pytorch 기본

[pytorch] 학습을 위해 train 함수에 꼭 필요한 내용들

2020. 3. 21. 22:36
반응형

def train(model, train_loader, optimizer):

    model.train()

    for batch_idx, (data, target) in enumerate(train_loader):

        data, target = data.to(DEVICE), target.to(DEVICE)

        optimizer.zero_grad()

        output = model(data)

        loss = F.cross_entropy(output, target)

        loss.backward()

        optimizer.step()


model.train() 

≫ 모델을 학습 모드로 변환 / 평가 모드는 model.eval() 로 할 수 있다.

 

data, target = data.to(DEVICE), target.to(DEVICE)

≫  각 data 와 target 을 앞서 설정한 DEVICE(GPU 혹은 CPU) 에 보내는 것

 

optimizer.zero_grad()

≫ 반복 때마다 기울기를 새로 계산하므로, 이 함수로 초기화

 

output = model(data)

≫ data를 모델에 넣어서 가설(hypothesis)를 획득

 

loss = F.cross_entropy(output, target)

≫ 가설과 groud truth를 비교하여 loss 계산

 

loss.backward()

≫ loss 를 역전파 알고리즘으로 계산

 

optimizer.step()

≫  계산한 기울기를 앞서 정의한 알고리즘에 맞추어 가중치를 수정

반응형
    GR_Wyatt
    GR_Wyatt
    뚝딱거리는 중

    티스토리툴바