케라스로 구현하는 고급 딥러닝 알고리즘

딥러닝 기법, 오토 인코더, GAN, 변분 오토인코더, 심층 강화학습, 정책 경사 기법 적용하기

GAN, VAE, 심층강화학습(DRL)을 포함한 최근 딥러닝의 발전은 인상적인 AI를 창조하고 있다. 이는 세계 체스 챔피언을 물리친 알파고 제로와 사람이 그린 것처럼 감쪽같아 40만 달러 이상에 팔린 그림을 만들 수 있는, 우리의 새로운 표제 ‘생성적 AI’를 생성한다.

《케라스로 구현하는 고급 딥러닝 알고리즘》은 오늘날 활용할 수 있는 고급 딥러닝 기법을 종합적으로 소개함으로써 각자만의 최첨단 AI를 만들 수 있게 해준다. 이 책에서는 오픈소스 딥러닝 라이브러리로 케라스를 사용해 최신 기법을 적용한 효과적인 AI를 만드는 방법을 다양한 실습 프로젝트를 통해 보여준다.

먼저 이 책에서 다루는 고급 기법의 기본 구성요소가 되는 MLP, CNN, RNN을 살펴본다. 케라스와 텐서플로를 사용해 딥러닝 모델을 구현하는 방법을 배운 뒤 ResNet과 DenseNet을 포함한 심층 신경망 아키텍처를 살펴보고 오토인코더를 생성하는 방법을 알아본다. 아울러 GAN에 대해 알아보고 어떻게 이 모델이 AI 성능의 새로운 지평을 여는지 알아볼 것이다. 다음으로 VAE를 구현하는 방법을 알아보고 GAN과 VAE가 현대 AI의 주요 진전인 인간에게 매우 설득력 있는 데이터를 합성하는 생산 능력을 어떻게 갖추게 되는지 배울 것이다. 마지막으로 현대 AI 분야에서 이룬 핵심 성과인 심층 Q-러닝과 정책 경사 기법 같은 DRL을 구현하는 방법을 배운다.

 

★ 이 책에서 다루는 내용 ★

  • 인간과 비슷한 AI 성능을 내는 최첨단 기법
  • 케라스를 사용해 고급 딥러닝 모델을 구현하는 방법
  • 고급 딥러닝 기법의 구성요소 – MLP, CNN, RNN
  • 심층 신경망 – ResNet, DenseNet
  • 오토인코더와 변분 오토인코더(VAE)
  • 생성적 적대 신경망(GAN)과 창의적인 AI 기법
  • 분해된 표현의 GAN과 교차 도메인 GAN
  • 심층강화학습 기법과 그 구현
  • OpenAI Gym을 사용해 산업 표준 애플리케이션을 구성하는 방법
  • 심층 Q-러닝과 정책 경사 기법

로웰 아티엔자(Rowel Atienza)

로웰 아티엔자는 필리핀 딜리만의 필리핀대학교 전기전자공학부 부교수다. Dado and Maria Banatato 연구소 인공지능 분야의 교수장이기도 하다. 로웰은 필리핀대학교를 졸업한 후로 지능형 로봇에 매료됐다. AI가 탑재된 네 발 달린 로봇을 만들어 싱가포르 국립대학교에서 공학 석사 학위를 받았다. 오스트레일리아 국립대학교에서 인간과 로봇의 상호작용을 위한 시선 위치 추적 기술을 연구해 박사 학위를 마쳤다. 현재는 AI와 컴퓨터 비전을 연구하고 있다. 그의 꿈은 지각하고 이해하고 추론할 수 있는 유용한 기계를 만드는 것이다. 필리핀 과학기술부(DOST), 필리핀 삼성 연구소, 고등 교육 위원회 산하 필리핀-캘리포니아 고등 연구소(CHED-PCARI)로부터 지원을 받아 그 꿈을 이루려고 노력 중이다.

김정인

학업까지 포함하여 약 20년을 IT 분야에 종사했다. 회사를 나오기 전 최근 7년동안 BI/BA 영역에 몸담았다. 관심 있는 분야는 데이터 과학 분야이며, 늘 이 책으로 처음 공부하는 사람처럼 번역에 임하고 싶다. 옮긴 책으로는 《실전! Core ML을 활용한 머신러닝 iOS 앱 개발》 《실전활용! 텐서플로 딥러닝 프로젝트》 《애자일 데이터 과학 2.0》 《구글 애널리틱스 완벽 가이드》 《파이썬 데이터 사이언스 핸드북》 《러닝 스칼라》가 있다.

  • ▣ 01장: 케라스를 활용한 고급 딥러닝 소개
    • 왜 케라스가 딥러닝 라이브러리로 완벽한가?
      • 케라스와 텐서플로 설치하기
    • 핵심 딥러닝 모델 구현하기 – MLP, CNN, RNN
      • MLP, CNN, RNN의 차이점
    • 다층 퍼셉트론(MLP)
      • MNIST 데이터세트
      • MNIST 숫자 분류 모델
      • 정규화
      • 출력 활성화 함수와 손실 함수
      • 최적화
      • 성능 평가
      • 모델 요약
    • 합성곱 신경망(CNN)
      • 합성곱
      • 풀링 연산
      • 성능 평가 및 모델 요약
    • 순환 신경망(RNN)
    • 결론
    • 참고 문헌
    •  
  • ▣ 02장: 심층 신경망
    • 함수형 API
      • 입력이 두 개, 출력이 하나인 모델 생성하기
    • 심층 잔차 신경망(ResNet)
    • ResNet v2
    • 밀집 연결 합성곱 네트워크(DenseNet)
      • CIFAR10을 위한 100계층 DenseNet-BC 구성하기
    • 결론
    • 참고 문헌
    •  
  • ▣ 03장: 오토인코더
    • 오토인코더의 원리
    • 케라스로 오토인코더 구성하기
    • 잡음 제거 오토인코더(DAE)
    • 자동 채색 오토인코더
    • 결론
    • 참고 문헌
    •  
  • ▣ 04장: 생성적 적대 신경망(GAN)
    • GAN의 개요
    • GAN 원리
    • 케라스로 구현한 GAN
    • 조건부 GAN
    • 결론
    • 참고문헌
    •  
  • ▣ 05장: 개선된 GAN 모델
    • 베셔슈타인 GAN
    • 거리 함수
    • GAN의 거리 함수
      • 베셔슈타인 손실 함수 사용하기
      • 케라스에서 WGAN 구현하기
    • 최소 제곱 GAN(LSGAN)
    • ACGAN
    • 결론
    • 참고 문헌
    •  
  • ▣ 06장: 분해된 표현 GAN
    • 분해된 표현
    • InfoGAN
    • 케라스에서 InfoGAN 구현
    • InfoGAN의 생성기 출력
    • StackedGAN
    • 케라스에서 StackedGAN을 구현하기
    • StackedGAN의 생성기 출력
    • 결론
    • 참고 문헌
    •  
  • ▣ 07장: 교차 도메인 GAN
    • CycleGAN 원리
    • CycleGAN 모델
    • 케라스에서 CycleGAN 구현하기
    • CycleGAN의 생성기 출력
    • MNIST 및 SVHN 데이터세트에 CycleGAN 적용하기
    • 결론
    • 참고 문헌
    •  
  • ▣ 08장: 변분 오토인코더
    • VAE 원리
      • 변분 추론
      • 핵심 방정식
      • 최적화
      • 매개변수 조정 기법
      • 디코더 테스트
      • 케라스로 VAE 구현하기
      • VAE를 위해 CNN 사용하기
    • 조건부 VAE(CVAE)
    • b-VAE: 분해된 잠재 표현을 사용한 VAE
    • 결론
    • 참고 문헌
    •  
  • ▣ 09장: 심층강화학습
    • 강화학습의 원리
      • Q 값
      • Q-러닝 예제
      • 파이썬에서의 Q-러닝
      • 비결정론적 환경
      • 시간차 학습
      • OpenAI gym에서의 Q-러닝
      • 심층 Q-네트워크(DQN)
      • 알고리즘 9.6.1 DQN 알고리즘:
      • 케라스에서의 DQN
      • 더블 Q-러닝(DDQN)
    • 결론
    • 참고문헌
    •  
  • ▣ 10장: 정책 경사 기법
    • 정책 경사 정리
    • 몬테 카를로 정책 경사(REINFORCE) 기법
      • 기준선을 적용한 REINFORCE
      • 액터-크리틱 기법
      • 어드밴티지 액터-크리틱(A2C) 기법
      • 케라스로 정책 경사 기법 구현하기
      • 정책 경사 기법의 성능 평가
    • 결론
    • 참고 문헌