|
번역기 돌리셨는지요? AI학문에 쇼핑몰 이커머스 용어를 사용하셔서 맞지 않는 부분들이 있어요, 할인된 누적 이득? 이런 표현이 안맞고, 실제로 쓰지도 않습니다. 한글말로 검색해도 나오지 않습니다. discounted gain 이런걸 할인된 누적이득? 이게 번역기가 이렇게 하던데, 실제로는 감소된 적게 카운트된으로 써야지 무슨 마트도 아니고 할인된이라는 단어가 책에서 나오는지. 이런 게 상당수 있습니다. |
|
흔히 과학(Sciences)과 공학(Engineering)을 혼동하는 경우가 많습니다. 물리학/화학 등의 이학을 기반으로 하는 학문과 신소재공학/기계공학 등의 공학을 기반으로 하는 것은 같은 이론을 공부할지라도 다른 방향성을 가집니다. 과학은 자연의 원리를 이해하는 학문이라면 공학은 과학에서 얻은 원리를 인류에 응용하는 학문입니다.
머신러닝을 공부함에 있어서, 알고리즘을 공부하는 것과 머신러닝 엔지니어링을 공부하는 것은 과학과 공학의 차이와 비슷합니다. 머신러닝 알고리즘을 공부하는 것은 원리를 이해할 수는 있지만, 실무에서는 매우 작은 부분에 불과합니다.
최근 인공지능에 대한 관심이 상승하면서 많은 저서들이 출판되고 있습니다. 인공지능의 기초서적, 인공지능 알고리즘 서적이 대부분을 차지하고, 실제로 인공지능을 응용할 수 있는 실무영역에 대한 저서는 드뭅니다. "머신러닝 엔지니어링"은 인공지능을 실무에 활용할 수 있는 프로젝트 수명주기를 제시하고 있습니다. 머신러닝의 알고리즘의 해석, 이론, Pseudo-code 보다는 프로젝트 수행하면서 생길 수 있는 애로사항, 해결방안을 제시하고 있습니다.
마지막으로 이 책을 추천하는 이유를 책 일부를 발췌하여 마무리하고자 합니다. 머신러닝 프로젝트에서는 여러 상황이 잘못될 수도 있는데, 대부분은 기술의 성숙도나 머신러닝 알고리즘에 대한 분석가의 이해와는 무관하다. .... 어떤 데이터를 얻을 수 있는지, 충분한 데이터를 얻을 수 있는지 여부, 학습 데이터를 준비하는 방법, 어떤 특징을 설계하는지 ... 와 같은 요소가 응용 머신러닝 프로젝트에 훨씬 더 중요하다.
|
|
11개 언어로 출판된 베스트셀러 《THE HUNDRED-PAGE MACHINE LEARNING BOOK》의 저자 안드리 부르코프가 쓴 책이다
가트너의 머신러닝 개발팀의 리더이기도 한 저자는 15년간 인공지능 관련 문제를 해결한 경험과 함께 업계 리더들의 출판 경험을 바탕으로 이 책을 집필 하였다
이 책에서는 독자가 머신러닝의 기초를 이해하고 자신이 선호하는 프로그래밍 언어나 머신러닝 라이브러리를 사용해서 적절한 형식의 데이터 세트가 주어지면 모델을 구출할 수 있다고 가정한다 머신러닝 알고리즘을 데이터에 작용하는 것이 불편하고 로지스틱 회귀, 서포트 벡터 머신, 랜덤 포레스트의 차이점을 확실히 알지 못한다면 《THE HUNDRED-PAGE MACHINE LEARNING BOOK》 을 먼저 공부하고 이 책을 볼 것을 추천한다
이 책은 머신러닝 엔지니어링 모범 사례와 디자인 패턴에 대해 포괄적으로 살펴본다 처음부터 끝까지 읽어 볼 것을 추천한다 그러나 각 장마다 머신러닝 프로젝트 수명주기의 고유한 측면을 다루고 있고, 각 장은 서로 직접적인 종속성이 없기 때문에 순서에 관계없이 어떤 순서로든 읽을 수 있다
이 책의 저자는 11개 언어로 출판된 베스트셀러 《THE HUNDRED-PAGE MACHINE LEARNING BOOK》의 저자로써 이 책은 머신러닝 쪽에서는 전세계적으로 매우 유명한 서적이다 이 책의 저자는 가트너의 머신러닝 개발팀의 리더이기도 하며 15년간 인공지능 관련 문제를 해결한 경험을 가지고 있는 인공지능 계에서는 매우 저명하고 많은 실적을 이루어낸 인물이기도 하다 그로 인해 이 책의 저자가 첫 번째 책을 출간함과 동시에 전 세계 베스트셀러가 되었으며 두 번째 책인 머신러닝 엔지니어링 책도 저자의 깊이 있는 노하우가 담긴 내용들이 가득하다 이 저자의 두 번째 책이 나왔다는 소식에 이미 이 책은 베스트셀러가 되기에는 의심의 여지가 없는 최고의 머신러닝 서적이 될 것이다
머신러닝 입문자들을 대상으로 하는 책과 강의들은 이미 시중에 수도없이 나와 있으므로 머신러닝 입문 서적을 원한다면 이 책의 구매를 권장하지 않는다
장마다 머신러닝 프로젝트 수명주기의 고유한 측면을 다루고 있고, 각 장은 서로 직접적인 종속성이 없기 때문에 순서에 관계없이 어떤 순서로도 읽을 수 있다
초반 프로젝트 준비와 데이터 수집 및 분배는 머신러닝 프로젝트를 초기에 시작함에 있어서 절대로 빼놓을 수 없이 중요한 부분이다 이부분에 대해서 이 책을 읽는 사람들에게 책의 내용이 정말 큰 도움을 주리라 장담한다
특징 공학을 배우고 모델 평가와 모델 배포, 모델 서빙, 모니터링, 유지보수등 머신러닝 프로젝트를 빠르게 평가하고 배포하고 모니터링과 유지보수를 할 수 있는 노하우들을 통해 프로젝트를 빠르게 수행할 수 있는 노하우를 배울 수 있다
말이 필요없는 책이다 머신러닝을 다루는 엔지니어라면 이 책을 반드시 읽어보라고 권하고 싶다 이 책의 저자는 11개 언어로 출판된 베스트셀러 《THE HUNDRED-PAGE MACHINE LEARNING BOOK》의 저자로써 이 책이 번역됐다는 사실만으로 많은 주목을 받고 있는 최고의 머신러닝 엔지니어링 서적이다 이 책은 머신러닝 기초에 대해서 다루고 있지 않다 이 책은 머신러닝 엔지니어링 즉 머신러닝 프로젝트를 진행함에 있어 문제가 되거나 걸림돌이 되는 여러가지 부분들을 해결할 수 있는 노하우들을 충분히 담고 있다 머신러닝 엔지니어들 뿐만아니라 머신러닝 프로젝트를 진행하거나 준비하고 있는 많은 조직들이 이 책을 필히 읽어 볼 것을 권장한다
|
|
“이제는 머신러닝의 개요는 익혔다, 그런데 실제로 서비스 / 제품을 만들고 운영하려면 어떻게 해야하나?” 아마도 많은 개발자들이 요즈음 느끼고 있는 문제일 것입니다. 이 책은 이러한 물음에 답하기 위해 만들어졌습니다. 대부분의 머신러닝 도서는 현재까지의 대표 모델들의 구조를 기반으로 실험환경에서 모델을 개발하는 과정만을 다룹니다. 이것은 SW개발에서 알고리즘 문제 몇 개를 풀이과정과 함께 익히는 것 과 같습니다.
머신러닝 제품을 개발하기 위해서는 이런 예제들 만으로는 부족하기 때문에 이런 책이 필요합니다. SW 개발에서도 문제를 풀기위한 알고리즘은 구현할 수 있지만 실제 시스템으로 이 모듈을 서비스 하는것은 전혀 다른 문제입니다. 머신러닝 모델의 제품화에서도 비슷한 문제들이 발생합니다.
자주 인용되는 도식 중, 머신러닝 관련 전체 일 중에 모델 개발은 매우 작은 부분으로 그려진 그림이 있습니다. 이 책은 그 나머지 부분에 대해서 제법 구체적으로 훑어 봅니다. 예를들어 이 책은 9개 챕터 중 한 챕터를 할애해 데이터를 준비하는 과정에 대해서 다룹니다. 데이터를 준비의 과정이 실제 프로젝트에서는 7-80% 의 시간을 차지하며 대부분의 오류들은 데이터에서부터 시작되는 것을 고려할 때, 이러한 생성/수집/처리/라벨링 전반에 걸친 프로세스의 설명에 지면을 할애하는 것은 매우 타당합니다만, 다른 책에서는 이러한 내용을 찾아보기 힘듭니다.
이 책은 머신러닝으로 제품을 개발하는 전과정을 알고싶은 독자에게 권합니다. 맡고 있는 머신러닝 팀을 잘 운여하고 싶은 기술 리더일 수도 있고, 전체의 그림을 알고 싶은 머신러닝 개발자가 될 수도 있겠습니다. 머신러닝을 알고 있다는 가정으로 쓰여진 책이기는 하지만 머신러닝의 복잡한 이론이나 실험적 지식은 필요치 않습니다. 현업자의 관점에서 머신러닝 제품개발에 들어가는 각 단계들을 정의하고 일어날 수 있는 문제들을 나열해 주기 떄문에 전체적인 프로세스를 이해하는데에는 아주 도움이 될 수 있습니다. 이러한 프로세스를 수립하는 일이 요즘은 MLOps 라는 이름으로 각광 받고 있지만, 좋은 레퍼런스 책은 찾기 어려웠는데 이 책의 7,8,9 챕터를 통해 모델 평가/배포/서빙 에 대해서도 충분한 지식을 얻을 수 있습니다.
이 책의 또 하나의 특징은 제품화 과정 중 발생할 수 있는 “문제”들을 중심으로 프로세스를 설명한다는 것입니다. 몇 개 안되는 MLOps나 일반적인 ML 책들은 도구(예시) 중심으로 개발과정을 설명합니다. 이는 좀 더 손에 잡히는 해결 방법을 제안하지만, 도구의 변화나 외부 환경의 변화에 의해 금방 쓸모 없는 지식이 되기도 합니다. 그보다는 내재된 문제와 어떤 것들을 해결해야 하는지를 아는 것이 보다 근본적이고 오래 가는 학습이 될 수 있습니다. 이 책에서는 모델 개발에 대해서도 두 챕터를 할애하는데, 어떤 모델들을 써야하는지 장단점은 무엇인지 비교하는 내용은 없고 어떻게 오류를 분석하고 문제를 해결할지, 어떤 전략을 통해 모델을 안전하게 유지할지 등을 기술합니다.
그러나 위 장점은 어떤 독자들에게는 단점이 될 수도 있습니다. 해결방법을 제안하기는 하지만 구체적인 도구나 코드를 알려주지는 않아서 당장의 문제를 해결하는 지식을 얻기는 어려울 수 있습니다. 이런 목적으로는 시중에 다른 머신러닝 책이나 블로그 / 커뮤니티 글 들이 훨씬 도움이 될 수 있습니다.
여러분들이 이 책을 통해 머신러닝 엔지니어로서 개발의 전과정을 이해하고 실력을 향상시키는데에 도움이 되기를 바랍니다.
본 서평은 Jpub에서 도서를 지원 받아 이루어졌습니다. |
|
우선, MLE에 대한 이론에 대한 체계를 설명한 책이라고 생각합니다. 코드가 4장부터 조금씩 나오긴한데, 머신러닝을 공부한 사람이라면 봤을만한 코드들이라서 굳이 실습까지는 안해도 되지 않을까 싶습니다. 7장인 모델 평가부터 나오는 코드도 굳이 실습까지는 안해도 될 것 같습니다. 이 책은 머신러닝 엔지니어링을 위해 파이프라인에 대한 전체 부분을 챕터마다 하나씩 다루면서 진행해 나갑니다. 그래서, 아직 실무를 경험하지 않은 분들보다는 저와 같은 주니어들에게 좀 더 와 닿을 내용들이라고 생각합니다. 실무에 하기 전에 봐도 나쁘지는 안하지만 괜히 선입견을 갖게 되고 주어지는 과제에 대해 거부감을 가질수도 있을 것 같습니다.
내용들이 공감되거나 현업에서 겪었던 문제들이 그대로 다 책에서 다루고 있어서 몰입하면서 볼 수 있었습니다. 최근에는 MLops 에 대한 관심도 높아지고 이에 대한 스터디나 자료들도 많아지고 있는 것 같습니다. 여기에 관심이 있다면 이 책을 통해 머신러닝 엔지니어링이라는 파이프라인에 대한 이론적인 토대를 마련하는 게 좋다고 생각합니다. 1,2년차 머신러닝 엔지니어들 또는 연차가 있는 개발자여도 머신러닝 프로젝트를 하는데 머신러닝 이론이 약하다면 오히려 이런 책이 현업에 더 도움될 수도 있을 것 같습니다.
모델에 대한 책이나 실습은 시중에 많은 책들이 있는만큼 전체적인 프로세스를 다루는 이런 책은 오히려 더 귀하다고 생각합니다. 현업에서는 좋은 모델만 만드는 것이 끝이 아니고, 서비스를 위해 어떻게 전체 설계를 할 것인지가 중요합니다. 그리고 좋은 모델을 계속 업데이트하고 서빙과 배포를 위한 파이프라인에 대한 고민은 소프트웨어 개발자와 DBA, 데이터 엔지니어 하는 분들이 함께 고민해야 됩니다. 이 책을 통해 이에 대한 감을 조금 잡을 수 있게 된 것 같습니다.
* 제이펍 서평단을 통해 지급 받은 도서에 대한 리뷰입니다. * |
|
비즈니스에서 가장 중요한 것은 기획입니다. 기획이 잘 돼야 가설을 검증하며 방향성이 맞는지 확인할 수 있습니다. 머신러닝에서도 데이터를 수집하고 특징을 만드는 것이 중요합니다. 머신러닝에 관심 있는 분들에게 소개해드릴 책이 있습니다. 소개해 드릴 책은 ‘머신러닝 엔지니어링’입니다. 저자는 15년간 인공지능 관련 문제를 고민해왔습니다. 가트너의 머신러닝 개발팀의 리더이기도 했는데요.
◆ 특징 공학 데이터에서 의미 있는 값을 추출하는 건데요. 범주형 특징을 숫자로 변환하는 과정이 있습니다. 변환을 할 땐 원-핫 인코딩과 평균 인코딩 기술을 사용합니다. 그러면 여기서 어떤 특징을 좋은 특징으로 볼 수 있을까요? 좋은 특징은 예측력이 높고 빠르게 계산이 가능합니다.
◆ 모델 훈련 스키마 적합성을 검증해야 하는데요. 성능 수준을 잘 설정해야 모델의 성능을 측정할 수 있습니다. 모델 간 비교하려면 지표를 정하고 기준선을 설정하는 것이 중요합니다. 모델훈련은 머신러닝 프로젝트에서 과대평가 된 활동으로 볼 수 있습니다. 프로젝트의 수명 주기 중 모델훈련에 사용되는 시간은 5~10% 정도 밖에 사용하지 않습니다. 한마디로 모델 훈련보단 데이터 수집, 준비, 특징 공학이 더 중요하다고 볼 수 있습니다.
끝으로 이 책은 머신러닝을 알려주는 책으로 머신러닝에 대해 자세히 알려줍니다. 한 주제와 관련해 꼼꼼하게 서술되어 있고 끝부분에 한 번 더 요약 내용도 있습니다. 머신러닝의 전체적인 프로세스를 알아야 업무를 할 때 수월하게 할 수 있습니다. 머신러닝 전반적인 과정이 궁금하신 분들에게 이 책을 추천합니다.
|
![]()
Author: 안드리 부르코프 지음 / 구정회 옮김 출판사: Jpub(제이펍) Score /5: 4.5 [이 책의 대상 독자]
실무자에게 피가되고 살이 되는 레퍼런스 책!이 책을 읽고나서 느낀 점은 '실무에서 두고두고 레퍼런스할 수 있겠다' 라는 느낌이었다.
![]()
위 그림과 같이 필요한 부분을 프로세스로 정의하고 내가 업무를 할 때 고려하지 않았을 부분을 부드럽게 긁어주는 느낌이며 이 책에 대한 내용을 참고로 하나의 프로젝트를 수행해 볼 수 있을 것 같다. 요즘은 그런 경우가 많지 않지만 예전에는 선임자가 퇴사시에 업무 인수인계가 상당히 쉽지 않았던 기억이 있다.
'기존에 이렇게 하면 이렇게 됩니다. 짜잔 멋지죠?' 이러한 형태의 기본서는 도움이 될수는 있겠지만 실무에서는 사용할 수 없다.
이 책은 쉽지 않다. 만약 머신러닝의 수식 또는 기반 내용을 충분히 숙지하지 않고 이 책을 접었다면 이 책을 보기전에 다른 기본서 및 수학 관련 스터디를 하고 보기를 바란다. 이 책은 쉬운 책은 아니다. 하지만 어려운 부분을 감내하고 끈기있게 본다면 전체적인 설명 및 예시가 풍부하기 때문에 충분히 이해할 수 있는 내용이다.
이 책 한권으로 머신러닝이 끝나지는 않는다. 하지만 전체적인 뷰에서 프로세스를 하나씩 살펴보고 각 단계마다 고려해야 할 사항을 집중적으로 알려주기 때문에 머신러닝 관련 업을 하시는 분들은 이 책을 꼭 일독하길 바란다.
※ 이 책은 제이펍의 지원으로 작성된 글입니다. |