컨텐츠상세보기

실체가 손에 잡히는 딥러닝, 기초부터 실전 프로그래밍
실체가 손에 잡히는 딥러닝, 기초부터 실전 프로그래밍
  • 저자<아즈마 유키나가> 저/<최재원> 역
  • 출판사책만
  • 출판일2019-08-20
  • 등록일2020-01-14
보유 2, 대출 0, 예약 0, 누적대출 6, 누적예약 0

책소개

딥러닝의 기초 지식과 수학부터 
파이썬을 활용한 실전 프로그래밍 구현까지, 
한 권으로 모든 것을 끝내는
딥러닝 입문자를 위한 최고의 책! 


지금까지 나왔던 다른 어떤 책들과는 달리 딥러닝을 수식과 코드로서 매우 이해하기 쉽게 설명한다. 또한, 간결하고 이해하기 쉬운 예제 코드들이 하나 하나 모여 책의 마지막에 이르러 최종적으로 실전에서도 활용할 수 있는 완결된 딥러닝 코드를 완성함으로써, 독자가 성취감을 느끼며 끝까지 포기하지 않고 완독할 수 있다는 점은 이 책의 최대 강점이다. 이 책에서는 파이썬과 기초 수학부터 시작해 역전파(Backpropagation)와 컨볼루션 신경망(CNN)까지, 딥러닝의 필수 요소를 빠짐없이 자세하게 설명한다. 독자가 파이썬 프로그래밍을 직접 코딩하면서 차근차근 순서대로 공부해 나가다 보면 딥러닝의 기초를 완벽하게 습득할 수 있다.

저자소개

‘인간과 AI의 공존’을 미션으로 하는 주식회사 SAI-Lab의 대표이사로, AI 관련 교육과 연구 개발에 종사하고 있다. 토후쿠대학 대학원 이학연구과 수료 후 이학박사(물리학)를 취득했다. 인공지능(AI), 복잡계, 뇌과학, 특이점(singularity) 등에 관심이 많으며 프로그래밍/AI 강사로서 지금까지 오프라인에서 1000명 이상, 온라인에서는 2만 명에 가까운 인원을 지도했다. 세계 최대 교육 동영상 플랫폼인 유데미(Udemy)에서 ‘처음 시작하는 파이썬’, ‘실전 데이터과학과 머신러닝’, ‘모두의 딥러닝’, ‘모두의 AI 강좌’ 등을 강의하고 있다. 엔지니어로도 일하면서 VR, 게임, SNS 등 분야를 불문한 다양한 애플리케이션을 개발했다.

목차

[1장] 딥러닝이란
1.1  지능이란 무엇인가
1.2  인공지능(AI) 
1.3  머신러닝
1.4  신경망 
1.5  딥러닝 개요
1.6  인공지능과 딥러닝의 역사
__1.6.1  제1차 인공지능 전성기: 1950년대~1960년대
__1.6.2  제2차 인공지능 전성기: 1980년대~1990년대 후반
__1.6.3  제3차 인공지능 전성기: 2000년대 이후

[2장] 파이썬 개요
2.1  파이썬을 사용하는 이유
2.2  아나콘다와 주피터 노트북 활용
__2.2.1  아나콘다 다운로드
__2.2.2  아나콘다 설치
__2.2.3  주피터 노트북 실행
__2.2.4  주피터 노트북 사용
__2.2.5  노트북 종료
2.3  파이썬 문법
__2.3.1  변수와 변수형
__2.3.2  연산자
__2.3.3  리스트
__2.3.4  튜플
__2.3.5  딕셔너리
__2.3.6  if문
__2.3.7  for문
__2.3.8  while문
__2.3.9  내포
__2.3.10  함수
__2.3.11  변수의 범위
__2.3.12  클래스
2.4  넘파이
__2.4.1  넘파이 임포트
__2.4.2  넘파이 배열
__2.4.3  배열을 생성하는 다양한 함수
__2.4.4  reshape를 이용한 형태 변환
__2.4.5  배열 연산
__2.4.6  브로드캐스트
__2.4.7  원솟값에 접근
__2.4.8  슬라이싱
__2.4.9  축과 transpose 메소드
__2.4.10  넘파이의 함수
2.5  맷플롯립
__2.5.1  모듈 임포트
__2.5.2  그래프 생성
__2.5.3  그래프 디자인
__2.5.4  산포도 표시
__2.5.5  이미지 표시

[3장] 딥러닝을 위한 수학
3.1  수학 기호
__3.1.1  시그마(Σ)로 총합계 표시
__3.1.2  자연상수 e
__3.1.3  자연로그 log
3.2  선형대수
__3.2.1  스칼라
__3.2.2  벡터
__3.2.3  행렬
__3.2.4  텐서
__3.2.5  스칼라와 행렬의 곱셈
__3.2.6  각 원소 간의 곱셈
__3.2.7  행렬 곱
__3.2.8  행렬 전치
3.3  미분
__3.3.1  상미분
__3.3.2  미분법의 기본 공식
__3.3.3  연쇄법칙
__3.3.4  편미분
__3.3.5  전미분
__3.3.6  다변수의 연쇄법칙
3.4  정규분포

[4장] 신경망
4.1  신경세포 네트워크
4.2  신경세포의 모델화
4.3  뉴런의 네트워크화
4.4  회귀와 분류
__4.4.1  회귀
__4.4.2  분류
4.5  활성화 함수
__4.5.1  계단 함수
__4.5.2  시그모이드 함수
__4.5.3  tanh
__4.5.4  ReLU
__4.5.5  Leaky ReLU
__4.5.6  항등 함수
__4.5.7  소프트맥스 함수
4.6  신경망 구현
__4.6.1  단일 뉴런 구현
__4.6.2  가중치와 편향의 영향
__4.6.3  신경망 구현
__4.6.4  각 층의 구현
__4.6.5  신경망(회귀)
__4.6.6  신경망의 표현력
__4.6.7  신경망(분류)

[5장] 역전파
5.1  학습 규칙
__5.1.1  헵의 규칙
__5.1.2  델타 규칙
5.2  역전파란?
5.3  훈련 데이터와 테스트 데이터
5.4  손실 함수
__5.4.1  오차제곱합
__5.4.2  교차 엔트로피 오차
5.5  경사 하강법
__5.5.1  경사 하강법 개요
__5.5.2  기울기 구하는 방법
__5.5.3  출력층 기울기
__5.5.4  출력층에서 입력값 기울기
__5.5.5  은닉층 기울기
__5.5.6  기울기를 구하는 식 정리
__5.5.7  회귀 문제에서 기울기 구하는 방법
__5.5.8  분류 문제에서 기울기 구하는 방법
5.6  최적화 알고리즘
__5.6.1  최적화 알고리즘 개요
__5.6.2  확률적 경사 하강법
__5.6.3  모멘텀
__5.6.4  아다그라드
__5.6.5  RMSProp
__5.6.6  아담
5.7  배치 사이즈
__5.7.1  에포크와 배치
__5.7.2  배치 학습
__5.7.3  온라인 학습
__5.7.4  미니 배치 학습
5.8  행렬 연산
__5.8.1  행렬의 형식
__5.8.2  행렬을 이용한 순전파
__5.8.3  행렬을 이용한 역전파
5.9  회귀 문제에서의 역전파 구현
__5.9.1  회귀 예(sin 함수의 학습)
__5.9.2  출력층 구현
__5.9.3  은닉층 구현
__5.9.4  역전파 구현
__5.9.5  역전파 구현 전체 코드(회귀)
__5.9.6  실행 결과
5.10  분류 문제에서의 역전파 구현 
__5.10.1  분류 사례(소속 영역 학습)
__5.10.2  각 층의 구현
__5.10.3  역전파 구현 전체 코드(분류)
__5.10.4  실행 결과

[6장] 딥러닝 구현
6.1  다층화에 따른 문제
__6.1.1  국소 최적해 함정
__6.1.2  과적합
__6.1.3  기울기 소실
__6.1.4  장기간의 학습 시간 문제
6.2  문제 해결 방안
__6.2.1  하이퍼 파라미터 최적화
__6.2.2  규제화
__6.2.3  가중치와 편향 초깃값
__6.2.4  조기 종료
__6.2.5  데이터 확장
__6.2.6  데이터 전처리
__6.2.7  드롭아웃 
6.3  붓꽃 품종 분류
__6.3.1  붓꽃 데이터 세트
__6.3.2  훈련 데이터와 테스트 데이터
__6.3.3  신경망 구성
__6.3.4  학습에 관련된 각 설정 
6.4  딥러닝 구현
__6.4.1  데이터 입력과 전처리
__6.4.2  각 층의 구현
__6.4.3  신경망 구축
__6.4.4  미니배치법 구현
__6.4.5  정답률 측정
__6.4.6  붓꽃 데이터 품종 분류를 위한 전체 코드
__6.4.7  실행 결과
__6.4.8  과적합 방지를 위한 대책
__6.4.9  아다그라드 구현
__6.4.10  드롭아웃 구현
__6.4.11  과적합 방지 대책의 결과
__6.4.12  품종 분류

[7장] 컨볼루션 신경망(CNN)
7.1  컨볼루션 신경망(CNN)의 개요
__7.1.1  시각 처리 체계
__7.1.2  CNN 구조
__7.1.3  컨볼루션 층
__7.1.4  풀링층
__7.1.5  전결합층
__7.1.6  패딩
__7.1.7  스트라이드
__7.1.8  CNN 학습
__7.1.9  변수 정리
7.2  im2col과 col2im
__7.2.1  im2col과 col2im의 개요
__7.2.2  im2col 알고리즘
__7.2.3  간단한 im2col 구현
__7.2.4  배치와 채널을 고려한 실전 im2col 코드
__7.2.5  col2im 알고리즘
__7.2.6  col2im 구현
7.3  컨볼루션층 구현
__7.3.1  구현 개요
__7.3.2  순전파
__7.3.3  역전파
7.4  풀링층 구현
__7.4.1  구현 과정 개요
__7.4.2  순전파
__7.4.3  역전파
7.5  전결합층 구현
7.6  컨볼루션 신경망 구현
__7.6.1  사용 데이터 세트
__7.6.2  구축할 신경망
__7.6.3  CNN 코드
__7.6.4  실행 결과
__7.6.5  컨볼루션층의 시각화
__7.6.6  컨볼루션층 효과
7.7  더 깊은 신경망
__7.7.1  신경망 구축
__7.2.2  실행 결과

[8장] 그 밖의 딥러닝 기술
8.1  순환 신경망(RNN)
__8.1.1  RNN의 개요
__8.1.2  LSTM
__8.1.3  GRU
8.2  자연어 처리
__8 2.1  형태소 분석
__8.2.2  단어 임베딩
8.3  생성 모델
__8.3.1  생성적 적대 신경망(GAN)
__8.3.2  VAE
8.4  강화학습
__8.4.1  강화학습 개요
__8.4.2  심층 강화학습
8.5  GPU 활용
__8.5.1  GPU란
__8.5.2  딥러닝에서 GPU 활용
8.6  딥러닝 프레임워크
8.7  딥러닝의 미래