머신 러닝 교과서: 파이토치 편

세바스찬 라시카Sebastian Raschka의 아마존 베스트 셀러 <머신 러닝 교과서>가 파이토치pytorch 편으로 다시 태어났습니다!

이 책은 <머신 러닝 교과서>의 딥러닝 파트를 텐서플로가 아닌 파이토치로 재작성한 책입니다. 단순히 라이브러리만 바꾼 것이 아니라 파이토치를 설명하기 위해 예제와 내용을 모두 수정했습니다. 더불어 최근 LLM에서 각광받고 있는 트랜스포머Transformer 라이브러리를 한 장에 걸쳐 설명합니다! 또한 기존 머신 러닝 책에서는 보기 힘든 그래프 신경망Graph Neural Network도 소개합니다! <머신 러닝 교과서 3판>과 <머신 러닝 교과서: 파이토치 편>의 차이는 아래 그림을 참고하세요!

  • 온라인/오프라인 서점에서 판매 중입니다! [Yes24], [교보문고], [알라딘]
  • 876페이지, 58,000원 -> 52,200원, 전자책: 46,400원
  • 이 책의 코드는 깃허브에 주피터 노트북으로 제공됩니다.

이 책에 대해 궁금한 점이 있으면 카카오톡 오픈 채팅(http://bit.ly/chatgpt-book)이나 텐서 플로우 디스코드 서버(https://discord.gg/fD3KzsZzJS)에서 질문하실 수 있습니다!

이 페이지에서 책의 에러타를 ‘Outputs‘ 아래에 계속 업데이트 하겠습니다. 이 책에 대해 궁금한 점이나 오류가 있으면 이 페이지 맨 아래 ‘Your Inputs’에 자유롭게 글을 써 주세요. 또 제 이메일을 통해서 알려 주셔도 되고 구글 그룹스 머신러닝/딥러닝 도서 Q&A에 글을 올려 주셔도 좋습니다.

감사합니다! 🙂


Outputs (aka. errata)

  1. (p116) 아래에서 5번째 줄에 “당연하지만 열을 모두 더하면”을 “당연하지만 각 행의 열을 모두 더하면”으로 수정합니다.
  2. (p111) 아래에서 16번째 줄에 “각 에포크의 평균 제곱 오차 손실 함수 값”을 “각 에포크의 로지스틱 손실 함수 값”으로 수정합니다.
  3. (p664) 위에서 9번째 줄에 >>> from torch.utils.data import Dataset을 삭제합니다.
  4. (p476) 위에서 3번째 줄의 공식에서 \sum_i^n\sum_{i=1}^n로 수정합니다.
  5. (p653) 위에서 9번째 줄에 “크기는 10x6이 됩니다”를 “크기는 10x3이 됩니다”로 수정합니다.
  6. (p121) 위에서 3번째 줄에 “가중치가 \phi에 가까워지면”을 “가중치가 0에 가까워지면”으로 수정합니다.(가*다 님)
  7. (p376) 그림 9-2 위 두 번째 줄 “여기에서 w_0y 축의 절편이고 x_0=1입니다” 문장을 삭제합니다.(가*다 님)
  8. (p453) 위에서 2번째 줄에 w_{j,k}^{(l)}w_{j,k}^{(l+1)}로 수정합니다.(가*다 님)
  9. (p455) 아래에서 7번째 줄에 “z^{(in)}은 절편을 더한 1\times m 차원 특성 벡터입니다. W^{(h)}m \times d 차원의 가중치 행렬입니다”를 “x^{(in)}1\times m 차원 특성 벡터입니다. W^{(h)}d \times m 차원의 가중치 행렬입니다”로 수정합니다.(가*다 님)
  10. (p461) 위에서 2번째 줄에 “다음 코드는 5만 5,000개의 이미지를, 훈련에 5,000개의 이미지를 사용하고 검증에 10,000개의 이미지를 테스트에 사용하도록 데이터셋을 분할합니다”를 “다음 코드는 5만 5,000개의 이미지를 훈련에, 5,000개의 이미지를 검증에, 10,000개의 이미지를 테스트에 사용하도록 데이터셋을 분할합니다”로 수정합니다.(가*다 님)
  11. (p476) 위에서 7번째 줄에 \dfrac{\partial L}{\partial w_{j,l}^{(l)}}\dfrac{\partial L}{\partial w_{j,k}^{(l)}}로 수정합니다.(가*다 님)
  12. (p480) 위에서 8번째 줄 \dfrac{\partial L}{\partial a_1^{(out)}} 수식과 아래에서 3번째 줄 \dfrac{\partial L}{\partial w_{1,1}^{(out)}} 수식에서 2(a_1^{(out)}-y)2(a_1^{(out)}-y_1)로 수정합니다. 위에서 10번째 줄 \dfrac{\partial a_1^{(out)}}{\partial z_1^{(out)}} 수식에서 e^{z_1^{(out)}}을 모두 e^{-z_1^{(out)}}로 수정합니다.(가*다 님)
  13. (p482) 아래에서 8번째 줄에서 \dfrac{\partial L}{\partial w_{1,1}^{(out)}}\dfrac{\partial L}{\partial w_{1,1}^{(h)}}로 수정합니다.(가*다 님)

Your Inputs