어서와~ 머신러닝은 처음이지?

By | 2017/01/06

본 서평은 출판사로부터 책을 증정받고 썼음을 미리 밝힙니다.

"어서와~ 머신러닝은 처음이지?"

최근 계속해서 나오는 머신러닝 관련 서적들 틈에서 특이한 이름, 특이한 표지의 책이 페이스북 R 사용자 모임에서 홍보되는 것을 발견하였다. 여기저기서 머신러닝이란 말을 쉽게 접할 수 있지만, 정확하게 머신러닝이 무엇인지, 인공지능, 강화학습이랑은 어떠한 관련이 있는지 궁금했었다. 이 책에서 제목부터 강조하고 있는 "초보"를 위한 머신러닝 입문이라니. R기초와 통계 기초의 배경지식이 있으면 훨씬 이해하기 쉽다고해서, 논문연구를 하며 기본적인 R과 통계를 계속해서 접해온 나는, '아, 이 책이 바로 나를 위한 책이구나' 싶었다.

책에 나온 소스코드를 다 실행해보지는 못 했지만, 굳이 소스를 다 실행해보지 않고서도 이 책의 대략적인 내용을 이해하는데는 어려움이 없어 다 읽는데 일주일이 채 걸리지 않았다.

이 책의 최고의 장점은 초보자들에게 여러 알고리즘(데이터마이닝기법/통계기법)들이 왜 필요한지, 어떤 분석을 할 때 필요한지 실례를 아주 잘 들었다는 것이다. 각 챕터마다 해당 챕터에서 설명하고자 하는 알고리즘의 필요성부터 확실하게 강조하고 넘어가니, 공부하고자하는 욕구가 절로 샘솟는다. 그리고 그 예시를 이해하기 쉽게 설명하기 위해 기초자료(엑셀자료)들도 매우 적절하게 사용하였다. 또한 알고리즘을 통해 분석된 결과를 그래프로 보여주어 한 눈에 이해할 수 있도록 도와준다. R을 설치하고, 간단한 통계분석을 해 본 경험이 있다면, 책에서 설명하고 있는 R코드를 따라하면서 실습도 바로 가능하다.

하지만 안타깝게도, 이렇게 큰 장점만큼이나 큰 단점이 존재한다. 이 책을 잘 따라가기 위해서는 기본적인 R과 수학적 지식이 필요하다. 이 책의 절반이 R코드와 수학식이라해도 무방할 정도인데, R과 수학을 모르면 이 책의 절받밖에 얻지 못하는 것이다. 하지만 아이러니하게도, 이 책을 잘 이해할 수 있을 정도의 R과 수학실력이 있는 사람이면, 이미 여기서 다루는 알고리즘들은 너무 쉬운 내용이라는 생각이 들었다. 실제로 초보를 위한 책답게, 내용에 깊이가 없다. 이 알고리즘이 이런 것이며, 이런 때에 쓰일 수 있다 정도를 이해하는데 도움이 되는 수준이라, 조금 더 난이도를 높였으면 하는 아쉬움이 있었다. 또한 왜 여기서 다루는 알고리즘들이 머신러닝과 관련이 있는지에 대한 설명이 없다. 제목은 머신러닝이란 말로 주목을 끌었는데, 막상 열어보면 여러 데이터마이닝 기법들만 소개되어 있을 뿐, 머신러닝이 무엇이며 이 기법들이 어떻게 머신러닝을 다루는데 초석이 되는지 초보자는 알 수가 없다. 개인적으로는 그냥 데이터마이닝 요약집이라는 느낌을 받았다.

R을 다뤄봤고, 약간의 통계지식이 있는데 데이터마이닝을 접해 본 경험이 없는 독자가 쉽고 빠르게 그 필요성과 내용을 이해하고 싶을 때. 이 책은 적절한 선택이 될 수 있을 것이다.

끝으로, 이 책의 완성도에서 조금 아쉬운 분들이 있어 남겨본다.

  • 핵심 용어에 대해서 한글과 영어가 계속 혼용된다. 예) 최근접이웃법, K-Nearest Neighbors, KNN 등의 용어 혼용
  • 책 끝의 Appendix에서 수학 증명이 있는데 쌩뚱맞게 손으로 쓴 수학 증명을 카메라로 찍은 사진이 실려있다. 그냥 깔끔하게 타자로 치지 않고...
  • 몇몇 챕터에서는 R대신 파이썬 코드를 썼다. 파이썬을 알아야 된다는 말은 책 소개에 없었던 것 같은데... 이 책을 이해하기 위해서는 파이썬 지식까지 필요하다.
  • 오타: p116에서 챕터 시작할 때, "앞의 7장에서 풀었던 스팸메일 문제는" => 7장이 아니라 8장이다.
  • 인용 문제: 이건 좀 민감할 수 있는 문제인데, 위키피디아나 다른 논문을 인용 및 논문의 그림을 그대로 가져와서 쓰면서 제대로 인용 표시를 하지 않았다. 그냥 단순하게 위키피디아에서 가져왔다 라던가, 논문의 저자명, 연도, 논문제목만을 언급 했을 뿐, 공저자나 학회명과 같은 정식 인용표기가 없어서 문제가 될 소지가 있어보인다.
Category: