개발자를 위한 머신러닝 & 딥러닝
한빛미디어 “나는 리뷰어다” 활동을 위해서 책을 제공받아 작성된 서평입니다.
TL;DR
- 머신러닝 관련 교재 중에서 개발자에게 가장 적합한 책
- 머신러닝/딥러닝 교재 개발에 필요한 내용을 주로 담고 있음
- 이론적인 교재가 필요하다면
핸즈온 머신러닝 2판
을 참고하면 됨
- 실행 가능한 예제가 Android, iOS 그리고 Web으로 제공
- 컴퓨터 비전, 자연어 처리 등 카테고리가 나눠져 있어서 부분을 읽을 수 있음
- 다양한 기술(TF, TF.js)을 활용하고 있음
- 예제 종류가 다양하기 때문에 사람마다 난이도가 다를 수 있음
개발자에게 적합한 책!
머신러닝에 관심이 많아서 다양한 책을 읽었지만, 대부분의 교재가 수학적인 내용을 과도하게 담고있다. 머신러닝 혹은 딥러닝의 기본적인 내용에 수학적인 부분이 중요하기 때문에 관련 내용을 충실하게 기술하고 있다. 대부분의 개발자가 서비스를 구현하기 위해서 수학적인 부분을 알면 좋지만, 관련 분야가 수학이다 보니 과도한 측면이 있다.
대부분의 개발자가 Tensorflow
(TF)나 PyTorch
(torch)를 활용해서 서비스를 구현하고, 관련 서비스를 최적화 하기 위해서 또다른 측면에서 혹은 전혀 다른 관점으로 접근해야 한다. 이 때, 수학적인 본질이 가진 어떤 점은 사라지고 프레임워크, 라이브러리 그리고 알고리즘의 특성이 더 중요해진다.
실행 가능한 예제
이 책의 가장 큰 장점이자 해당 교재를 개발자에게 적극 권장하는 이유는 예제를 실행 가능한 수준으로 제공하고 있기 때문이다. 원서가 2020년에 출간되었기 때문에 예제가 실행되지 않을 수 있다. 이런 측면은 TF와 torch의 코드 개선이 빠르게 이루어졌기 때문이다. 예를 들어서, 2020년 1월에 TF v2.0.1이 발표되었던 것을 고려해보면 원서에서 제공한 코드를 실행하는데 난항을 겪을 수 밖에 없다. 관련 책을 읽는 독자가 딥러닝 개발과 관련해서 처음 읽는다면 더더욱 예제 실행에 어려움을 겪을 수 있다.
책을 번역한 분이 ‘박해선’님이고, 박해선님이 관련 코드를 실행 가능한 수준으로 개선해서 GitHub에 공개하고 계시기 때문에 책을 읽으면서 예제를 적극적으로 활용할 수 있게 되었다. 역자분이 관련 코드를 이렇게 신경써주고 계시는 것 만큼, 번역도 신경써주고 계셔서 책을 읽을 때 전혀 어려움 없이 읽을 수 있었다. 역자 각주 뿐만 아니라 도서 맵(아래 이미지)까지 제공하고 있기 때문에 책을 읽기 전에 참고해보면 좋을 듯 싶다. 참고로 역자분께서 오타 및 관련 정보를 홈페이지에 제공하고 계시니 참고하면 좋을 듯 싶다.
난이도가 다를 수 있음
대부분의 예제가 TF로 진행되고 있으며, TF
나 TF.js
와 관련된 예제가 한 권에서 제공되기 때문에 실습의 방향성이 조금 광범위하게 제공되는 경향이 있다. 그래서 처음 해당 책을 읽을 분들은 관련 예제를 접할 때 해당 기술에 대한 전문성 보다는 방향성을 위주로 실습하기를 권한다.