메뉴 바로가기 검색 및 카테고리 바로가기

한빛미디어

독자리뷰

머신러닝을 배우는 것은 그만! 이제 프로젝트다

howtoliv***

|

2023-12-24

머신러닝 엔지니어링 인 액션

성공하는 머신러닝 프로젝트의 비밀. 순서도와 그림으로 살펴보는 머신러닝 프로젝트 A to Z

  • 저자 : 벤 윌슨
  • 번역 : 김대근 , 심대열
  • 출간 : 2023-12-04

2월의 도서로 돌아왔습니다. 대학원 기말고사가 끝났지만, 아직도 졸업시험이 남아있는 저에게 시험과목과 상관없는 책을 읽는 다는 것이 생각보다 어려운 일이더라고요...ㅎㅎ 그럼에도 이 책은 충분히 읽어보고 공부할 만한 가치가 있어서 리뷰를 올려봅니다. 숨겨진 사실은....  다음 학기에 Mlops 관련 수업이 있는데요, 그 전에 이 책을 읽는다면 이해도가 높아질 것이라는 기대도 있었기 때문(?)이라는 비하인드가 ㅎㅎ

 

이 책은 기존의 '머신러닝' 관련 책들과는 조금 다릅니다. 단순히 머신러닝을 이용한 데이터 분석!에서 끝나는게 아니라 ML의 개념을 익히는데서부터 시작하여 산출물(제품)을 배포하고, 최종적으로 간편한 유지관리 및 안정성 있는 ML 프로젝트를 구축하기 위한 전체적인 내용을 총 망라하여 제공합니다. 실무에서 쓸 수 있는 TIP들의 총 집합체라고 볼 수 있을 것 같아요.

 

그렇게 이 책에서 다루는 머신러닝 엔지니어링 정보를 정리하면 다음과 같습니다.

 

1.데이터 과학 문제를 발굴하여 가장 효과적인 솔루션 찾기

2.예상 사용량과 예산에 맞는 머신러닝 프로젝트 범위 설정하기

3.낭비되는 자원을 최소화하고 생산 속도를 높이는 처리 기술

4.표준화된 프로토타이핑 작업과 통계적 검증을 사용하여 프로젝트 평가하기

5.프로젝트에 적합한 기술 및 도구 선택하기

6.코드의 이해도, 유지 관리 및 테스트 성능 높이기

7.문제 해결 및 로깅 관행 자동화하기

 

따라서 '머신 러닝 엔지니어링 인 액션'은 성공적인 머신 러닝 프로젝트를 설계, 구축, 제공하기 위한 핵심 원칙과 사례를 알려주는 책이라고 정의하고 싶습니다. 머신러닝을 배우고 싶은 초보자들은 살포시 뒤로 가기를 눌러주세요.

 

​이 책이 구매하시기 좋은 분들은 아마 이런 경우가 아닐까 합니다. 회사에 맞게 적용할 수 있는 데이터 사이언스 및 기계 학습을 위한 인프라 설정에 대한 가이드를 찾고 있다면, 이 책이 적절합니다. 데이터를 어떻게 쌓을 것이며 계산부터 백테스팅 및 보정에 이르기까지 모든 것을 다루고, 단계마다 필요한 도구를 사용하는 방법에 대한 명확한 지침이 있기 때문입니다. 무엇보다도 배경지식이 다소 낮은 초보자라도 쉽게 따라할 수 있도록 명확하고 간결한 문체로 작성되었다는 점도 장점입니다.

 

​요즘은 각종 온라인 서점에 머신러닝으로만 검색해도 수만가지 책이 나오는 시대입니다. 이게 ML에 관한 좋은 책은 많지만 "머신러닝 엔지니어링 인 액션"만큼 좋은 ML 모범 사례 적용집의 형태를 띠고 있는 것은 거의 없는 것 같아요. 저자인 벤 윌슨의 책들이 대부분 그러한 경향이 있는데, ML 이론은 이미 알고 있으나, 현업에서 이를 실행에 옮겨야 하는 사람들에게 탁월한 선택이 될 것 같습니다.

 

​추가로 저자의 커리어를 살펴보니 정말 눈이 부십니다. 벤 윌슨은 데이터브릭스라는 회사의의 수석 책임자로, 데이터브릭스의 AutoML 프로젝트를 개발했습니다. 또한 MLflow 커미터라고 하네요. 그만큼 다양한 비즈니스에서 익힌 수년간의 프로젝트에 걸쳐 쌓은 지식을 공유해 줍니다. 책을 살펴보면 간단하고 구체적인 예시를 토대로, 초보자가 범할 수 있는 실수들을 미리 말해주는데요, 더 감동적인 점은 자신의 실수까지 동원하여 독자가 자괴감을 느끼지 않도록 배려해준다는 거예요. 이런 고수들도 범하는 실수들이니, 초보자들은 더 쉽게 책을 받아들일 수 있지 않을까요? ㅎㅎ 

 

개인적으로는 책을 읽다보니 저자가 책에 숨겨놓은 통찰과 생각이 느껴지기도 했습니다. 우리는 책을 소비할 때 그대로 내용을 베껴서 어떤 문제를 풀고자 하는 경우가 많잖아요? 이 책을 읽는 독자들은 아마 이런 점을 해결하고 싶지 않았을까 싶어요. 나에게 주어진 문제를 이해하고 ML 프로젝트의 비즈니스 요구 사항과 범위를 정의하는 정해진 틀이나체크리스트가 있는지? 하는거죠. 주어진 목록을 그대로 따라가다 보면 뙇! 하고 해결책이 나오는 마법상자같은 도구 말이예요.

 

하지만 이 책을 읽다보면 결국 저자가 중요시하는 것은 '소통'이 아닐까 싶습니다. 데이터 관련 부서에서 일하는 분들이 가장 많이 부딫히는 문제점이 보통 타 부서와의 소통 부족인 경우가 많더라고요. 그러나 그 부서에서 하고 있는 일에 대한 이해 없이 데이터를 분석한다는 것은 소귀에 경읽기가 될 확률이 높더라고요.

 

하지만 저자는 그런 경향에 단호하게 반대하는 의견인 것 같습니다. 일단 그들이 해결하고 싶은 것이 무엇인지 가볍게 토론하면서 질문하고 들어보라는 거죠. 그렇게 회의를 하다 보면 대화가 추상적이고 산으로 갈 때가 종종 있습니다. 우리 회사의 능력범위를 훨씬 벗어난 우주의 얘기를 하게 되는거죠. 그 때 대화를 좀 더 실용적인 것으로 부드럽게 전환하는 것이 팁이라고 해요.

 

둘째로 만약 데이터 부서에서 타 부서의 직무 기능을 강화하기 위한 무언가를 만들고 있다면, 우리는 그것이 작동하는 것을 꾸준히 지켜봐야 한다고 해요. 그들과 함께, 어려움을 겪고 있는 것이 무엇인지, 그 작업을 어떻게 수행하는지 조용히 관찰하고, 수동으로 작업하는 데 대해 그들이 느끼는 좌괴감이나 짜증나는 점에 대해 최대한 많은 통찰력을 얻으라는 거죠.

 

이런 과정에서 막막한 것도, 힘든 시간도 있겠지만 아인슈타인의 명언을 생각하면서 우직하게 문제를 해결하면 좋은 DS 부서가 될 수 있지 않을까 싶습니다. "문제 해결에 1시간이 있다면 문제에 대해 생각하는 데 55분을 보내고 해결책에 대해 생각하는 데 5분을 쓸 것입니다."

 

저자는 또 이런 태도를 경계하라고 합니다. '문제를 듣자마자 수집할 기능 데이터, 사용할 알고리즘에 대해 생각하기 시작하고 즉시 따라갈 주제에 대해 누군가가 작성한 블로그를 찾으러 달려가면 문제가 발생할 수 있습니다.' 요즘 무언가 잘 풀리지 않으면 챗GPT로 향하는 제 모습을 반성하게 되는 내용이기도 했습니다. 

 

​마지막으로 저자가 최근 인터뷰에서 남긴 내용을 인용하려고 해요. 많은 개발자들이 핫한 DS 분야에서 성과를 내는 데이터 전문 엔지니어로 성장하고 싶어하는 경향이 있는 것 같더라고요. 워낙 핫한 분야니까요. 그러기 위해서 데이터 사이언스를 어떻게 공부하냐는 질문들이 많았나 봅니다. 그런 질문에 대해 대답한 내용이 큰 도움이 될 것 같아서 옮겨봤습니다. 

 

​'저는 책에서 의도적으로 알고리즘 작업이나 ML 엔지니어링 작업의 기본 사항을 다루지 않았습니다. 알고리즘, 응용 ML/응용 분석 및 통계에 관한 일부 책과 함께 이 책은 사람들이 데이터 분야의 직업으로 전환하고, 성공하는 데 필요한 입문 주제를 다루었다고 생각합니다. 데이터 사이언스 업계로의 '전직'을 원하는 개발자로부터 많은 이야기를 들었습니다. 얼마나 데이터 과학을 배워야 하는지 물으면 늘 같은 말을 합니다. “그냥 통계를 읽어보세요. 당신은 이미 코딩 방법을 알고 있으며(아마 대부분의 DS 사용자의 90%보다 더 잘 코딩할 수 있을 것임) 데이터 처리 방법 또한 이미 이해하고 있을 겁니다. 당신이 놓치고 있는 것은 알고(Algos)와 통계뿐입니다.”

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?