목차
지은이ㆍ옮긴이 소개 = 4
추천사 = 5
옮긴이의 말 = 7
들어가며 = 9
감사의 말 = 14
CHAPTER 1 헬로 파이썬
  1.1. 파이썬이란? = 25
  1.2. 파이썬 설치하기 = 26
    1.2.1. 파이썬 버전 = 26
    1.2.2. 사용하는 외부 라이브러리 = 26
    1.2.3. 아나콘다 배포판 = 27
  1.3. 파이썬 인터프리터 = 27
    1.3.1. 산술 연산 = 28
    1.3.2. 자료형 = 29
    1.3.3. 변수 = 29
    1.3.4. 리스트 = 30
    1.3.5. 딕셔너리 = 31
    1.3.6. bool = 31
    1.3.7. if 문 = 32
    1.3.8. for 문 = 33
    1.3.9. 함수 = 33
  1.4. 파이썬 스크립트 파일 = 34
    1.4.1. 파일로 저장하기 = 34
    1.4.2. 클래스 = 34
  1.5. 넘파이 = 36
    1.5.1. 넘파이 가져오기 = 36
    1.5.2. 넘파이 배열 생성하기 = 37
    1.5.3. 넘파이의 산술 연산 = 37
    1.5.4. 넘파이의 N차원 배열 = 38
    1.5.5. 브로드캐스트 = 39
    1.5.6. 원소 접근 = 40
  1.6. matplotlib = 41
    1.6.1. 단순한 그래프 그리기 = 42
    1.6.2. pyplot의 기능 = 43
    1.6.3. 이미지 표시하기 = 44
  1.7. 정리 = 45
CHAPTER 2 퍼셉트론
  2.1. 퍼셉트론이란? = 47
  2.2. 단순한 논리 회로 = 49
    2.2.1. AND 게이트 = 49
    2.2.2. NAND 게이트와 OR 게이트 = 49
  2.3. 퍼셉트론 구현하기 = 51
    2.3.1. 간단한 구현부터 = 51
    2.3.2. 가중치와 편향 도입 = 52
    2.3.3. 가중치와 편향 구현하기 = 52
  2.4. 퍼셉트론의 한계 = 54
    2.4.1. 도전! XOR 게이트 = 54
    2.4.2. 선형과 비선형 = 56
  2.5. 다층 퍼셉트론이 출동한다면 = 57
    2.5.1. 기존 게이트 조합하기 = 57
    2.5.2. XOR 게이트 구현하기 = 59
  2.6. NAND에서 컴퓨터까지 = 61
  2.7. 정리 = 62
CHAPTER 3 신경망
  3.1. 퍼셉트론에서 신경망으로 = 63
    3.1.1. 신경망의 예 = 64
    3.1.2. 퍼셉트론 복습 = 65
    3.1.3. 활성화 함수의 등장 = 66
  3.2. 활성화 함수 = 68
    3.2.1. 시그모이드 함수 = 68
    3.2.2. 계단 함수 구현하기 = 69
    3.2.3. 계단 함수의 그래프 = 70
    3.2.4. 시그모이드 함수 구현하기 = 72
    3.2.5. 시그모이드 함수와 계단 함수 비교 = 74
    3.2.6. 비선형 함수 = 75
    3.2.7. ReLU 함수 = 76
  3.3. 다차원 배열의 계산 = 77
    3.3.1. 다차원 배열 = 77
    3.3.2. 행렬의 내적(행렬 곱) = 79
    3.3.3. 신경망의 내적 = 82
  3.4. 3층 신경망 구현하기 = 83
    3.4.1. 표기법 설명 = 83
    3.4.2. 각 층의 신호 전달 구현하기 = 84
    3.4.3. 구현 정리 = 89
  3.5. 출력층 설계하기 = 90
    3.5.1. 항등 함수와 소프트맥스 함수 구현하기 = 91
    3.5.2. 소프트맥스 함수 구현 시 주의점 = 93
    3.5.3. 소프트맥스 함수의 특징 = 94
    3.5.4. 출력층의 뉴런 수 정하기 = 95
  3.6. 손글씨 숫자 인식 = 96
    3.6.1. MNIST 데이터셋 = 96
    3.6.2. 신경망의 추론 처리 = 100
    3.6.3. 배치 처리 = 102
  3.7. 정리 = 105
CHAPTER 4 신경망 학습
  4.1. 데이터에서 학습한다! = 107
      4.1.1. 데이터 주도 학습 = 108
    4.1.2. 훈련 데이터와 시험 데이터 = 110
  4.2. 손실 함수 = 111
    4.2.1. 평균 제곱 오차 = 112
    4.2.2. 교차 엔트로피 오차 = 113
    4.2.3. 미니배치 학습 = 115
    4.2.4. (배치용) 교차 엔트로피 오차 구현하기 = 118
    4.2.5. 왜 손실 함수를 설정하는가? = 119
  4.3. 수치 미분 = 121
    4.3.1. 미분 = 121
    4.3.2. 수치 미분의 예 = 124
    4.3.3. 편미분 = 125
  4.4. 기울기 = 127
    4.4.1. 경사법(경사 하강법) = 129
      4.4.2. 신경망에서의 기울기 = 133
  4.5. 학습 알고리즘 구현하기 = 136
    4.5.1. 2층 신경망 클래스 구현하기 = 137
    4.5.2. 미니배치 학습 구현하기 = 141
    4.5.3. 시험 데이터로 평가하기 = 143
  4.6. 정리 = 146
CHAPTER 5 오차역전파법
  5.1. 계산 그래프 = 148
    5.1.1. 계산 그래프로 풀다 = 148
    5.1.2. 국소적 계산 = 150
    5.1.3. 왜 계산 그래프로 푸는가? = 151
  5.2. 연쇄법칙 = 152
    5.2.1. 계산 그래프에서의 역전파 = 153
    5.2.2. 연쇄법칙이란? = 153
      5.2.3. 연쇄법칙과 계산 그래프 = 154
  5.3. 역전파 = 155
    5.3.1. 덧셈 노드의 역전파 = 156
    5.3.2. 곱셈 노드의 역전파 = 157
    5.3.3. 사과 쇼핑의 예 = 159
  5.4. 단순한 계층 구현하기 = 160
    5.4.1. 곱셈 계층 = 160
    5.4.2. 덧셈 계층 = 162
  5.5. 활성화 함수 계층 구현하기 = 165
    5.5.1. ReLU 계층 = 165
    5.5.2. Sigmoid 계층 = 167
  5.6. Affine/Softmax 계층 구현하기 = 170
    5.6.1. Affine 계층 = 170
    5.6.2. 배치용 Affine 계층 = 174
    5.6.3. Softmax-with-Loss 계층 = 176
  5.7. 오차역전파법 구현하기 = 179
    5.7.1. 신경망 학습의 전체 그림 = 180
    5.7.2. 오차역전파법을 적용한 신경망 구현하기 = 180
    5.7.3. 오차역전파법으로 구한 기울기 검증하기 = 184
    5.7.4. 오차역전파법을 사용한 학습 구현하기 = 186
  5.8. 정리 = 187
CHAPTER 6 학습 관련 기술들
  6.1. 매개변수 갱신 = 189
    6.1.1. 모험가 이야기 = 190
    6.1.2. 확률적 경사 하강법(SGD) = 190
      6.1.3. SGD의 단점 = 192
    6.1.4. 모멘텀 = 194
    6.1.5. AdaGrad = 196
      6.1.6. Adam = 199
      6.1.7. 어느 갱신 방법을 이용할 것인가? = 200
      6.1.8. MNIST 데이터셋으로 본 갱신 방법 비교 = 201
  6.2. 가중치의 초깃값 = 202
    6.2.1. 초깃값을 0으로 하면? = 202
      6.2.2. 은닉층의 활성화값 분포 = 203
    6.2.3. ReLU를 사용할 때의 가중치 초깃값 = 207
    6.2.4. MNIST 데이터셋으로 본 가중치 초깃값 비교 = 209
  6.3. 배치 정규화 = 210
    6.3.1. 배치 정규화 알고리즘 = 210
    6.3.2. 배치 정규화의 효과 = 212
  6.4. 바른 학습을 위해 = 215
    6.4.1. 오버피팅 = 215
    6.4.2. 가중치 감소 = 217
    6.4.3. 드롭아웃 = 219
  6.5. 적절한 하이퍼파라미터 값 찾기 = 221
    6.5.1. 검증 데이터 = 221
    6.5.2. 하이퍼파라미터 최적화 = 223
    6.5.3. 하이퍼파라미터 최적화 구현하기 = 224
  6.6. 정리 = 226
CHAPTER 7 합성곱 신경망(CNN)
  7.1. 전체 구조 = 227
  7.2. 합성곱 계층 = 229
    7.2.1. 완전연결 계층의 문제점 = 229
    7.2.2. 합성곱 연산 = 230
    7.2.3. 패딩 = 232
    7.2.4. 스트라이드 = 233
    7.2.5. 3차원 데이터의 합성곱 연산 = 235
    7.2.6. 블록으로 생각하기 = 237
    7.2.7. 배치 처리 = 239
  7.3. 풀링 계층 = 240
    7.3.1. 풀링 계층의 특징 = 240
  7.4. 합성곱/풀링 계층 구현하기 = 242
    7.4.1. 4차원 배열 = 242
    7.4.2. im2col로 데이터 전개하기 = 243
    7.4.3. 합성곱 계층 구현하기 = 245
    7.4.4. 풀링 계층 구현하기 = 247
  7.5. CNN 구현하기 = 250
  7.6. CNN 시각화하기 = 254
    7.6.1. 1번째 층의 가중치 시각화하기 = 254
    7.6.2. 층 깊이에 따른 추출 정보 변화 = 256
  7.7. 대표적인 CNN = 257
      7.7.1. LeNet = 257
      7.7.2. AlexNet = 258
  7.8. 정리 = 259
CHAPTER 8 딥러닝
  8.1. 더 깊게 = 261
    8.1.1. 더 깊은 신경망으로 = 261
    8.1.2. 정확도를 더 높이려면 = 264
    8.1.3. 깊게 하는 이유 = 265
  8.2. 딥러닝의 초기 역사 = 268
    8.2.1. 이미지넷 = 268
    8.2.2. VGG = 270
      8.2.3. GoogLeNet = 271
      8.2.4. ResNet = 272
  8.3. 더 빠르게(딥러닝 고속화) = 273
    8.3.1. 풀어야 할 숙제 = 274
    8.3.2. GPU를 활용한 고속화 = 274
    8.3.3. 분산 학습 = 276
    8.3.4. 연산 정밀도와 비트 줄이기 = 277
  8.4. 딥러닝의 활용 = 278
    8.4.1. 사물 검출 = 278
    8.4.2. 분할 = 280
    8.4.3. 사진 캡션 생성 = 281
  8.5. 딥러닝의 미래 = 283
    8.5.1. 이미지 스타일(화풍) 변환 = 283
    8.5.2. 이미지 생성 = 284
    8.5.3. 자율 주행 = 286
    8.5.4. Deep Q-Network(강화학습) = 287
  8.6. 정리 = 289
APPENDIX A. Softmax-with-Loss 계층의 계산 그래프
  A.1. 순전파 = 292
  A.2. 역전파 = 294
  A.3. 정리 = 299
참고문헌 = 300
찾아보기 = 308
닫기