제1장은 머신러닝을 전반적으로 정의하고 머신러닝 분류, 분석 절차, 모형 등을 다룬다. 제2장은 사전과정과 최적화에 대해 나오는데, 통지자 여부와 관계없이 제공된 프로그램을 하나씩 실행하면서 모두 이해해야 한다. 제3장은 제2장의 특성변수 선택과 더불어 새롭게 추가한 부분으로, 시각화를 위한 plotly의 사용법을 소개하고 있다.
제4장은 KNN을 다루는데, 통지자든 아니든 관계없이 쉽게 이해할 수 있을 것이다. 제5장은 로지스틱 회귀를 소개한다. 제6장은 판별분석과 단순베이즈모형을 공부한다. 제7장은 회귀나무와 분류나무를 다룬다. 써포트벡터머신을 소개하는 제8장은 수식이 가장 많은 장 중 하나이다. 제9장은 차원축소를 다루는데, 비통지자는 가장 괴로운 장이 될 것이다.
제10장은 통계적 머신러닝과 딥러닝의 핵심에 해당하는 부분이다. 제11장은 회귀분석에 대한 내용이다. 제12장은 앙상블학습이 나오는데, 통계적 머신러닝의 꽃이라고 할 수 있다. 제13장은 비지도학습으로 수식을 따라가지 않더라도 이해할 수 있도록 구성하였다. 제14장은 비정형데이터의 수량화 과정을 보여 주고 있다. 이러한 수량화 과정은 딥러닝을 이해하고 적용하는 데 필수적이다.
이 책을 통한 여행을 시작하기 전에 독자들은 스스로를 평가해야 한다. 기준은 간단하다. 통계적 · 수학적 지식이 있는지를 알아보는 것이다. 측정은 제2장을 통해서 스스로 하면 된다. 최적화에 대한 수식의 전개를 이해할 수 있다면 통계적 · 수학적 지식이 있다고 생각하면 된다. 이렇게 통계적 · 수학적 지식이 있는 사람을 통지자라는 약자로 지칭하겠다. 이제 통지자와 비통지자에 맞춰 각 장의 내용을 소개하겠다.
제1장은 머신러닝을 전반적으로 정의하고 머신러닝 분류, 분석 절차, 모형 등을 다룬다.
제2장은 사전과정과 최적화에 대해 나오는데, 통지자 여부와 관계없이 제공된 프로그램을 하나씩 실행하면서 모두 이해해야 한다. 특성변수선택은 통지자는 읽어보고 이해하여야 하지만 비통지자는 단순하게 이런 통계량을 쓰는구나 하고 넘어가면 된다. 최적화는 비통지자도 두세 번 읽어보면 이해할 수 있으니 어려워 말고 꼭 숙지하고 넘어가도록 한다. 제2장은 통계적 머신러닝뿐만 아니라 딥러닝에도 동일하게 요구되는 사항이며 최적화는 통계적 머신러닝과 딥러닝의 엔진에 해당하므로 작동원리를 이해해야 한다.
제3장은 제2장의 특성변수 선택과 더불어 새롭게 추가한 부분으로, 시각화를 위한 plotly의 사용법을 소개하고 있다. 시각화는 자료의 특성을 파악하고 사용할 통계모형을 선택하는 데 중요한 수단이며, data scientist가 갖추어야 할 자료소통에 중요한 도구가 된다.
제4장은 KNN을 다루는데, 통지자든 아니든 관계없이 쉽게 이해할 수 있을 것이다. 그러나 몇 개의 수식이 이해되지 않으면 그냥 넘어가도 전체를 이해하는 데 문제가 없을 것이다.
제5장은 로지스틱 회귀를 소개한다. 딥러닝에서도 빈번하게 사용되므로 어떤 논리로 분류에 사용되는지 이해하면 된다. 통지자는 수식을 따라가면서 이해하면 되지만 비통지자는 로지스틱 함수가 왜 등장하는지, 어떻게 적용되어 분류를 하는지만 이해해도 된다. 규제화에 대한 설명이 나오는데 비통지자는 제공된 그림만 이해하면 된다.
제6장은 판별분석과 단순베이즈모형을 공부한다. 처음부터 수식이 나와서 비통지자는 좀 당혹스러울 수도 있다. 그러나 그냥 정의라고 생각하고 넘어가되, 제공된 두 개의 그림으로 그 원리를 이해하면 될 것이다.
제7장은 회귀나무와 분류나무를 다룬다. 이해하는 데 큰 어려움이 없겠지만, 의사결정나무는 원리가 간단하더라도 Kaggle에서 여러 번 우승을 한 앙상블러닝의 핵심이 되므로 원리를 꼼꼼하게 이해하길 바란다.
써포트벡터머신을 소개하는 제8장은 수식이 가장 많은 장 중 하나이다. 비통지자는 그림을 중심으로 이해하고 수식은 넘어가도 된다. 통지자인 경우, 수식을 따라가면 써포트벡터머신의 원리를 이해할 수 있을 것이다.
제9장은 차원축소를 다루는데, 비통지자는 가장 괴로운 장이 될 것이다. 그림을 통해 이해하되 수식은 그냥 이상한 부호라고 생각하면서 일독하고 무엇을 하려고 하는지 감만 잡으면 되며 제공된 프로그램으로 이해하면 된다. 통지자에게 쉬운 말로 설명해 달라고 하면 금방 이해할 수 있을 것이다. 가까이 아는 통지자가 없으면 저자에게 이메일로 문의하면 쉽게 설명해 줄 수 있다. 제9장의 차원축소는 2차 분석에 매우 유용하고 딥러닝에서도 개념적으로 유용하므로 차원축소의 의미를 이해하도록 하자.
제10장은 통계적 머신러닝과 딥러닝의 핵심에 해당하는 부분이다. 전통적인 통계학과의 차이점인 일반화에 대한 논의를 하고 있다. 직관적이므로 이해하는 데 큰 어려움이 없을 것이다. 프로그램을 통해 교차검증, 일반화, 과대적합의 의미를 완벽하게 이해하도록 하자.
제11장은 회귀분석에 대한 내용이다. 회귀분석에 대한 기본개념을 가지고 있으면 이해할 수 있을 것이다. 비통지자의 경우, 써포트벡터머신은 수식을 따라가지 말고 관련된 그림으로 이해하는 것이 좋다.
제12장은 앙상블학습이 나오는데, 통계적 머신러닝의 꽃이라고 할 수 있다. 그러나 비통지자가 따라가기에는 수식이 너무 많고 통지자들에게도 쉽지 않을 것이다. 비통지자는 수식을 따라가지 말고 글로 설명된 부분과 그림으로 개념을 이해하도록 하자. 그리고 GBM과 XGBoost의 원리는 제2장의 최적화와 연계되어 있으며, 원리를 쉽게 이해할 수 있도록 간단한 예제를 도입하여 설명하였다. CatBoost는 특성변수가 범주형이어도 별도의 수량화를 위한 사전자료과정이 불필요하며, 현재까지 나온 어떠한 통계모형보다 분류나 회귀에서 정밀도가 높은 앙상블학습모형으로 알려져 있다. CatBoost는 새로 추가하였으며 일반적으로 다른 모형을 적용하고 해석하기 이전에 첫 번째 분석모형으로 추천되는 모형이다.
제13장은 비지도학습으로 수식을 따라가지 않더라도 이해할 수 있도록 구성하였다. 개념과 원리만 이해하고 프로그램을통해 구현하다 보면 익숙해질 수 있을 것이다. 제14장은 비정형데이터의 수량화 과정을 보여 주고 있다. 이러한 수량화 과정은 딥러닝을 이해하고 적용하는 데 필수적이다.
그러므로 제14장은 딥러닝의 마중물로 이해하면 될 것이다.
이 책은 장마다 파이썬 프로그램이 제공되어 있다. 통지자 여부와 관계없이 하나씩 실행해 보아야 한다. 특히 비통지자는 제공된 프로그램을 실행해 공부함으로써 부족한 통계적 · 수학적 이해를 보완할 수 있을 것이다. 부록에는 파이썬의 사용법과 이를 실행할 수 있는 anaconda 설치법이 나와 있다. 독자 본인의 컴퓨터에 설치하여 제공된 프로그램을 돌려보면서 하루에 3시간씩 2 ~ 4일만 투자하면 머신러닝을 배우는 데 필요한 파이썬을 익힐 수 있을 것이다.
이 책을 통해 통계적 머신러닝으로의 여행이 성공적이길 바라며 나아가 딥러닝으로의 여행에도 큰 도움이 되길 바란다. 머신러닝은 배우기 쉽다는 것이 저자의 생각이다. 현재의 인터넷처럼 조만간 머신러닝은 우리의 일상적인 삶에 깊숙이 들어올 것이며, 미래의 먹거리가 되는 것 또한 자명하다. 딥러닝의 나이는 이제 겨우 네 살이다. 딥러닝 모형이 본격적으로 개발되고 응용된 시점을 기준으로 한 것이다. 다시 말해 머신러닝은 공학도보다는 인문사회학도들에게 더 필요한 분야이다. 이는 머신러닝이 배우기 쉬운 데다 이제 겨우 기어 다니는 수준이므로 머신러닝 기술을 창조적으로 응용하는 데에는 전공하는 학문의 성격상 인문사회학도들이 조금 더 유리하다고 생각하기 때문이다.
McKensey(2018)의 조사보고서에 따르면 2030년에는 AI가 인간 노동력의 30%를 대체할 것이며, AI로 인한 자동화는 4~8조 개의 직업을 재배치할 것이라고 예측되고 있다. 이러한 관점에서 볼 때 AI는 이미 전공 여부에 관계없이 필수적으로 습득해야 할 지식분야가 되었다는 사실을 의미한다. 이 책이 AI 지식습득에 조금이라도 기여하기를 기대해 본다.
좋은 책을 위해 최선을 다했지만 부족한 부분이 있을 수 있다. 이 점은 양해를 바라며, 책에 나오는 파이썬 실습 프로그램과 출간 후 나올 수 있는 수정사항 등은 자유아카데미 홈페이지(www.freeaca.com) 자료실을 통해 제공할 예정이니 참조하기를 바란다.
정보제공 :