메뉴 바로가기 검색 및 카테고리 바로가기

한빛미디어

독자리뷰

파이썬을 활용한 머신러닝 쿡북을 살펴보고

alfe***

|

2019-11-18

파이썬을 활용한 머신러닝 쿡북

200여 개의 비법 레시피를 제공하는 이 책은 실무에서 접하는 다양한 머신러닝 문제를 해결하도록 도와준다. 판다스나 사이킷런 같은 파이썬 라이브러리로 데이터 적재, 텍스트나 수치형 데이터 다루기, 모델 선택, 차원 축소 등 다양한 문제를 해결할 수 있다.

  • 저자 : 크리스 알본
  • 번역 : 박해선
  • 출간 : 2019-09-01

파이썬을 활용한 머신러닝 쿡북을 살펴 보고


개인적으로 유행하는 기술은 별로 관심을 가지지 않고자 하는데 이번에는 대세를 거를 수 없을 듯하여 인공지능/머신 러닝/딥 러닝에 대한 분야에 대한 관심을 가지고 한빛에서 진행하는 '나는 리뷰어다' 이벤트에 신청을 할 때 머신 러닝에 대한 책을 한 권 포함했었는데 운좋게도 그 책을 받게 되었습니다.

 

도착한 책을 보니  책의 모서리가 약간 찌그러져서 도착했습니다. 책을 읽기에는  전혀 문제가 없지만 뽁뽁이가 내장된 비닐로된 간단한 포장은 험난한 택배의 여정에서 책을 무사히 지켜내긴 힘들었나 봅니다. 여태까지 제가 받은 책들 중 이런 포장이 많았지만 이렇게 찌그러진 것은 처음이긴 하네요.    

 

DSC_0048.JPG

 

최근 바쁜일들이 겹치고 겹쳐서 힘든 상황이긴 하지만 이 책을 선택한 것을 아는 지 내년 봄까지 AI/Machine Learning, Deep Learning 등에 대한 알아야 할 일이 생겨 즐거운(?) 마음으로 책을 펼쳐 들었습니다.

 

 

하지만 책의 서론에서 부터 느껴지는 것은 

 

난 네가 파이썬을 아는지… 선형대수, 수치해석, 각종 회귀 분석 방법에 대해 아는지 궁금하지 않다, 단지 나는 파이썬을 가지고 machine learning 을 구현하기 위한 방법들을 알려 주마.  Machine learning 의 이론에 대해서 넌 알고 있어야 한다. 나는 알려주지 않는다.” 

 

라는 느낌을 주는 책입니다(과장이 조금 있긴 합니다. ^^.;;;). 이 책의 전체에서 이런 방식을 고수하고 있습니다. 


 

1장은 numpy 의 간단한 사용법입니다.  이 1장을 이해하기 위해서는 기본 행렬의 연산과 행렬에 대한 용어를 알아 두어야 합니다. 공학 수학 중 선형 방정식과 관련된 부분을 알고 있다면,  그리고 최소한 최소 자승(least square) 등에 대한 이론적 배경을 제대로 이해하고 있다면 이 뒤로 장들에 나오는 식들을 쉽게 볼 것 입니다. 예를 들어 11.8의 MSE, R^2  과 같은 정의를 보고 수식이 말하고자 하는 것을 이해할 때 도움이 될 겁니다.

 

2~3장은 데이터를 불러오고 조작, 검색하는 방법들을 소개하고 있으며, 4장 부터는 본격적인 데이터 변환을 다루고 있습니다. 

 

.. .


 

책의 구성은 잘 되어 있습니다만.. 책의 제목 ‘cookbook’ 이 의미하는 것 처럼 요리 방법을 적어 놓았지 어떤 요리가 만들어지는지, 그 요리는 어떤 맛과 향을 가지며 먹을 때 어떻게 먹어야 하는지는 설명이 없네요.  이 요리책을 처음 접하는 요리사는 이 요리책에 나온 조리 방법을 만들어진 요리를 상상해야 할 것 같습니다. 

 

 

책의 표지를 보고 조금 이상하다는 생각이 들었습니다. O’reilly 책들의 표지는 흑백 펜으로 그린 그림!  이라는 기존의 책들과는 다른 컬러를 입힌 나리나 트로곤의 일러스트가 표지를 장식하고 있어서 O’reilly 에서 정책을 바꿨나? 라는 생각이 들더군요.  아마존에서 검색을 해 도 흑백이더군요.

 

 

DSC_0105.JPG

 

 

책의 본문은 편집은 원서를 바탕으로 조금 더 독자를 위한 부분이 보입니다. 예를 들어 1장에서 원서와는 다르게 (Amazon에서 받은 sample e-book과 비교해서)  파이썬/넘파이를 실행한 결과에 회색으로 음영 처리를 해 놓아서 파이썬에 입력할 내용과 결과를 구분해 놓았습니다. 

 

DSC_0106.JPG

 

 

그리고 파이썬에 대한 책들을 쓰시고  파이썬을 이용한 머신 러닝 관련 책들을 번역하신 역자분의 역량을 보여 주는 듯 책을 읽으면서 편한 느낌이 듭니다. 거기다가 역자분의 경험이 이 분야를 공부하고자 이 책을 읽는 독자에게 도움이 되고 있습니다. 예를 들어 책의  8.0절 소개에서 역자분이 덧붙인 OpenCV 의 최신 버전에 대한 주석은 이 8장에서 다루는 OpenCV 를 설치하고 사용할 때  파이썬과 OpenCV의 버전 문제로 발생할 수 있는 문제를 겪지 않게 해줍니다. 

 

 

하지만 한 가지 아쉬운 점은 책을 번역하시면서 앞서 언급한 이 책의 성격을 반영한 것인지 이런 저런 용어들의 원어를 처음 몇 장에서 빠트린(빼버린 ?) 것입니다.  예를 들어 넘파이(NumPy), 적재(loading) 처럼 말입니다.  



어쨌거나 이 책은 앞서 이야기 한 것 처럼 처음 주방에서 뭔가를 만들어 보려는 초보 요리사를 위한 책이라기보다는 어느 정도 주방에서 요리를 해본 경험을 가진 초보에서 중급 정도의 실력을 가진 요리사가 여러가지 음식의 조리방법을 잊지 않기 위해 그 방법을 잘 정리해 둔 것과 같은 책입니다. 마치 한 번 만들어 본 요리이지만 순서를 잊어 버리지 않기 위해서 잘 정리해둔?


다르게 적자면  파이썬과 넘파이 그리고 머신 러닝에 대해 한 학기 기본 강의를 수강한 사람을 위한  요약 정리본 이라고 볼 수 있습니다. 한 번 공부해본 분야이지만 잊어 버리지 않기 위해서 키워드를 이용해서 잘정리해 둔?


이 책을 잘 활용하기 위해서는 파이썬을 수강하고 넘파이를 이용하는 기본 대수연산 및 수치해석, 그리고 머신러닝에 대한 기초를 수강하고 난 후 3과목에 대한 요약을 했다면 이런 책이 나올 것 같습니다.  이 과목들을 수강하지 않고서 이 책(요약)만을 보고 본격적인 머신 러닝을 공부하는 것은 힘들 것 같습니다. 


 

그리고 사족이지만 처음으로 보게된 머신 러닝에 대한 이 책을 보면서  이전의 다른 책에서 본 ‘로지스틱 회귀’, ‘k- 최근접 이웃’ ,  ‘유클리드 거리’ ..에 대한 개념들은 이책을 조금 더 가깝게 느끼게 해 주네요. 그래서 저의 규칙 중 하나인 "한가지 분야에 대해서 책을 최소 2권 이상은 봐야 한다" 라는 규칙이 이렇게도 도움이 되는 구나... 라고 다시 한번 확인 할 수 있었습니다.  

 

 

그리고 머신 러닝에 대해서 좀 더 알기 위해선  11월 초에 제게 도착한 책들을 좀 더 살펴 봐야 할 것 같습니다. 

 

 

DSC_0073.JPG

 

이만 부족한 리뷰를 마칩니다.

 

 

본 리뷰는 한빛미디어 리뷰어 이벤트를 통해 받은 책을 보고 작성한 것임을 밝혀둡니다.

 

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?