티스토리 뷰

Hobby/Book

[Book] Deep Learning for Coders with fastai & PyTorch

생각많은 소심남 2022. 3. 31. 23:53

(해당 포스트에서 소개하고 있는 "Deep Learning for Coders with fastai & PyTorch" 책은 한빛 미디어로부터 제공받았음을 알려드립니다.)

 

fastai와 파이토치가 만나 꽃피운 딥러닝

최소한의 지식으로 딥러닝을 쉽게 배울 수 있는 도서

hanbit.co.kr

요새는 인공지능 교육에 대한 수요가 많기도 하고, 유무료로 교육자료가 제공되는 형태들도 많아졌다. 맘만 먹으면 양질의 인공지능 강의를 무료로도 들을 수 있는 것이다. 물론 수많은 강의들이 있겠지만, 그 중에 한 축이라고 할 수 있는 강의 중 하나가 fast.ai일 것이다.

 

fast.ai · Making neural nets uncool again

15 Mar 2022 Rachel Thomas On the surface, I may seem into math: I have a math PhD, taught a graduate computational linear algebra course, co-founded AI research lab fast.ai, and even go by the twitter handle @math_rachel. Yet many of my experiences of acad

www.fast.ai

이 단체는 진짜 어떻게보면 인공지능 교육에서 다양한 영향력을 미친다. 물론 Andrew Ng 교수의 ML 강의나 Stanford대학의 cs231n과 같이 이론적인 내용을 다루는 강의도 있겠지만, fast.ai에서 제공하는 강의는 뭔가 이론적이라기 보다는 실용적으로 활용할 수 있는 방법론에 대해서 주목한다. 예를 들어서 tensorflow나 pytorch와 같이 특정 딥러닝 프레임워크에 초점을 맞추기보다는 번거로운 작업을 대신 구현해놓은 fastai 패키지들이나 교육 내용을 공유할 수 있는 fastpages같은 것을 통해서 사람들이 인공지능 교육을 어렵다고 느끼기 보다는 실용적으로 접근할 수 있도록 해준다. 사실 오늘 소개할 책도 이 단체에서 만든 MOOC 강의인 "Practical Deep Learning for Coders"을 풀어쓴 책이기도 하다.

책의 두께는 여타 다른 인공지능 관련 책과 비교했을 때 무척 두껍다. 그런데 신기한 것은 이 두꺼운 책 내에 수학 공식이나 어떤 이론을 증명할 때 그 복잡한 과정이 거의 없다. 예를 들어서 신경망 이론을 처음 공부할 때 다루게 되는 Perceptron에서도 output이 어떻게 도출되는지 weight과 bias의 복잡한 곱셈 연산부터 쭉 다루는 반면, 이 책의 첫번째는 이런 이론적인 내용이 아니라 딥러닝을 공부하면서 다루게 될 수많은 예시들을 간단하게 체험해보는 것이다. 그래서 책의 내용이 뭔가 딱딱하지 않고, 술술 풀어서 전개된다. 강의 사이트에서도 명시되어 있는 내용이지만, 이 책에서는 다음의 내용을 최대한 배제하려고 했다.

few things you absolutely don't need to do world-class deep learning

간단하게 설명하자면, 흔히 딥러닝을 할 때 장애물이라고 생각할 수 있는 것이 세가지가 있는데, 바로 수학과 방대한 데이터, 그리고 이를 학습시킬 고성능의 컴퓨터인데, 이 강의에서는 이런게 필요없다는 것을 강조한다. 그런 내용이 책에도 반영되어 있어서 책에서 다뤄지는 내용이 막 엄청 이론적인 지식을 요구하거나 그렇지 않다. 참고로 책에서 다뤄지는 내용은 다음과 같다.

  • 딥러닝 맛보기
  • 딥러닝에서 다뤄지는 데이터 윤리
  • fastai API를 활용한 비전 모델과 언어 모델 구현
  • fastai API를 활용한 데이터 처리 등..

물론 어떤 사람에 따라서는 "왜 굳이 tensorflow나 pytorch를 알아서 쓰면 되는데, 굳이 fastai 패키지까지 알 필요가 있을까?" 하고 의문을 가질 수 있는데, fastai API 자체가 복잡하고 번거로운 작업을 간단하게 할 수 있도록 도와주고, 모델 생성이나 이론적인 내용을 구현할 때는 PyTorch의 도움을 받는다. 진짜 책의 의도대로 최대한 실용적으로 딥러닝에 접근할 수 있도록 해주는 것이라고 생각한다.

개인적으로 생각하는 책의 장점은 "생각할 수 있는 여지"를 매 장마다 부여한다는 것이다. 딱 책 자체가 실용적으로 구현해보는 것 위주로 되어 있기는 하지만, 책을 읽다보면 "어 이런 부분이 궁금한데..." 라는 부분에서도 책에서 그에 대한 설명이 이뤄지고, 더 생각해볼 내용에 대해서는 끝부분에서 질문 형태로 만들어서 제공한다. (가령 인공지능 관련 인터뷰를 하게 된다면 도움이 될 듯 하다) 한편 책의 내용 중 데이터 윤리에 관한 내용을 다루는 부분도 있어서, 평소에는 가볍게 넘어갔을 법한 주제에 대한 내용도 소개되어 있다.

책 자체가 두껍기 때문에 선뜻 손이 안갈수도 있겠지만, 한번 딥러닝 공부를 해보겠다 하면 이 책 (+ 강의)를 가지고 시작해보면 어떨까 생각해본다.

댓글