실전 예제로 배우는 GAN (파이썬, 텐서플로, 케라스로 다양한 GAN 아키텍처를 구축하고 활용하기)

실전 예제로 배우는 GAN (파이썬, 텐서플로, 케라스로 다양한 GAN 아키텍처를 구축하고 활용하기)

$25.11
Description
파이썬, 텐서플로, 케라스를 사용해 강력한 생성 모델을 구현함으로써 차세대 딥러닝을 간소화한다!
생성적 적대 신경망(GAN) 개발 작업은 복잡할 뿐만 아니라, 이해하기 쉬운 코드를 찾기도 어렵다. 이 책에서는 CycleGAN, simGAN, DCGAN 및 2차원 이미지로 3차원 형상을 생성하는 모델과 같은 여덟 가지 최신 GAN 구현 예제를 소개한다. 각 장마다 파이썬, 텐서플로, 케라스의 공통 아키텍처를 바탕으로 쉽게 구축할 수 있는 GAN 아키텍처를 읽기 쉬운 형태로 탐구해 보는 데 도움이 되는 유용한 방법을 담고 있다.

모델의 작동 방식을 이해할 수 있게 다양한 GAN 아키텍처 유형을 다루는 일부터 DCGAN, Pix2Pix 등과 관련된 사용 사례를 다루는 데 도움이 되는 직관적인 방법들이 들어 있다. 또한 바로 구현해 볼 수 있는 코드 기반 솔루션을 제공하는 덕분에, GAN 모델을 사용하면서 부딪히는 문제를 해결하거나 도전에 대응할 수 있는 실질적인 도움을 얻게 될 것이다.
저자

조시칼린

로봇공학과머신러닝을접목한분야에집중하는물리학자이자기술자이다.고급센서및산업용로봇,머신러닝,자율주행차량을연구하는일에종사한다.물리학,기계공학,컴퓨터과학학위를취득했다.여가시간에는차량을다루는일(36대의소유차량을세어보는일),컴퓨터를조립하는일,로봇공학및머신러닝분야의신기술을학습하는일(이책을쓰는일같은것)을즐겨한다.

목차

▣01장:생성적적대신경망이란?
들어가며
생성모델과판별모델
__수행방법…
____판별모델링
____생성모델링
__작동방식…
신경망의사랑싸움
__수행방법…
__작동방식…
심층신경망
__수행방법…
__작동방식…
아키텍처구조의기초
__수행방법…
__작동방식…
기본빌딩블록:생성기
__수행방법…
__작동방식…
기본빌딩블록:판별기
__수행방법…
__작동방식…
기본빌딩블록:손실함수
__수행방법…
__작동방식…
훈련
__수행방법…
__작동방식…
서로다른방식으로모아쓰는GAN의각부분들
__수행방법…
__작동방식…
GAN의출력
__수행방법…
__작동방식…
한정된데이터로일하기:화풍모사
____새로운장면을꿈꾸기:DCGAN
____모조데이터로보강하기:SimGAN
GAN구조의이점
__수행방법…
__작동방식…
연습문제

▣02장:데이터중심,용이한환경,데이터준비
들어가며
데이터가그다지도중요한가?
__출발준비
__수행방법…
__작동방식…
__더많은정보…
개발환경설정
__출발준비
__수행방법…
____GPU를구동할엔비디아드라이버설치하기
____Nvidia-Docker를설치하기
____개발용컨테이너만들기
__더많은정보
데이터형식
__출발준비
__수행방법…
__작동방식…
____코드를도커컨테이너에서실행하기
__더많은정보…
데이터전처리
__출발준비
__수행방법…
__작동방식…
__더많은정보…
비정상데이터
__출발준비
__수행방법…
____단변량방법
__더많은정보…
데이터균형조절
__출발준비
__수행방법…
____표본추출기법
____앙상블기법
__더많은정보…
데이터확대
__출발준비
__수행방법…
__작동방식…
__더많은정보…
연습문제

▣03장:첫번째GAN을100줄이내로만들기
들어가며
이론에서코드로:간단한예제를만들어보기
__출발준비
__수행방법…
____Discriminator기저클래스
____Generator기저클래스
____GAN기저클래스
__관련정보
케라스와텐서플로를사용해신경망을구축하기
__출발준비
__수행방법…
____도커컨테이너만들기
__관련정보
첫번째GAN구성요소인판별기를설명하기
__출발준비
__수행방법…
____가져오기
____초기화변수(판별기클래스내의init)
____판별기에대한모델정의
____판별기클래스의도우미메서드
____두번째GAN구성요소인생성기를설명하기
__출발준비
__수행방법…
____가져오기
GAN의모든부분을종합하기
__출발준비
__작동방식…
____1단계:GAN클래스초기화
____2단계:모델정의
____3단계:도우미함수
여러분의첫GAN을훈련하기
__출발준비
__수행방법…
____훈련클래스정의
____실행스크립트를정의하기
모델을훈련하고GAN의출력을이해하기
__출발준비
__수행방법…
__작동방식…
연습문제

▣04장:DCGAN을이용한새외부구조물에대한꿈
들어가며
DCGAN이란무엇인가?간단한의사코드예제
__출발준비
__수행방법…
____생성기
____관련정보
도구:독특한도구가필요할까?
__출발준비
__수행방법…
____DCGAN개발환경
____LSUN데이터를내려받아압축을풀기
__더많은정보…
____관련정보
데이터파싱:데이터가독특한가?
__출발준비
__수행방법…
코드구현:생성기
__출발준비
__수행방법…
____생성기초기화:DCGAN업데이트
____DCGAN구조구축
__관련정보
코드구현:판별기
__출발준비
__수행방법…
판별기클래스초기화
모델구조를구축하기
__관련정보
훈련
__출발준비
__수행방법…
____클래스초기화로변경
____의사코드에서변경한사항을이해하기
____새롭고향상된훈련스크립트
____파이썬의run스크립트
____셸의run스크립트
평가:코드가작동하는지를어떻게알수있는가?
__출발준비
__작동방식…
성능향상을위한파라미터조절
__수행방법…
____훈련파라미터
____판별기및생성기아키텍처파라미터
연습문제

▣05장:Pix2Pix를사용해이미지를변환하기
들어가며
의사코드로맛보는Pix2Pix
__출발준비
__수행방법…
____판별기
____생성기
데이터셋파싱
__출발준비
__수행방법…
____새로운Dockerfile을사용해도커컨테이너를만들기
____보조스크립트작성
코드구현:생성기
__출발준비
__수행방법…
코드:GAN신경망
__출발준비
__수행방법…
코드구현:판별기
__출발준비
__작동방식…
훈련
__출발준비
__수행방법…
____클래스설정
____훈련메서드
____결과를그리기
____도우미함수
____훈련스크립트실행
연습문제

▣06장:CycleGAN을사용해화풍을모사하기
들어가며
의사코드:어떻게작동하는가?
__출발준비
__수행방법…
____CycleGAN은어떤점이강력한가?
CycleGAN데이터셋파싱
__출발준비
__수행방법…
____도커구현
____데이터내려받기스크립트
____실제데이터는어떻게보일까?
코드구현:생성기
__출발준비
__수행방법…
코드구현:판별기
__출발준비
__수행방법…
코드구현:GAN
__출발준비
__수행방법…
훈련시작
__출발준비
__수행방법…
____초기화
____훈련메서드
____도우미메서드
연습문제

▣07장:SimGAN에서모조이미지를사용해사실적인눈동자사진을생성하기
들어가며
SimGAN아키텍처의작동원리
__출발준비
__수행방법…
의사코드:어떻게작동하는가?
__출발준비
__수행방법…
훈련데이터로작업하는방법
__출발준비
__수행방법…
____Kaggle과API
____도커이미지만들기
____도커이미지실행하기
코드구현:손실함수
__출발준비
__수행방법…
코드구현:생성기
__출발준비
__수행방법…
____상용구항목
____모델개발
____도우미함수
코드구현:판별기
__출발준비
__수행방법…
____상용구
____모델아키텍처
____도우미함수
코드구현:GAN
__출발준비
__수행방법…
SimGAN신경망훈련
__출발준비
__수행방법…
____초기화
____훈련함수
____도우미함수
____파이썬실행스크립트
____셸실행스크립트
연습문제

▣08장:GAN을사용해이미지를3차원모델로만들기
들어가며
3D모델제작을위해GAN사용소개
__출발준비
__수행방법…
____2D이미지의경우:이미지의인코딩공간학습
____3D합성곱을사용해모델을훈련하기
환경준비
__출발준비
__수행방법…
____도커컨테이너만들기
____도커컨테이너만들기
2D데이터인코딩및3D객체와짝짓기
__출발준비
__수행방법…
____간단한인코더를실행하는코드
____도커컨테이너로인코더를실행하는셸스크립트
코드구현:생성기
__출발준비
__수행방법…
____생성기클래스준비
____생성기모델구축
코드구현:판별기
__출발준비
__수행방법…
____판별기클래스준비
____판별기모델구축
코드구현:GAN
__출발준비
__수행방법…
이모델을훈련하기
__출발준비
__수행방법…
____훈련클래스준비
____도우미함수
____훈련메서드
____신경망의출력을그려내기
____훈련스크립트실행
연습문제

출판사 서평

★이책에서다루는내용★

◎한가지GAN아키텍처의구조를의사코드로배운다
◎구축할각GAN모델의공통아키텍처를이해한다
◎텐서플로와케라스를사용해다양한GAN아키텍처를구현해본다
◎서로다른데이터셋을사용해GAN모델에서신경망기능을활성화해본다.
◎다양한GAN모델을결합하고해당모델들을미세하게조정하는방법을배운다
◎2차원이미지를가져와서3차원형상으로만들어내는모델을제작해본다.
◎Pix2Pix를사용해GAN을개발함으로써화풍을모사하게해본다.