본문 바로가기

책읽기

[개발자를 위한 머신러닝&딥러닝](로런스 모로니 著, 박해선 驛, 2022)

● 머신 러닝 붐

- 머신 러닝 입문자가 계속 느는 것이 느껴진다.

- 정확한 통계 수치를 보지 못해 얼마가 늘었는지, 늘고 있는지는 알 수 없지만

- 최근 강의를 하러 방문했던 한 정부출연기관에서는 기존 DB 담당자들, 웹개발자들이 머신 러닝 입문자로 앉아 있었다.

- IT와 거리가 먼 분들 입장에서는 DB나 웹이나 머신 러닝이나 그게 그거 아닌가 싶겠지만

- 밭을 일구는 농부와 배를 타는 어부, 산을 누비는 심마니처럼 바라보는 대상과 생존을 위한 기본기가 다른 것이 이들이다.

 

개발자를 위한 입문서

- 여러 종의 입문서가 시중에 나와있고 이 중 몇 권을 읽었지만 이 책은 조금 독특하다.

- 제목인 "개발자를 위한~" (원서는 "~ for coders")에서 알 수 있듯 코딩 자체를 처음으로 하는 이들이 아니다.

- 심마니에게 농사일은 낯선 일이겠지만 풀 이름을 일일이 가르칠 필요는 없는 것처럼,

- 딥 러닝 라이브러리인 텐서플로는 낯설겠지만 코딩 자체를 처음부터 가르칠 필요는 없다.

 

● 독특한 구성

- 그래서인지 구성이 상당히 독특하다. 

- 본문 두 번째 페이지에 나오는 가장 먼저 나오는 그림 1-1에서 벽돌깨기 게임 예를 들면서 나오는 설명은 코드 형식이다.

- 연달아 나오는 몇 개의 예시를 자바스크립트 형식의 코드로 설명하고 나서 텐서플로 이야기가 나오는데,

- 설치 등 환경 설정이 다른 입문서와 비교해 몇 배나 짧다. 개발자들에겐 익숙한 이야기이기 때문이다.

- 드디어 텐서플로 코딩을 하는 단계에서도 경사하강법이나 오차역전파 같은 이야기는 거의 생략된다.

- 이 부분은 익숙해서라기보다는 결과 위주의 설명이 개발자들에게 더 익숙하게 다가가기 때문일 것이다.

 

● 다른 입문서는?

- 여러 편의 다른 입문서는 관점에 따라 조금씩 다르기는 하지만 수학적 설명이 더 많이 포함된다.

- 경사 하강법을 설명할 때 깊게 설명하지 않더라도 편미분방정식 하나쯤은 등장하고

- 오차 역전파에서 발생하는 기울기 소실을 이야기할때도 미분 이야기가 등장한다.

- 머신 러닝 모델을 만드는 이들이 반드시 다루어야 하는 학습률(learning rate)을 설명하려면 불가피해 보인다.

 

● 결과물 위주의 방식

- (주)인사이트마이닝 이부일 대표님께서 주신 말씀처럼 통계학은 의심하는 학문이고, 머신 러닝의 본질은 통계학이다.

- 받은 데이터가 정규성을 띄고 있는지, 이 표본과 저 표본의 분포가 다른지 같은지부터 시작해

- 내가 적용하는 모델이 옳은지까지 끊임없이 의심하고, 결과를 제출할 때도 p-value와 신뢰 구간 등을 제시한다.

- 그러나 어떤 집단에서 개발자가 머신 러닝 모델링에 투입된다면 적어도 결과를 빠르게 요구하는 상황일 것이다.

- 이들에게 샤피로-윌크 검정이니, 선형성이니 하는 이야기부터 하고 있을 여유는 없다.

- 검증은 이들에게 데이터를 맡기며 모델링을 의뢰한 이들에게 맡기고, 우선 결과부터 빠르게 내야 한다.

 

● 배포(deploy) 부분 비율이 높다

- 개발자들이 머신 러닝을 배워야 하는 상황이라면 앱이나 웹으로 모델을 배포해야 하는 상황일 확률이 높다.

- 그래서 텐서플로 기본, 이미지, 자연어를 빠르게 훑은 후 (딥 러닝은 이미지나 자연어에 강력하다)

- 텐서플로.js 등을 사용해 앱과 웹으로 배포를 하는 실습에 적지 않은 분량을 할애하고 있다.

- 이 책을 읽어야 하는 이유가 되는 지점이 여기라고 생각한다.

- 정석으로 머신 러닝을 배운 이들 입장에서는 앱이나 웹 배포가 어렵지만 음으로 양으로 등을 떠밀리고 있다.

- 개발자들에겐 익숙할테니 이 책의 후반 3분의 1 정도를 차지하는 부분에서 생략이 적지 않다고 느끼지만

- 그럼에도 불구하고 따라해볼 수 있는 좋은 예제들이 담겨 있다.

 

● 이 책이 다가 아니기를 알면 좋겠다.

- 갑자기 머신 러닝을 담당하게 된 개발자들이 이 책으로 빠르게 결과를 낼 수 있는 것은 반가운 소식이다.

- 하지만 이 책의 내용을 전부라고 인식하고 이것"만" 하면 분명히 문제가 생길 것이다.

- 위에서 이야기한 데이터의 특성도 파악해야 하고, 결과 검증 이전에 데이터 분할부터 신경쓸 거리가 많다.

- 이 책으로 입문하시는 분들께서 나중에라도 다른 책을 함께 읽으시면 좋겠다.

 

※ 한빛미디어 2022 도서 서평단 "나는 리뷰어다"의 일원으로 도서를 제공받아 작성한 리뷰입니다