로그인정보 입력 영역

내서재

더보기

로그인 후 이용가능합니다.

전자책

  • 다운로드
  • 뷰어사용안내
  • 자료대출안내

새로나온 책

더보기

공지사항

더보기

컨텐츠상세보기

GAN인 액션 - 텐서플로 2.x와 케라스로 구축하는 생성적 적대 신경망 (커버이미지)
알라딘
GAN인 액션 - 텐서플로 2.x와 케라스로 구축하는 생성적 적대 신경망
  • 평점평점점평가없음
  • 저자야쿠프 란그르, 블라디미르 보크 (지은이), 박해선 (옮긴이) 
  • 출판사한빛미디어 
  • 출판일2020-09-17 
보유 1, 대출 0, 예약 0, 누적대출 0, 누적예약 0

책소개

이론, 사례, 수식으로 끝내는 실전 GAN과 생성 모델링
텐서플로 최신 버전 반영! 구글 코랩(Colab)에서 간편하게 예제를 실행해보자!

가장 혁신적인 생성적 적대 신경망(GAN)을 구축하는 방법을 사례와 함께 안내한다. GAN의 개념과 학술적 성과를 소개하되, 수학적 원리는 꼭 필요한 것만 골라서 설명한다. 머신러닝과 딥러닝을 다뤄본 경험이 있는 독자는 GAN의 기초부터 심화까지 한 번에 살펴본 후, GAN 생성에 꼭 필요한 지식을 갖추고 도구를 다루는 방법도 익히게 될 것이다. 구글 코랩을 활용해 텐서플로 2.x와 케라스로 나만의 GAN을 만들어보자.

주요 내용
_ GAN의 작동 원리와 생성자, 판별자 이해하기
_ 오토인코더와 GAN으로 손글씨 숫자 생성하기
_ CNN과 DCGAN으로 GAN을 구현하고 배치 정규화 이해하기
_ ProGAN으로 고해상도 이미지 생성하기
_ 준지도 학습에서 활용하는 SGAN 이해하기
_ CGAN으로 원하는 손글씨 숫자 이미지 생성하기
_ CycleGAN으로 사과를 오렌지로, 오렌지를 사과로 바꿔보기
_ GAN 훈련의 어려움을 이해하고 실제 이미지와 잡음으로 적대 샘플 생성하기
_ 의료, 패션 분야에서 GAN의 활용 방법과 사례 살펴보기

스스로 학습하고 발전하는 한 단계 높은 수준의 신경망
GAN은 일종의 자기 비판적인 머신러닝 시스템입니다. 다른 머신러닝에서는 찾을 수 없어서 항상 아쉬웠던 점이지요. 사람은 끊임없이 가능한 계획을 세우고 실현 가능한지 구별합니다. 그리고 무작정 일에 뛰어드는 게 능사가 아니라는 걸 잘 알고 있지요. 그런 점에서 GAN은 한 단계 높은 수준의 인공지능을 구현하는 정말 합리적인 신경망입니다. GAN은 자동으로 학습한 표현과 머신러닝 피드백 루프를 활용할 수 있으니까요.

머신러닝의 다른 부분에는 이제 그닥 새로울 게 없습니다. 컴퓨터 비전 분야 개념의 대부분은 이미 1998년 이전에 고안된 것입니다. 반면 GAN이 하는 일은 2014년 이전에는 불가능하던 것입니다. GAN은 탄생한 이후로 제가 이 글을 쓰는 지금 이 순간까지 끊임없이 기하급수적으로 성장하고 있습니다.

GAN은 가능성이 많은 흥미로운 신세계입니다. 여러분과 이를 함께 나눌 수 있어서 영광이고 기쁩니다. 이 책을 쓰는 데 2년에 가까운 시간이 걸렸습니다. 우리가 그랬던 것처럼 여러분도 이 책과 함께 즐거운 시간을 보내길 바랍니다. 여러분이 앞으로 세상에 내놓을 놀라운 발명들을 하루빨리 보고 싶습니다.

- '지은이의 말' 중에서

대상 독자
이 책은 머신러닝과 신경망을 다뤄본 경험이 있는 사람을 대상으로 합니다. 책의 각 장에서 필요한 것을 설명하기 위해 최선을 다했지만, 최소한 아래 나열한 것들의 70% 정도는 확실히 알고 있어야 합니다.

1. 중급 이상의 파이썬 프로그램을 만들 수 있는 능력
2. 객체지향 프로그래밍에 대한 이해, 객체를 다루는 방법, 속성, 메서드에 대한 이해
3. 훈련/테스트 데이터셋 분리, 과대적합, 가중치, 하이퍼파라미터 등 머신러닝 기초
4. 확률, 밀도 함수, 확률 분포, 미분, 간단한 최적화 등과 같은 기초 통계학과 미적분학
5. 행렬, 고차원 공간, (이상적으로는) 주성분 분석 같은 선형 대수에 대한 기초
6. 피드포워드 신경망, 가중치와 편향, 활성화 함수, 규제, 확률적 경사 하강법 등 딥러닝 기초
7. 케라스를 조금이라도 써본 경험 혹은 따로 학습할 의지

이 책의 구성
이 책은 이론과 실전을 균형 있게 다루며 총 3부로 구성된다.

1부 GAN과 생성 모델링
생성 학습과 GAN의 기초 개념을 살펴보고 가장 기본적인 GAN 모델을 구현한다.

_1장 GAN 시작하기
GAN을 소개하고 작동 원리를 고수준에서 설명한다. 생성자와 판별자 네트워크가 경쟁하며 훈련하는 방식을 알아본다.

_2장 오토인코더와 생성 학습
GAN의 선구자라 할 수 있는 오토인코더를 먼저 알아본다. 변이형 오토인코더(VAE)를 이용해 손글씨 숫자를 생성해본다.

_3장 첫 번째 GAN 구현하기
GAN 및 적대 학습과 관련된 이론을 자세히 다룬다. GAN과 전통적인 신경망의 핵심적인 차이를 살펴보며, 신경망들의 비용 함수와 훈련 과정의 차이점을 알아본다. 케라스로 GAN을 구현하고 손글씨 숫자를 생성해본다.

_4장 DCGAN
합성곱 신경망(CNN)과 배치 정규화를 소개한다. 그다음 훈련 과정을 안정화하기 위해 배치 정규화를 활용한 고급 GAN 구조인 DCGAN을 구현한다.

2부 최신 GAN 모델
1부에서 익힌 기초를 바탕으로 GAN 이론을 더 깊게 다루고, 고급 GAN 구조를 구현한다.

__5장 GAN 훈련의 어려움과 노하우
GAN을 훈련하는 과정에서 마주치는 이론적, 실제적 어려움과 이를 극복하는 방법을 알아본다. 학술 논문과 발표 자료를 바탕으로 모범 사례를 알아보고 GAN의 성과를 측정하는 방법도 다룬다.

__6장 ProGAN
생성자와 판별자를 훈련하는 최신 방법인 ProGAN을 살펴본다. ProGAN은 훈련 과정에서 새로운 층을 더해서 우수한 품질과 해상도의 이미지를 생성해본다.

__7장 SGAN
준지도 학습을 통해 적은 양의 레이블된 훈련 데이터만으로도 분류 정확도를 개선하는 방법을 배운다. SGAN을 구현하고, 레이블을 활용하여 판별자를 강력한 다중 클래스 분류기로 만드는 방법을 살펴본다.

__8장 CGAN
CGAN으로 생성자와 판별자를 훈련하는 과정에서 레이블이나 다른 조건 정보를 활용하여 정확히 어떤 샘플을 합성할 것인지 특정할 수 없는 생성 모델링의 결점을 극복한다. CGAN을 구현해 원하는 데이터를 직접 생성하는 과정을 살펴본다.

__9장 CycleGAN
이미지를 다른 이미지로 바꾸는 데 사용할 수 있는 CycleGAN의 혁신을 살펴본다. 말 사진을 얼룩말 사진으로 바꾸거나 사과를 오렌지로 바꾸고 오렌지를 사과로 바꾸는 것 등이다.

3부 앞으로 배울 것들
GAN 및 적대 학습의 활용 방법과 사례를 살펴본다.

__10장 적대 샘플
머신러닝 모델을 의도적으로 속여 실수하게 만드는 기술인 적대 샘플을 살펴본다. 이론과 실용 예제로 적대 샘플의 중요성을 설명하고 GAN과 연관성을 살펴본다.

__11장 실용적인 GAN 애플리케이션
앞서 다룬 기술이 의료와 패션 분야에서 어떻게 적용되는지 모범 사례를 살펴본다. 의료 분야에서는 GAN을 적은 양의 데이터를 늘리는 데 활용하는 방법을, 패션 분야에서는 개인화 콘텐츠에 활용하는 방법을 살펴본다.

__12장 향후 전망
책의 주요 내용을 요약하고 GAN의 윤리적 측면을 논하며 마무리한다. 이 분야를 지속해서 탐구하고 싶은 이들을 위해 떠오르는 GAN 기법도 소개한다.

저자소개

크리에이티브와 광고 분야에 GAN을 적용하는 스타트업의 공동 창업자. 2013년부터 데이터 과학 분야에서 일했으며 최근에는 필터드(Filtered)에서 데이터 과학 분야 기술 리더로, 무다노(Mudano)에서는 R&D 데이터 과학자로 재직했다. 영국 버밍엄 대학교와 다수 기업에서 데이터 과학 강의를 만들고 가르쳤다. 현재는 옥스퍼드 대학교에서 객원 교수로 재직 중이다. 또한 심층 기술 재능 투자사 안트러프러너 퍼스트(Entrepreneur First) 일곱 번째 집단의 사내 기업가(Entrepreneur in Residence)다. 왕립통계학회 회원이며 다양한 국제 학회에 초청 연사로 참여했다. 옥스퍼드 대학교를 졸업했다.

목차

[PART 1 GAN과 생성 모델링]



CHAPTER 1 GAN 시작하기

__1.1 GAN이란?

__1.2 GAN의 동작 방식

__1.3 GAN 시스템

__1.4 왜 GAN을 공부해야 할까?

__1.5 마치며



CHAPTER 2 오토인코더와 생성 학습

__2.1 생성 모델링 시작하기

__2.2 오토인코더의 동작 방식

__2.3 GAN과 오토인코더 비교하기

__2.4 오토인코더 구성

__2.5 오토인코더 활용

__2.6 비지도 학습

__2.7 코드가 핵심이다

__2.8 왜 GAN일까?

__2.9 마치며



CHAPTER 3 첫 번째 GAN 구현하기

__3.1 GAN 기초: 적대적 훈련

__3.2 생성자와 판별자

__3.3 GAN 훈련 알고리즘

__3.4 튜토리얼: 손글씨 숫자 생성하기

__3.5 결론

__3.6 마치며



CHAPTER 4 DCGAN

__4.1 합성곱 신경망

__4.2 DCGAN의 간략한 역사

__4.3 배치 정규화

__4.4 튜토리얼: DCGAN으로 손글씨 숫자 생성하기

__4.5 결론

__4.6 마치며



[PART 2 최신 GAN 모델]



CHAPTER 5 GAN 훈련의 어려움과 노하우

__5.1 평가

__5.2 훈련의 어려움

__5.3 게임 설정 정리

__5.4 훈련 노하우

__5.5 마치며



CHAPTER 6 ProGAN

__6.1 잠재 공간 보간

__6.2 놀라운 발전 속도

__6.3 주요 혁신 요약

__6.4 텐서플로 허브를 사용한 실습

__6.5 실용적인 애플리케이션

__6.6 마치며



CHAPTER 7 SGAN

__7.1 SGAN 소개

__7.2 튜토리얼: SGAN 구현하기

__7.3 지도 학습 분류기와 비교하기

__7.4 결론

__7.5 마치며



CHAPTER 8 CGAN

__8.1 동기

__8.2 CGAN 소개

__8.3 튜토리얼: CGAN 구현하기

__8.4 결론

__8.5 마치며



CHAPTER 9 CycleGAN

__9.1 이미지 대 이미지 변환

__9.2 사이클-일관성 손실: 갔다가 돌아오기

__9.3 적대 손실

__9.4 동일성 손실

__9.5 구조

__9.6 객체지향 방식으로 GAN 구현하기

__9.7 튜토리얼: CycleGAN 구현하기

__9.8 CycleGAN의 확장 버전과 애플리케이션

__9.9 마치며



[PART 3 앞으로 배울 것들]



CHAPTER 10 적대 샘플

__10.1 적대 샘플 소개

__10.2 예측, 나쁜 예측, 분포

__10.3 올바른 훈련과 잘못된 훈련

__10.4 신호와 잡음

__10.5 새로운 희망

__10.6 적대 샘플에서 GAN으로

__10.7 결론

__10.8 마치며



CHAPTER 11 실용적인 GAN 애플리케이션

__11.1 의료 분야의 GAN

__11.2 패션 분야의 GAN

__11.3 결론

__11.4 마치며



CHAPTER 12 향후 전망

__12.1 윤리

__12.2 세 가지 혁신 GAN

__12.3 더 읽을거리

__12.4 정리

__12.5 마치며

한줄 서평