책은 크게 2개의 파트로 나뉜다. 먼저 1부에서는 데이터 분석 시스템을 완성한 후, 2부에서는 1부의 구조화된 시스템에 모델을 결합하여 머신러닝 시스템으로 업그레이드 하는 과정을 거친다. 대규모의 투자를 감행하여 사내에 AI 시스템을 구축하는 것은 사업이 실패할 경우 감당해야 하는 리스크가 크다. 머신러닝 시스템의 성패는 데이터 수집, 전처리, 모델링, 평가, 문제해결에 이르는 일련의 과정을 얼마나 자주 바로 이런 측면에서 이 책이 장점을 십분 활용할 수 있는데 처음부터 목적없이 대규모의 시스템을 들이기에 앞서 MVP 규모의 소규모 시스템으로 스스로의 가설을 검증해보고 숨은 인사이트를 발견하는 과정을 반복할 수 있도록 책의 제목과 구성을 볼 때 각각의 스킬이 평행식으로 열거된 100가지 테크닉이 소개되는 것이라고 착각할 수 있으나 100가지 테크닉은 평행적인 나열이 아닌 예를 들면 1장의 앞서 소개된 9가지 스킬은 10번째 스킬로 구조화되며 통합되는 방식이다. 또한 2장의 시각화를 위한 각 스킬들은 3장의 대시보드 시스템에 통합 활용되며 구조화된다. 여기에 엑셀 보고서를 통한 의사소통 문제를 해소하는 4장의 내용이 더해지면 5장의 데이터 분석 시스템이 완성된다. 즉, 1 ~ 4장의 내용이 5장으로 통합 구조화되는 모양이라고 볼 수 있다. 여기에 이르기까지 Pandas에서 자주 활용하는 기본적인 기능과 Python의 기초 지식을 익힐 수 있음은 물론 ipywidgets 패키지를 활용하여 주피터 노트북을 인터랙티브하게 활용할 수 있는 등 여러 단독 스킬들을 배워나갈 수 있다. 파트1의 과정은 파트2에서 대부분 복습할 수 있다. 때문에 파트1에서 잘 이해가지 않는 부분이 있더라도 걱정말고 일단 구조화를 향한 큰 그림에 집중하며 실습해도 큰 문제가 없을 듯하다. 그렇다면 파트2는 파트1 대비 어떤 차이점이 있을까? 제목에서 알 수 있듯 파트2에서는 6장에서는 1장과 매우 유사하나 머신러닝에서 활용할 목적, 설명, 상관관계 등의 변수를 생성한다던가 범주화 처리 같은 머신러닝 모델이 보다 잘 이해할 수 있는 몇가지 과정이 추가된다는 차이가 있다. 7장은 모델링에 집중한다. 가설을 수립하고 설명, 목적 변수를 선정하며, 알고리즘 선정에서 평가에 이르는 일련의 과정이 포함되어 있다. 8장은 앞에서 배운 6 ~ 7장의 내용을 통합 구조화하며 입력 데이터에 지속적인 변경이 가해지더라도 성능을 자동으로 갱신할 수 있는 시스템을 만든다. 9장에서는 이 모든 내용을 통합하며 10장에서 대시보드로 완성한다. 일련의 예측 및 분석 과정도 결국은 내부를 모르는 또 다른 의사결정자와 소통이 필수적이기에 10장에서는 그런 의사 전달 체계를 위한 과정이 포함되어 있다. 조금 더 나아간다면 해석 가능한 인공지능 기법인 XAI의 기술들이 활용될 수 있겠으나 여기에서는 Feature Importance 정도의 기법만 소개되고 있다. 결과적으로 10장까지 다루는 일련의 과정을 통해 이 책을 통해 하나의 잘 구조화된 설계 그렇기에 머신러닝 입문서에서 배운 기초 과정들이 서로 유기적으로 어느 타이밍에 활용할 수 있을지 입체적으로 이해할 수 있게 된다. 예를 들면 테크닉 20의 경우 차원 소멸의 대표적인 알고리즘 t-SNE를 적용한다. 일반적인 입문서로만 학습을 했다면 t-SNE를 배워도 어떤 기초 개념인지는 이해할 수 있어도 이를 어느 타이밍에 어떤 이벤트에 활용해야 할지 바로 떠오르기 어렵게 된다. 하지만 이 책을 통해 일련의 과정을 입체적으로 배우고 나면 그런 기초 요소들을 어느 시점에 적용해야 할지 쉽게 판단이 되는 것이다. 책의 난이도는 데이터 분석을 처음으로 접하는 사람이 도전해도 충분할 것 같다는 생각이 들지만 그래도 Python 프로그래밍 기초 수준은 필요할 듯 하다. 또 본 도서의 과정은 모델의 알고리즘이나 수학적 기초에 집중하는 책이 아니다. 최대한 라이브러리를 이용하고 이론 지식을 소개하지 않는다. 다만 알려진 알고리즘을 어떻게 언제 활용해야 하는지 실무에만 집중하는 책이기에 어느 정도의 모델이나 입문 지식 정도는 알고 실습에 임하면 더욱 도움이 될 것이다. 이 책은 특히 예산이 충분하지 않은 소규모 스타트업의 초기 모델 구축에 도움이 될 것 같다. 그 외에도 개인적으로 소규모 시스템을 구축하고 싶은 독자에게도 추천하고 싶다. |
|
데이터는 지금도 모으고 있습니다. 비즈니스의 성과와 실적을 판단하는 요인으로 데이터가 활용됩니다. 데이터 관련 입문 서적은 많이 나와 있는데요. 실무 관련 서적을 추천해 드리려고 합니다. 소개해 드릴 책은 ‘파이썬 머신러닝 실무 테크닉 100’입니다. 이 책은 ‘파이썬 데이터분석 실무 테크닉 100’을 읽으신 분이나 입문 지식이 있는 분들에게 추천합니다. 입문자나, 읽지 않으신 분들에게는 ‘파이썬 데이터분석 실무 테크닉 100’을 먼저 읽기는 권장합니다. 이 책을 통해 현장 머신러닝 테크닉 실무에 대해 알아가는 시간이 되길 바랍니다.
◆ 데이터 분석 이름만으로는 무엇을 말하려는지 알기 어렵습니다. 예를 들어 이름, 학년, 과목, 점수의 데이터가 있다면 학생의 학업능력 분석이 가능합니다. 데이터 분석이란 데이터를 가공하고 탐색한 데이터로 시각화하는 것입니다. 시각화한 데이터를 토대로 구조를 구축하며 분석 시스템을 만들어낼 수 있습니다. 쇼핑몰의 상품 판매데이터는 계절마다 변경이 됩니다. 계절에 따라 계절에 맞는 옷의 판매량이 늘어나는 것처럼 데이터를 볼 때는 그 상황도 잘 파악해야 합니다.
◆ 머신러닝 분석 데이터를 먼저 가공한 후 머신러닝 모델을 만들고 구현합니다. 구현한 모델은 테스트해보며 평가합니다. 머신러닝 데이터를 가공할 땐 기간도 충분한지 살펴볼 필요가 있습니다. 머신러닝 모델을 만들기 전 가공을 잘해야 하는데요.
끝으로 데이터에 대해 더 말씀드리고자 합니다. 비즈니스가 잘 되려면 데이터를 무시할 수 없습니다. 데이터를 잘 살피지 않으면 성장하는데 넘기 힘든 벽을 만날 수 있습니다. 머신러닝 실무 테크닉에 관심 있는 분들이 이 책을 찾아보셨을 건데요. 또한 데이터 활용 프로젝트를 정착시키고자 하시는 분들에게도 추천합니다. |