GAN 첫걸음
인류에겐 이런 GAN 입문서가 필요했다
『신경망 첫걸음』으로 전 세계 수포자들에게 희망을 준 타리크 라시드가 쓴 파이토치 GAN 입문서. 원리만 알면 머신러닝 분야의 최신 기술 GAN 역시 어렵지 않다. 쉽게 가르쳐주는 사람이 없었던 것뿐이다. 손 글씨부터 풀컬러 연예인 얼굴까지 GAN으로 이미지를 생성해보며 안락하게 GAN을 익힐 수 있게 구성했다. 수학 공식은 줄이고 친절한 그림과 문장으로 개념 원리를 알려준다.
소프트웨어 엔지니어로 시작해 데이터 분석 모델링 업무를 거쳐 현재는 구글에서 모바일 앱 관련 컨설턴트로 근무 중이다. 서울대학교 경영학과를 졸업했으며, 캐글 메달을 다수 보유하고 있다. 『누구나 쉽게 스칼라+플레이』(한빛미디어, 2016)를 집필했고, 『브라이틱스와 함께하는 데이터 분석』(하우, 2020)을 공저했다.
삼성 SDS에서 기업 관련 프로젝트 수요, 인사, 매출 등의 예측 등의 프로젝트에 참여하였고, 사내 벤처에서 개발 및 분석을 하였다. 서울대학교 경영학과를 졸업했으며, 기업 환경과 시장에서 데이터 분석을 통해 새로운 가치를 창출하려 노력하며, 관련 분야 캐글 대회 등에서 메달을 다수 보유하고 있다.
주요 저서로는 『누구나 쉽게 스칼라+플레이』가 있다.
[PART 1 파이토치와 신경망 기초]
CHAPTER 1 파이토치 기본
구글 코랩
파이토치 텐서
파이토치를 이용한 자동 기울기 계산
계산 그래프
핵심 정리
CHAPTER 2 파이토치로 만드는 첫 번째 신경망
MNIST 이미지 데이터셋
MNIST 데이터 얻기
데이터 살펴보기
간단한 신경망
훈련 시각화하기
MNIST 데이터셋 클래스
분류기 훈련시키기
신경망에 쿼리하기
분류기의 성능
CHAPTER 3 성능 향상 기법
손실 함수
활성화 함수
옵티마이저
정규화
복합적 성능 향상 기법
핵심 정리
CHAPTER 4 CUDA 기초
넘파이 대 파이썬
엔비디아 CUDA
CUDA를 파이썬에서 사용하기
핵심 정리
[PART 2 튼튼한 GAN 만들기]
CHAPTER 5 GAN 개념
이미지 생성하기
적대적 훈련
GAN 훈련
훈련하기 어려운 GAN
핵심 정리
CHAPTER 6 단순한 1010 패턴
실제 데이터 소스
판별기 만들기
판별기 테스트하기
생성기 만들기
생성기 결과 확인하기
GAN 훈련하기
핵심 정리
CHAPTER 7 손으로 쓴 숫자 훈련
데이터셋 클래스
MNIST 판별기
판별기 테스트하기
MNIST 생성기
생성기 결과 확인하기
GAN 훈련하기
모드 붕괴
GAN 훈련 성능 향상하기
시드로 실험하기
핵심 정리
CHAPTER 8 얼굴 이미지
컬러 이미지
CelebA 데이터셋
계층적 데이터 형식
데이터 가져오기
데이터 살펴보기
데이터셋 클래스
판별기
판별기 테스트하기
GPU 가속
생성기
생성기 결과 확인하기
GAN 훈련하기
핵심 정리
[PART 3 흥미로운 GAN 기법]
CHAPTER 9 합성곱 GAN
메모리 소비
지역화된 이미지 특성
합성곱 필터
커널 가중치 학습하기
특성의 계층구조
MNIST CNN
CelebA CNN
각자 실험해보기
핵심 정리
CHAPTER 10 조건부 GAN
조건부 GAN 구조
판별기
생성기
훈련 반복문
차트 그리기
조건부 GAN 결과 확인하기
핵심 정리
CHAPTER 11 결론
참 잘했어요!
앞으로 할 일
GAN을 사용하는 데 대한 책임
머신러닝은 정말 멋집니다!
[APPENDIX 부록]
APPENDIX A 이상적인 손실값
APPENDIX B GAN의 우도 학습
APPENDIX C 합성곱 예제
APPENDIX D 불안정한 학습
APPENDIX E 감사의 말 등