관심있는 것들 정리
[리뷰] 파이썬 라이브러리를 활용한 머신러닝 본문
리뷰에 앞서 본 리뷰는 한빛 출판 네트워크에서 진행한 ‘나는 리뷰어다’ 이벤트에서 제공받은 책으로 진행한 것을 밝힙니다.
머신러닝에 대해 화제가 된 것은 오늘 어제의 이야기는 아닙니다. 구글의 알파고가 사실 가장 쉽게 와 닿았던 머신러닝의 한 예이며, 이 외에도 다양한 기사들이 계속해서 들려오고 있고 또 계속 될 것이라 생각됩니다. 이러다보니 서점에 가서 보면 인공지능, 머신러닝, 딥러닝 등에 대한 책은 참으로 많이 쏟아져 나오고 있고, 이 책 또한 그 중 하나입니다.
먼저 책 내용을 떠나서 역자 분께서 꼼꼼하게 많은 부분을 챙겨주신 좋은 책이라 생각됩니다. 머신 러닝이나 AI 분야의 책을 많이 읽어보지는 못했지만, 역자 분의 주석이 이렇게 많은 책을 본 적은 없었습니다. 번역할 때 정말 꼼꼼히 읽고, 저와 같은 초보자들이 이해하지 못할 수도 있다는 우려 아닌 우려를 가지고 정성 들여 이곳 저곳 찾아보며 역자주를 달아놓으셨다는 생각이 여러 번 들었습니다.
머신 러닝을 공부하면서 확률, 통계와 같은 개념을 빼 놓을 수 없기 때문에, 관련분야 비전공자에게 밑바닥부터 접근하기에는 진입장벽이 너무 높을 수 밖에 없다는 생각이 늘 들었습니다. 근래에는 이 책에서 소개하는 scikit-learn과 같은 라이브러리의 도움으로 그나마 장벽이 좀 낮아지기는 했지만 그래도 어쩔 수 없는 부분이라는 생각이 듭니다. 이 책에서는 그런 부분에 대한 상세한 설명보다는, 어떤 경우에 어떤 모델을 어떻게 사용해야 하는 가를 각 모델 별로 장단점을 들어가며 예제와 함께 설명을 하고 있어 책의 내용을 이해하기가 그리 어렵지 많은 않다고 생각합니다. 또 그렇기 때문에 입문서이지만 필요에 따라서는 레퍼런스로 사용하는 것도 가능하리라고 생각됩니다. 또 5장을 넘어가면서 모델을 평가하고 파라메터 조정을 통한 개선에 대한 부분에 대한 할당, 그리고 수치뿐만이 아니라 텍스트에 대해서 어떻게 머신러닝을 적용할 수 있을 지에 대해 할당해 설명한 점은 어떤 식으로 머신 러닝을 적용할 수 있는지 초보자에게 좀 더 친절하게 설명하려고 노력한 것으로 생각되었습니다. 또 한국어판에 들어간 별도의 부록(7.8.1절)도 있어 더욱 그런 생각이… ^^.
또 인터넷의 자료나 일부 다른 책들의 예제에서도 살펴볼 수 있듯이, 이 책도 jupyter notebook으로 예제를 모두 기술해 놓고, 예제에 사용한 data들을 github로 공개해 두어 인터넷으로 ipython 저장 파일(ipynb 파일)을 열어 직접 script를 typing 하지 않아도 script와 그 결과를 볼 수 있습니다
그럼에도 불구하고, 이 책은 원저의 제목보다 번역서의 제목에 더 걸맞는 내용으로 기술되었다는 생각이 책을 읽으면서 많이 들었습니다. 즉 이 책은 제목 그대로 python 라이브러리를 통해 머신 러닝을 쉽게 접근하는 데 초점을 맞추었습니다(서문에도 그리 되어있습니다). 즉 Python에 대한 약간의 지식은 필요합니다. 책에서 구체적으로 설명하는 부분이 있지만, script 사용을 하나하나 다 설명하지 않습니다. 또 numpy, pandas, matplotlib 사용 시 파라메터 설명이 상세하게 되어있지 않아, 해당 라이브러리에 익숙하지 않을 경우 reference manual을 보면서 하나 하나 찾아보면서 읽어나갈 필요가 있습니다.
또 책이 입문서다 보니, 모든 부분을 다룰 수 없어, 특정 토픽에 대해 깊이 다루지 못하는 분야가 있을 수 밖에 없습니다. 그래서 딥러닝과 같은 부분에 관심이 많은 분들이라면, 앤드루 응 교수님의 공개 강의, 또 한빛 미디어에서 나온 ‘밑바닥부터 시작하는 딥러닝’, ‘텐서플로 첫걸음’ 과 같은 다른 책들도 도움이 많이 될 것으로 생각됩니다.
내용도 자세히 모르는 머신 러닝이라는 어려운 분야에 대해 리뷰를 하게 되어, 혹시 잘못 쓴 글이 있을 수 있으니 이 점은 너그러이 봐 주시길 바랍니다.
'이것저것 긁적긁적' 카테고리의 다른 글
다시 접속가능.. (0) | 2019.11.17 |
---|---|
간만에 python 코딩 (0) | 2018.02.12 |
Python Anaconda에서 환경 생성 및 삭제 (Ubuntu linux에서) (0) | 2017.06.03 |
Sound analysis/synthesis tools for music applications (0) | 2017.03.12 |
iOS8 업데이트 (0) | 2014.09.19 |