블로그 이미지
fiadot_old

칼퇴근을 위한 게임 서버 개발 방법론에 대한 심도있는 고찰 및 성찰을 위한 블로그!

Rss feed Tistory
Book 2013. 4. 27. 15:38

"생각을 만드는 빅데이터 기술" 만들면서 배우는 기계 학습(한빛미디어) 리뷰

빅데이터와 함께 크게 관심을 받는 분야가 Machine learning 이 아닐까 싶다.

 

Big Data 처리기술과 관련된 구인글에서도 다음과 같이 기본적으로 요구 하고 있다.

 

[전문 지식]

  • Data Mining, RDBMS, 통계 분석
  • HBase, MongDB 등 NoSQL과 R, Pig, Hive 등 관련 지식
  • Machine Learning 및 Algorithm
  • Java, C++, Python 등 Programming
  • Hadoop 등 분산 framework 이해
  • Graph Theory

 

 

큰 흐름이라면 몸을 맡겨 본다는 의미에서 기계학습과 관련된 책을 한권 접하게 되었다.

 

 

"어떤 과정으로 내부상태를 변화시키는 행동" = 학습이라 정의를 내리고

 

기계학습에 대한 개론적인 내용을 초반에 할애 하고 있다.

 

역사적인 흐르을 짚어주고 각론으로 들어가는 형식이다.

 

각각의 챕터에는 학습의 종류에 대한 설명과 C 소스를 보여주고 소스에 대한 해석을 곁들여 보여준다.

 

파라미터 조정에 의한 학습에서는 회귀분석에 대한 방법과 최소제곱법에 대한 C소스를 보여준다.

 

1차함수에 대한 예시를 보여주는데 기본적인 공학수학 지식이 있다면 큰 무리가 없을 것이다.

 

그리고 학습 데이터를 추출하는 방법에 대해서 얘기를 하는데, 라인단위 처리 방식이나 컬럼 나누기 등의 방법에 대해서 소스와 함께 설명한다.

 

이 부분은 awk, sed 등과 같은걸 사용 했다면 지면 활용도가 높지 않았을까 생각이 들면서 약간 아쉬움이 있었다. 

 

귀납학습에서는 n-gram에 의한 특징 추출을 중심으로 설명 하고 있다.

 

영어, 일본어, 한국어에 대한 n-gram 방법에 대해서 모두 제시해주고 있다.

 

 

감독학습에서는 의사결정 트리에 대해 주로 얘기를 하는데 스팸 메일 분류를 통한 방법을 예로 들고 있다.

 

마지막으로, 신경망에 대해서 언급하는데 가장 큰 비중을 차지하지 않나 싶다.

 

신경망 설명에서 기본이 되면 sigmoid 함수와 함께 뉴런의 개념을 다루고, 퍼셉트론으로 넘어간다.

 

퍼셉트론이 나오면 꼬리표 처럼 back propagation에 대해서도 안나올 수 없다.

 

 

 

처음 책을 받아보았을때 생각보다 너무 얇아서 과연 이 정도 분량으로 머신러닝에 대해 제대로 얘기가 할 수 있을까 하는 생각이 먼저 들었다.

 

각 챕터에서 다루는 하나 하나의 주제의 방대함에 비해 책에서 언급하는 내용은 각각의 2~3정의 설명과와 하나의 예시 소스, 소스에 대한 설명으로 끝난다.

 

이 부분은 책 뒷표지에서 다음과 같이 언급한다. 

 

 "이론에 치우쳐 이해하기 어려웠던 기존 도서와 달리 이 책은 간단한 코드와 실습을 통해 기초 원리를 학습할 수 있다."

 

저자는 심오한 학문의 세계를 전하기 위함이 아니라, 기본적이 내용을 간결하게 정리해서 이해하는 것을 목표로 하고 있었던 것이다.

 

처음 이 책을 선택했던 목적과는 달랐지만, 머신러닝에 대해 아무런 이해가 없는 사람들에게는 좋겠다는 생각이 들었다.

 

각 소스마다 친절한 설명도 덫붙이고 있어, C언어에 대한 깊은 이해가 없어도 로직의 이해도를 높여 준다.

 

논외로 최근 번역서들을 보면서 계속 드는 생각이, 번역의 품질이 정말 많이 좋아졌구나 하는 것이다.

 

예전에는 내용을 이해하기 전에 글 자체에 대해 이해를 해야하는 수고로움이 있었는데, 요즘은 그런 고민이 사라졌다는게 참 좋다는 느낌이다.

 

 

한줄 요약 : 머신러닝에 대한 이해가 있다면 더 심오한 책을... 어떤 분야인지 알고 싶다면 이 책을!

 

,
TOTAL TODAY