[리뷰] 실무로 통하는 ML 문제 해결 with 파이썬



한빛미디어 출판사의 "실무로 통하는 ML 문제 해결 with 파이썬(카일 갤러틴, 크리스 알본 저/박해선 역)"를 읽고 작성한 리뷰입니다.

표지


머신러닝 입문자가 빠르게 실무에 적응할 수 있도록 도와주는 책. 가장 빠른 방법으로 실무 중심의 핵심만 빠르게 습득하는데 큰 도움을 준다.

약 7년 만에 “파이썬을 활용한 머신러닝 쿡북”의 개정판이 나왔다. 알파고의 등장 이후 딥러닝을 학습하며 거의 처음으로 만났던 책이었기에 매우 반가웠고 몇해 흐르는 동안 관련된 지식을 이미 충분히 알고 있음에도 다시금 반갑게 개정판을 읽은 이유는 다음과 같다.

먼저 1판의 텐서플로 버전과 개정판의 파이토치 버전을 비교해보고 싶은 마음 하나와 몇년 전에 읽었을때의 개념과 제법 실무를 쌓고 난 지금 시점에서 읽었을 때 얼마나 책의 내용이 다르게 다가오는지 느끼고 싶은 이유 때문이었다.

결론을 말하자면 개인적으로는 파이토치와 텐서플로의 구현 방법의 차이를 조금 더 명확하게 정리할 수 있었고 당시 이해하기 어려웠던 개념들을 말끔하게 정리해 볼 수 있음을 느꼈는데 확실히 이 책은 머신러닝을 입문하는 독자들에게 큰 도움이 될 수 있는 내용이 담겨있고 그 내용들은 체계적으로 독자들에게 다가갈 수 있게 구성한 저자의 노력이 돋보였다.

1~7장은 주로 다양한 성격의 데이터를 능숙하게 다루는 방법을 다루고 있다. 수치형이나 범주형으로 구성된 Tabular 성격의 데이터를 Pandas를 통해 가공, 추출하는 것에서 시작하여 텍스트와 같은 비정형 데이터를 다루는 방법을 담고 있다. 특히, 날짜나 시간 또는 벡터와 같이 다루기 까다로운 유형의 데이터를 다루는 방법을 집중하여 설명하고 있어 입문자에게 많은 도움이 된다.

8장~12장에는 주로 전처리 내용을 다룬다. OpenCV로 이미지를 다루는 방법에서부터 차원 축소 등의 피처 엔지니어링 기법도 다루며 모델을 평가하는 방법이나 선택하는 방법 등 실무에 자주 활용되는 파이프라인의 큰 그림을 포괄적으로 이해할 수 있는 파트이다. OpenCV
PCA

14장~19장에는 가장 흔하게 널리 알려진 ML모델을 하나씩 살펴본다. 회귀나 분류 모델은 물론 나이브베이즈나 군집 모델에 대해서도 상세히 실습해 볼 수 있다. 또한 기본 베이스라인 수준의 코드들이 잘 갖춰져있기에 이 책의 모델을 조금만 수정하면 실무 어디에도 쉽게 활용할 수 있도록 구성된 점이 눈에 띈다. 제목에서 알 수 있듯 이 책이 실무에 많은 도움이 되는 내용이기도 하다.

특히 몇년 사이에 ML 핵심 모델을 구현한 최신 라이브러리들의 활용법이 매우 간소화되었다. 이런 최신화 라이브러리의 트렌드를 잘 반영하고 있는 책이기에 1판을 읽었던 독자에게도 도움되는 내용들이 많다고 볼 수 있다.

여담으로 예전에 1판 리뷰를 작성하며 제목에 조금 실무에 도움된다는 느낌이 반영되었으면 한다고 기록한 적이 있는데 어쩌면 출판사에서 그 리뷰 의견을 반영하여 개정판의 제목을 반영해주신건 아닐까 감사한 마음도 든다.

20장 이후로는 딥러닝을 소개한다. Pytorch를 활용하는 기본적인 방법론 및 이미지, 텍스트 위주의 신경망 훈련 예제가 등장한다. 마지막 장에는 서빙을 다루는데 복잡한 서빙의 과정을 API화하여 독자가 쉽고 빠르게 서빙의 개념을 익힐 수 있도록 안배한 구성이 마음에 든다. 시각화

이 책의 특징을 종합하자면 머신러닝 입문자가 빠르게 실무에 적응할 수 있도록 도와주는 책이라고 할 수 있다. 모든 예제들은 베이스라인이 탄탄하여 약간의 변형을 가하여 실무에 바로 활용할 수 있고, 머신러닝의 근간이 되는 핵심개념들은 수식을 거의 활용하지 않고 구현과 예제 중심으로 학습할 수 있도록 되어있어 이해하기 애매모호한 부분을 최소화한 점이 강점이다. 베이스라인

물론 시대적으로 LLM, GPT, RAG, 랭체인 등이 등장하며 더이상 모델의 Core에 대한 이해가 중요했던 시기는 사라져가고 있는 것이 사실인 듯 하다. 주로 유명한 LLM의 API를 활용하여 그 위에 파인튜닝이나 랭체인을 활용하여 타 서비스와의 차별화를 두고 있고 내부적으로 임베딩의 기법에 차이를 두는 편인 것 같다.

예전처럼 밑바닥부터 온프레미스 느낌으로 자체 모델을 구현하고 서빙했던 환경에서 차차 거대 LLM에 의존하는 현 상황에서 모델의 핵심에 대한 배경 지식이 예전보다 중요성이 떨어진 것은 사실이다. 그럼에도 LLM을 제대로 활용하고 차별화된 별도의 모델을 구현하기 위해 여전히 머신러닝의 코어 지식은 중요하다고 생각한다.

그렇기에 이 책의 내용이 현 시점 트렌드와 약간 거리감이 있는 것은 사실이나 머신러닝이나 딥러닝 분야의 종사자라면 이 정도 모델의 핵심 개념과 활용방법 정도는 기본으로 숙지해야 할 부분이다. 해야할 것이 참 많이 시간이 부족한 요즘 이런 내용들을 가급적 가장 빠른 방법으로 실무 중심의 핵심만 빠르게 습득하는데 큰 도움을 준다는 점이 이 책의 가장 큰 장점일거라 말하고 싶다.







© 2019.04. by theorydb

Powered by theorydb