Skip to content

EunNamCho/DeepLearning_Scratch3

Repository files navigation

딥러닝 프레임워크를 구현해보자!

Introduction

  1. 교재: 밑바닥부터 시작하는 딥러닝 3권
  2. 기간: 24년 3월 ~ 7월(5개월)
  3. 주 1회 (유동적)
  4. 선수 지식: Python, 벡터, 약간의 미분

Contents

학습목표

  • pytorch와 같은 딥러닝 프레임워크를 Numpy를 이용해서 scratch부터 구현

얻어갈 수 있는 것

  • Pytorch의 동작 원리
  • 효율적인 Python 프로그래밍 방법, OOP
  • 의지, 끈기
  • 인생의 좋은 경험 ㅎ

갑자기 왜 함?

  • 코딩 공부하고 싶은데, 혼자 할 의지가 없어서 ㅎㅎ...

진행 순서

  1. 지정된 분량을 1주 동안 공부한다. (약 2~30p)
  2. 잘 모르겠으면 슬랙에 질문한다. (많은 질문 환영)
  3. 그래도 모르겠으면 코드만 따라한다.
  4. 볼만한 자료, 링크 공유 환영
  5. 각자 github, notion에 코드 및 내용 요약 정리 후 슬랙에 링크를 공유한다.
  6. 매 주 1회 2~30분 정도 정기미팅을 가진다. (피드백 환영)
  7. 만약 발표자로 지정됐으면 공부한 내용, 책과 상관없이 새롭게 알게된 내용을 간단히 정리해서 발표한다. (짧아도 괜찮)
  8. 발표자가 아니더라도 발표를 하고 싶으면 발표한다.

Link

예상 진도

제 1고지: 미분 자동 계산

  1. 상자로서의 변수
  2. 변수를 낳는 함수
  3. 함수 연결
  4. 수치 미분
  5. 역전파 이론
  6. 수동 역전파
  7. 역전파 자동화
  8. 재귀에서 루프로
  9. 함수를 더 편리하게
  10. 테스트
    [칼럼] 자동 미분

제 2고지: 자연스러운 코드로

  1. 가변 길이 인수(순전파)
  2. 가변 길이 인수(개선)
  3. 가변 길이 인수(역전파)
  4. 같은 변수 반복 사용 + Appendix A
  5. 복잡한 계산 그래프(이론)
  6. 복잡한 계산 그래프(구현)
  7. 메모리 관리와 순환 참조
  8. 메모리 절약 모드
  9. 변수 사용성 개선
  10. 연산자 오버로드(1)
  11. 연산자 오버로드(2)
  12. 연산자 오버로드(3)
  13. 패키지로 묶기
  14. 복잡한 함수의 미분
    [칼럼] Define-by-Run

제 3고지: 고차 미분 계산

  1. 계산 그래프 시각화(1)
  2. 계산 그래프 시각화(2)
  3. 테일러 급수 미분
  4. 함수 최적화
  5. 뉴턴 방법에 의한 최적화(수동 계산)
  6. 고차 미분(준비)
  7. 고차 미분(이론)
  8. 고차 미분(구현)
  9. 뉴턴 방법에 의한 최적화(자동 계산)
  10. sin 함수 고차 미분
  11. 고차 미분 계산 그래프
  12. 고치 미분 이외의 용도
    [칼럼] 뉴턴 방법과 double backprop 보충 학습

제 4고지: 신경망 만들기

  1. 텐서를 다루다
  2. 형상 변환 함수
  3. 합계 함수
  4. 브로드캐스트 함수
  5. 행렬의 곱
  6. 선형 회귀
  7. 신경망
  8. 매개변수를 모아두는 계층
  9. 계층을 모아두는 계층
  10. Optimizer를 활용한 매개변수 갱신
  11. 소프트맥스 함수와 교차 엔트로피 오차 + Appendix B
  12. 다중 클래스 분류
  13. Dataset 클래스와 전처리
  14. 미니배체를 뽑아주는 DataLoader
  15. MNIST 학습
    [칼럼] 딥러닝 프레임워크

제 5고지: DeZero의 도전 (자율)

  1. GPU 지원
  2. 모델 저장 및 읽어오기
  3. 드롭아웃과 테스트 모두
  4. CNN 메커니즘(1)
  5. CNN 메커니즘(2)
  6. conv2d 함수와 pooling 함수
  7. 대표적인 CNN(VGG16)
  8. RNN을 활용한 시계열 데이터 처리
  9. LSTM과 데이터 로더
    [칼럼] 앞으로 앞으로

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published