실습 - https://github.com/fastai/fastbook
fastai와 파이토치가 만나 꽃피운 딥러닝 - https://www.hanbit.co.kr/store/books/look.php?p_code=B7970422863
fastai?!
관련 블로그: https://coffeedjimmy.github.io/fastai/2019/09/03/fastai_mnist_intro/
jimmy님의 블로그에서 fastai에 대해 설명해준 부분을 참고하면, fastai는 pytorch로 모델링을 할 때, 핵심적인 기능 활용에 집중하기 위한 상위 wrapper로 정의됩니다. pytorch는 고수준의 기능을 정의하는 기본적인 연산 체계를 제공하고, fastai는 pytorch에 고수준의 기능을 얹은 것 입니다. 자동화할 부분은 자동화해서 편리한 모델링을 추구한 라이브러리라고 숙지했습니다!
참고로, 책은 fastai 라이브러리 버전 2.x에서 실습을 진행합니다.
전체적인 내용
책의 전체적인 흐름은 꼭 어느 랩실의 전수되는 노트(?)를 훔쳐보는 듯한 느낌으로 흘러갑니다. 각 파트의 세부적인 소주제마다 TIP이라는 라벨로 생각해볼 부분에 대해 저자들이 던져주는 것도 있고, 또는 더 알아볼 수 있는 개념들에 대해 제시해주고 있습니다.
책의 전체적인 내용은 딥러닝에서 사용되는 전반적인 모델들을 대부분 설명하고 있습니다. MNIST, 개/고양이 데이터셋을 활용한 이미지 분류기, 이진 분류기 외에도 다중 클래스 분류기, 텍스트 분류기 등을 다루고 있습니다. 딥러닝뿐만 아니라, ML 모델인 협업 필터링, 결정트리, 랜덤포레스트 등을 다루기도 합니다. 단순히 모델 실습만 담고 있지 않고 모델을 구축하는 과정에서 발생할 수 있는 데이터 누수, 외삽 문제 등과 같은 이슈들에 대해서도 설명합니다.
책의 구성이 점진적으로 심화 레벨의 개념을 설명하기 보다는 part별로 보고자하는 부분이 다릅니다. 어떤 Part에서는 기본 신경망을 전체적으로 다루고, 어떤 Part에서는 0부터 10까지의 구현을 빠르게 해봄으로써 개념 설명 보다는 구현에 초점 맞춰져있습니다. 해당 책은 fastai 라이브러리의 API를 어떻게 활용하는가? 데이터를 불러올 때, Text data를 다룰 때 등 ... 일반적인 신경망 모델을 구축할 때 거치는 프로세스를 fastai 라이브러리를 활용하는 방법에 대해 설명하는 책이기 때문에 구성이 순차적이지는 않습니다. 구성에서 특히 누군가의 전수 노트인가?! 했던 부분들은 뒷쪽에서 갑자기 activation map을 시각화해본다든지 다시 책 뒤편에서 순전파, 역전파의 내용부터 설명하는 부분이었습니다. 케이스에 따른 fastai 사용을 보여주다보니 모델을 만들 때 거치는 순서별로 설명이 되어있지 않은 점은 조금 아쉬웠습니다.
누구에게 추천하는 책일까?
기본적인 코딩 실력을 갖춘 독자를 대상으로 하는 책입니다. 고수준 API인 fastai에 대한 설명이다 보니, 저수준/고수준에 대한 개념을 가볍게 이해하고 읽어나가면, fastai를 왜 사용하지? 왜 인기가 있다고 하는거지? 하는 궁금증을 해소해가면서 볼 수 있습니다. 저자도 pytorch만 사용했다가, fastai를 활용했다가 섞어서 사용하면서 설명하기 때문에 간단하게라도 해당 부분은 인지하고 읽을 것을 추천드립니다! 그리고 수학적 지식도 고등학교 수준의 수학 지식을 요구합니다. 기억이 잘 안 나더라도, 책에서 추천하는 khanacademy.com를 통해 학습하면서 책을 따라갈 수 있습니다. 다만, 공부하실때 꼭 책의 순서를 따르진 않으실 것을 추천드립니다. 책의 내용을 살펴보시고서 관심있는 모델이 CNN 관련 모델이라면 관련 내용을 담고 있는 파트를 체크해본 후, 책을 읽어나가길 추천드립니다. 딥러닝 모델도 알고 싶고, 최근에 언급되고 있는 fastai도 알고 싶고.. 모델 구축 뿐만 아니라 활용까지 고민하고 있는 딥러닝 입문(초급)자에게 추천합니다. '액기스'를 보고 싶은 초보자에게는 추천하지 않습니다. 한번쯤 신경망에 대해 공부하고, 전체적으로 NLP, CV 또는 머신러닝 모델들에 대해 전체적으로 훑어보는 식으로 개념을 잡고 해당 책을 활용하면 모델링을 할 때 도움이 될 수 있는 책입니다.
한 줄 리뷰
fastai가 궁금하다면? 1장의 1.5 소프트웨어: 파이토치, fastai, 주피터 노트북을 읽고, 11장 fastai의 중간 수준 API로 데이터 변환하기를 읽어볼 것을 추천드립니다. (점프되는 부분들은 있겠지만..!)
"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."