Data Loading...

MLOps 도입 가이드 Flipbook PDF

https://www.hanbit.co.kr/store/books/look.php?p_code=B1913587019


100 Views
21 Downloads
FLIP PDF 9.17MB

DOWNLOAD FLIP

REPORT DMCA

Introducing

MLOps MLOps 도입 가이드

MLOps 도입 가이드_속표지.indd 1

2022. 3. 18. 오후 4:42

| 표지 설명 | 표지 그림은 부내옵시스 우비에 Bunaeopsis oubie 라는 아프리카 나방으로 자다크의 황제 Zaddach’s Emperor

라 불리기도 한다. 앙골라 Angola 부터 에리트레아 Eritrea 까지 중앙아프리카와

아프리카 동부 전역에 걸쳐 발견된다. 전 세계에서 가장 큰 수천 종의 나방을 포함하는 사 투르니아 Saturniidae 과에 속한다. 이 아프리카 나방은 날개를 펼치면 10인치에 달할 만큼 날개폭이 매우 넓어, 일부 새들보다도 더 클 정도다. 날개에는 독특한 무늬가 있다. 네 장의 날개 각각에 불그스름한 갈색 원이 하나씩 있고 그 배경에 짙은 갈색 줄무늬가 있으며 흉곽 주변과 각 날개의 테두리를 따라 흰색 줄이 있다. 더듬이는 굵고 깃털로 덮여 있다. 털과 날개를 덮은 비늘은 왁스로 코팅되어 있어 몸 전체가 다 방수된다. 나방은 하얗고 향기로운 꽃에 끌리는 경향이 있으며, 밤에 쉽게 냄새를 맡고 뿌옇고 끈적거리는 몸으로 꽃의 수분을 돕는 다. 수많은 동물과 새들이 나방을 먹이로 삼는데, 그중에는 올빼미와 박쥐도 있다. 나방의 애벌레는 도마뱀, 새, 작은 포유 류의 먹잇감이 된다. 오라일리 표지에 등장하는 동물은 대부분 멸종 위기종이다. 이 동물들은 모두 소중한 존재다. 표지 그림은 카렌 몽고메리 Karen Montgomery

가 그린 것으로, 자연사 D’Histoire Naturelle 백과사전의 흑백 판화를 바탕으로 하였다.

MLOps 도입 가이드 기업에서 머신러닝 모델을 가장 효율적으로 운영하는 방법 초판 1쇄 발행 2022년 4월 29일 지은이 데이터이쿠 / 옮긴이 동동구 / 펴낸이 김태헌 펴낸곳 한빛미디어 (주) / 주소 서울시 서대문구 연희로2길 62 한빛미디어(주) IT출판부 전화 02 – 325 – 5544 / 팩스 02 – 336 – 7124 등록 1999년 6월 24일 제25100 – 2017 – 000058호 / ISBN 979-11-6224-550-7 93000 총괄 전정아 / 책임편집 박민아 / 기획 이다인 / 편집 고지연 / 교정 박정수 디자인 표지 윤혜원 내지 박정화 / 전산편집 nu:n 영업 김형진, 김진불, 조유미 / 마케팅 박상용, 송경석, 한종진, 이행은, 고광일, 성화정 / 제작 박성우, 김정우 이 책에 대한 의견이나 오탈자 및 잘못된 내용에 대한 수정 정보는 한빛미디어(주)의 홈페이지나 아래 이메일로 알려주십시오. 잘못된 책은 구입하신 서점에서 교환해드립니다. 책값은 뒤표지에 표시되어 있습니다. 한빛미디어 홈페이지 www.hanbit.co.kr / 이메일 [email protected] © 2022 Hanbit Media Inc.

Authorized Korean translation of the English edition of Introducing MLOps ISBN 9781492083290 © 2021 Dataiku This translation is to be published and sold by permission of O’Reilly Media, Inc., the owner of all rights to publish and sell the same. 이 책의 저작권은 오라일리와 한빛미디어(주)에 있습니다. 저작권법에 의해 보호를 받는 저작물이므로 무단 전재와 무단 복제를 금합니다.

지금 하지 않으면 할 수 없는 일이 있습니다. 책으로 펴내고 싶은 아이디어나 원고를 메일 ( [email protected] ) 로 보내주세요. 한빛미디어(주)는 여러분의 소중한 경험과 지식을 기다리고 있습니다.

MLOps 도ᄋ

Introducing Introducing Introducing

MLOps MLOps MLOps 도입 가이드

MLOps 도입 가이드 MLOps 도입 가이드

MLOps 도입 가이드_속표지.indd 2

MLOps 도입 가이드_속표지.indd 2

MLOps 도입 가이드_속표지.indd 2

2022. 3. 18. 오후 4:42

2022. 3. 18. 오후 4:42

2022. 3. 18. 오후 4:42

추천사

기업 내 다양한 조직에서 폭넓게 활용하기 위해 머신러닝 프로세스에 대한 더 나은 전략과 활 성화 방안을 찾고 있다면, 이 책이 정답이다. - 아디 폴락Adi Polak

마이크로소프트, 수석 소프트웨어 엔지니어

기업 내 모델 배포 프로세스 및 시스템의 구축, 확장, 효율화 및 관리에 대한 탁월한 가이드다. - 파룰 팬디Parul Pandey

H2O.ai, 데이터 사이언스 에반젤리스트

최근 다양한 머신러닝/딥러닝 기반의 모델들이 기업과 사회 문제 해결, 성과 향상을 위해 여러 분야에서 활용되고 있다. 이 책은 이러한 모델의 생애주기에 따른 효율적인 운영과 관리를 위 해 MLOps의 기본적인 고려 사항과 노하우를 다루고 있다. 데이터 과학자뿐 아니라 데이터와 관련한 다른 직무를 수행하는 사람들도 최근 MLOps의 중요성을 크게 느끼고 있다. 이 책은

MLOps에 대한 기본 지식을 쌓고 다양한 사례를 확인함으로써 효율적인 머신러닝 운영을 돕 는 디딤돌이 되어줄 것이다. - 김진엽

Visa, Visa Consulting & Analytics, 이사

머신러닝을 실제 서비스에 효과적으로 도입/운용하는 데 꼭 필요한 MLOps의 개념과 법칙, 역 할과 구성 요소를 모두 담고 있다. - 김정민

집토스, CTO

4

지은이·옮긴이 소개

지은이 데이터이쿠Dataiku

2013년에 설립된 데이터이쿠는 전 세계 450개 이상의 기업이 포괄적인 플랫폼을 이용해 AI와 분석 애플리케이션을 설계·설치·관리할 수 있도록 지원한다. 데이터이쿠는 ‘Everyday AI’ 를 통해 시장에서 승리할 수 있다는 신념을 바탕으로, 투명하고 반복 가능한 확장성 AI와 분석 프로그램의 구축을 목표로 한다. 다양한 기업이 데이터이쿠의 플랫폼을 활용해 필수 비즈니스 운영을 뒷받침하고 이상 거래 감지, 고객 이탈 방지, 예지 정비predictive maintenance, 공급망 최적화 촉진 모델을 활용하여 급변하는 세계에 대응하고 있다. 데이터이쿠 플랫폼은 분석가부터 데이 터 과학자까지 모든 이들이 활용할 수 있으며 기업에서는 이 플랫폼을 활용해 기업의 민첩성과 대응 능력을 높일 수 있고 기업 조직 전반에 AI 확대를 추진할 수 있다. >> 마크 트레베일Mark Treveil_(3, 8장) 데이터이쿠의 파리 주재 제품 부서 소속이다. 이전에는 영국 지방 정부의 거버넌스 혁신을 선 도하는 스타트업을 이끌었다. 그 기업은 지금도 여전히 업계를 선도하고 있다. 통신, 금융, 온 라인 거래 등의 분야에서 다양한 제품을 설계하기도 했다. >> 아드리앙 라보요트Adrien Lavoillotte_(4장) 데이터이쿠의 엔지니어링 디렉터로서, 데이터이쿠 제품 내 머신러닝 및 통계 기능을 담당하는 팀을 이끌고 있다. 공학 중심 대학원인 ECE 파리에서 공부했고, 2015년에 데이터이쿠에 합류 하기 전까지 다양한 스타트업에서 근무했다. >> 요아힘 젠티치Joachim Zentici_(5~6장) 데이터이쿠의 엔지니어링 디렉터이며, 에꼴 상트랄 파리Ecole Cetrale Paris(ECP)에서 응용수학을 전 공하였다. 2014년 데이터이쿠에 입사하기 전까지 지멘스 헬스케어Siemens Healthcare와 인리아Inria 에서 컴퓨터 비전 분야 연구자로 근무했다. 데이터이쿠에서는 핵심 인프라 담당 엔지니어 관 리, 플러그인 및 에코시스템 담당 팀 구축, 고객 접점 엔지니어에 대한 글로벌 기술 교육 프로 그램 총괄 등 다양한 업무를 수행하고 있다.

5

지은이·옮긴이 소개

>> 뒤 판 Du Phan_(7장) 데이터이쿠의 머신러닝 엔지니어로서, 데이터 사이언스 확산 업무를 수행하고 있다. 지난 수년 간 지리 공간 분석부터 딥러닝에 이르기까지 다양한 데이터 문제를 다루었다. 현재는 MLOps 의 다양한 측면과 과제에 집중하고 있다. >> 마코토 미야자키Makoto Miyazaki_(10장) 데이터이쿠의 데이터 과학자로서, 데이터이쿠의 DSS를 활용하여 유럽과 미국에 거주하는 고 객에게 셀프 서비스 컨설팅 서비스를 제공하고 있다. 경제학 학사 학위와 데이터 사이언스 석 사 학위 소지자다. 이전에는 쓰나미 피해 지역의 경제 복구, 핵에너지와 같은 다양한 재해를 다 루는 금융 저널리스트였다. >> 니콜라스 오몬트Nicolas Omont_(11장) 아르틸리스Artelys의 운영 부문 부사장으로 에너지 및 물류 분야에 대한 수학적 최적화 솔루션을 개발 중이다. 이전에는 데이터이쿠에서 머신러닝 및 고급 분석 영역 제품 관리자로 일했다. 컴 퓨터 사이언스 박사 학위 소지자로, 지난 15년간 주로 통신 및 에너지 유틸리티 분야에서 운영 연구 및 통계 영역 업무를 수행했다. >> 클레망 스테낙 Clément Stenac 열정적인 소프트웨어 엔지니어이며 데이터이쿠의 CTO이자 공동 설립자다. 현재 데이터이쿠 의 DSS 엔터프라이즈 AI 플랫폼의 설계 및 개발을 총괄하고 있다. 이전에는 엑사리드Exalead에 서 제품 개발 책임자로서, 웹 수준 대규모 검색 엔진 소프트웨어의 설계 및 구현을 주도했다. 또한 VideoLAN(VLC) 및 데비안 프로젝트의 전 개발자로서 오픈소스 소프트웨어에 대한 광 범위한 경험을 가지고 있다.

6

>> 켄지 르페버Kenji Lefevre 데이터이쿠의 제품 총괄 부사장으로, 데이터이쿠의 DSS 엔터프라이즈 AI 플랫폼에 대한 제품 로드맵과 사용자 경험을 총괄한다. 파리 제7대학에서 순수 수학을 전공하여 박사 학위를 받았 다. 데이터 사이언스 및 제품 관리 분야로 직업을 바꾸기 전까지는 다큐멘터리 영화 감독으로 일했다. >> 린 하이드만 Lynn Heidmann

2008년 위스콘신-매디슨 대학교에서 언론/매스커뮤니케이션 및 인류학 학사 학위를 받은 후, 자신의 연구 및 저술에 대한 열정을 기술 세계에 쏟기로 결심했다. 샌프란시스코 베이 지역에 서 7년간 구글Google 및 나이안틱Niantic의 저술 및 운영 업무를 수행하였다. 이후 파리에서 데이 터이쿠의 콘텐츠 이니셔티브를 총괄하였다. 현재 데이터 및 AI 세계의 기술 동향과 발전을 확 인하며 저술 활동을 이어가고 있다.

옮긴이 동동구 현재 전략 기획 업무를 수행하고 있다. 이전에는 B2C 및 B2B 웹 애플리케이션, Brew/WIPI/

SKVM 등의 피처폰 애플리케이션, iOS/안드로이드/윈도우폰/타이젠 애플리케이션 등의 설계 및 개발, 엔지니어 관리 업무를 수행했다. 그 외 다양한 IT 서적에 대한 번역 활동을 하고 있다.

7

옮긴이의 말

이제 데이터 사이언스와 AI는 기업 생존의 필수 요소가 되었다. IT뿐만 아니라 제조, 구매,

SCM, 유통, 물류, 마케팅, 반도체, 자동차, 식품 등 전 산업 분야에 걸쳐 데이터 사이언스와 AI 를 적용하지 않고는 경쟁에서 도태될 수밖에 없어, 모든 기업이 경쟁적으로 도입하려 하고 있다. 하지만 이러한 시도에서 추진한 AI 프로젝트의 50~85%가 실패하고 있다. 주요 실패 원인으 로는 불명확한 비즈니스 목표, 부실한 데이터 품질, 조직 간 협력 부족, 뛰어난 인력 부족을 꼽 을 수 있다. 불명확한 비즈니스 목표: 단지 유행이기 때문에, 혹은 뒤쳐지면 안 된다는 조급함 때문에 뛰 어들어 비즈니스 목표를 설정하지 않고 단순 평가를 수행하면 실질적 결과를 얻을 수 없다. 부실한 데이터 품질: IT 혹은 데이터에 투자하지 않고 단지 AI나 머신러닝만 도입하려 한 다면 근간이 되는 데이터가 없어 분석이나 모델 구축이 불가능하기 때문에 프로젝트를 종료 할 수 없다. 조직 간 협력 부족: 데이터 과학자가 모든 것을 해결할 수 있다고 포장하거나 비즈니스 담 당자가 명확한 커뮤니케이션 없이 수의 계약 형태로 일을 진행하도록 맡겨두기만 해서는 마찬가지로 프로젝트를 종료할 수 없다. 뛰어난 인력 부족: AI 프로젝트가 운영화에 도달하고 지속적으로 운영을 수행할 수 있으려 면 비즈니스 담당자가 데이터 분석과 AI를 이해할 수 있도록 지원해야 한다. 그러러면 다 양한 실험을 수행하고 방향을 제시할 수 있는 뛰어난 데이터 과학자를 고용해야 하는데, 이러한 인력이 없는 경우 허술한 결과를 내고 조직에 불신만 심어주어 다시는 AI 프로젝 트를 시도할 수 없게 될 것이다. 이 책에서 소개하는 MLOps는 이 중 몇 가지 원인에 대한 해결 방안을 제시한다. MLOps를 만병통치약처럼 과장할 필요도 없지만 마케팅 차원의 일시적 유행으로 치부해서도 안 된다.

MLOps는 기업이 데이터 사이언스와 AI를 더 성공적으로 도입할 수 있는 실질적 방법론이 될 수 있다. 8

서문

머신러닝Machine Learning 기술은 이론과 학문의 영역에서 ‘현실 세계’의 영역으로 이동하는 전환점 에 이르렀다. 전 세계의 모든 서비스와 제품에 머신러닝 기술을 적용해보려는 시도가 이어지고 있다. 이러한 변화가 흥미롭기는 하지만, 머신러닝 모델의 복잡한 특성과 현대적인 조직의 복 잡한 구조를 조합하는 대단히 도전적인 과제다. 조직이 머신러닝을 실험실 수준에서 상용 환경으로 확대 적용할 때 겪는 어려움 중 하나는 유 지보수다. 기업은 하나의 모델만 다루던 환경에서 수십, 수백 혹은 수천 개의 모델을 다루는 환 경으로 어떻게 전환할 수 있을까? 바로 이 지점에서 앞서 언급한 기술적인 복잡성과 비즈니스 적 복잡성이 드러나고, MLOps가 필요하다. 이 책에서는 독자들에게 MLOps의 당면 과제를 소개하고, MLOps 역량을 개발하기 위한 실 질적인 통찰과 해결책을 제공하도록 하겠다.

이 책의 대상 독자 이 책은 상용 환경에서 머신러닝 적용 실무를 담당하는 데이터 분석 팀 혹은 IT 운영 팀의 관리자들을 대상으로 한다. MLOps가 새로운 영역이라는 점을 감안하여 조직적 이슈부터 기술적 이슈까지 모두 다루어 MLOps 환경을 성공적으로 구축하기 위한 가이드로 삼을 수 있도록 하였다.

이 책의 구성 이 책은 크게 3부로 구성되어 있다.

1부: MLOps 개념과 필요성 2부: MLOps 적용 방법 3부: MLOps 실제 사례

9

서문

1부에서는 MLOps라는 주제를 전반적으로 소개한다. MLOps가 어떻게 그리고 어떤 이유에 서 원칙discipline이 되었는지, MLOps를 성공적으로 실행하려면 어떤 사람들이 MLOps에 참여 해야 하는지, 그리고 어떤 구성 요소가 있는지를 설명하였다.

2부는 머신러닝 모델 생애주기에 맞춰 모델 개발, 상용화 준비, 상용 환경 배포, 모니터링과 피 드백 루프, 모델 거버넌스Governance 등의 순서로 구성하였다. 각 장에서는 일반적인 고려 사항과 함께 MLOps 관련 고려 사항을 다루었다. 특히, 1부 3장에서 가볍게 소개한 주제들을 상세하 게 설명한다.

3부에서는 오늘날 기업에서 운영하는 MLOps의 모습에 대한 실질적 예시를 제공하여, 독자들 이 실제 구축 형태와 그 의미를 이해할 수 있도록 하였다. 등장하는 회사명은 모두 가명이지만, 모든 사례는 실제 기업에서 MLOps와 모델 관리에 대해 겪고 있는 경험을 바탕으로 구성하였 다.

10

감사의 말

이 책을 쓰는 동안 초안부터 완성에 이르기까지 지원을 아끼지 않은 데이터이쿠에 감사드린다. 책 집필은 팀 활동의 결실이며, 수많은 사람과 팀들 간의 근본적인 협력에 기반하였다. 이 책을 쓰기 시작할 때부터 저자들의 비전을 지원해주신 모든 분에게 감사드린다. 또한 집필 과 편집에 도움을 주신 분들께도 감사드린다. 계속해서 책을 쓰도록 압박을 준, 너무나 솔직한 피드백을 주신 분들께도 감사드린다. 가까이서 응원해주신 분들과 세상에 책을 알리는 데 도움 을 주신 분들께도 감사드린다.

11

CONTENTS



PART



추천사 ..........................................................................................................................

4



지은이·옮긴이 소개 .......................................................................................................

5



옮긴이의 말 ...................................................................................................................

8



서문 .............................................................................................................................

9



감사의 말 ....................................................................................................................

11

1 MLOps 개념과 필요성

CHAPTER

1 왜 지금이고 도전 과제는 무엇인가



1.1 MLOps와 도전 과제 정의하기 ....................................................................................... 22



1.2 리스크를 경감하기 위한 MLOps .................................................................................... 26





1.2.1 리스크 평가 ..................................................................................................... 26





1.2.2 리스크 경감 ..................................................................................................... 27





1.2.3 책임 있는 AI를 위한 MLOps .............................................................................. 28



1.3 확장을 위한 MLOps .................................................................................................... 29



1.4 마치며 ...................................................................................................................... 30

CHAPTER

2 MLOps 이해관계자들



2.1 직무 전문가 ................................................................................................................ 33



2.2 데이터 과학자 ............................................................................................................. 35



2.3 데이터 엔지니어 .......................................................................................................... 37



2.4 소프트웨어 엔지니어 .................................................................................................... 38



2.5 DevOps ................................................................................................................... 39



2.6 모델 리스크 관리자/감리인 ........................................................................................... 39

12



2.7 머신러닝 아키텍트 ....................................................................................................... 40



2.8 마치며 ...................................................................................................................... 41

CHAPTER

3 MLOps의 핵심 기능



3.1 머신러닝 입문 ............................................................................................................. 43



3.2 모델 개발 ................................................................................................................... 44





3.2.1 비즈니스 목표 수립 ........................................................................................... 44





3.2.2 데이터 소스 및 탐색적 데이터 분석 ...................................................................... 45





3.2.3 특성 엔지니어링 및 특성 선택 ............................................................................. 46





3.2.4 학습 및 평가 .................................................................................................... 46





3.2.5 재현 가능성 ..................................................................................................... 47





3.2.6 책임 있는 AI .................................................................................................... 47



3.3 제품화 및 배포 ............................................................................................................ 48





3.3.1 모델 배포 유형과 내용 ....................................................................................... 48





3.3.2 모델 배포 요구사항 ........................................................................................... 50



3.4 모니터링 .................................................................................................................... 51





3.4.1 DevOps의 관심사 ............................................................................................ 51





3.4.2 데이터 과학자의 관심사 ..................................................................................... 51





3.4.3 비즈니스 관심사 ............................................................................................... 53



3.5 반복 및 생애주기 ......................................................................................................... 54





3.5.1 반복 ............................................................................................................... 54





3.5.2 피드백 루프 ..................................................................................................... 55



3.6 거버넌스 .................................................................................................................... 57





3.6.1 데이터 거버넌스 ............................................................................................... 59





3.6.2 프로세스 거버넌스 ............................................................................................ 60



3.7 마치며 ...................................................................................................................... 61

13

CONTENTS

PART

2 MLOps 적용 방법

CHAPTER

4 모델 개발



4.1 머신러닝 모델이란? ..................................................................................................... 66





4.1.1 이론적으로는 ................................................................................................... 66





4.1.2 실제로는 ......................................................................................................... 67





4.1.3 필수 구성 요소 ................................................................................................. 68





4.1.4 머신러닝 알고리즘에 따른 MLOps의 도전 과제 ..................................................... 69



4.2 데이터 탐색 ................................................................................................................ 71



4.3 특성 엔지니어링 및 특성 선택 ........................................................................................ 72





4.3.1 특성 엔지니어링 기법 ........................................................................................ 72





4.3.2 특성 선택이 MLOps 전략에 미치는 영향 .............................................................. 74



4.4 실험 ......................................................................................................................... 75



4.5 모델 평가 및 비교 ........................................................................................................ 77





4.5.1 평가 지표 선택하기 ........................................................................................... 77





4.5.2 모델 작동의 교차 확인 ....................................................................................... 79





4.5.3 책임 있는 AI가 모델에 주는 영향 ......................................................................... 80



4.6 버전 관리 및 재현 가능성 .............................................................................................. 83



4.7 마치며 ..................................................................................................................... 85

CHAPTER

5 상용화 준비



5.1 실행 환경 ................................................................................................................... 88





5.1.1 개발 환경에서 상용 환경으로 옮겨 적용하기 ........................................................... 88





5.1.2 검증 및 상용 배포 전 데이터 접근 권한 .................................................................. 90





5.1.3 실행 환경에 대한 최종 의견 ................................................................................ 90

14



5.2 모델 리스크 평가 ......................................................................................................... 91





5.2.1 모델 검증의 목적 .............................................................................................. 91





5.2.2 머신러닝 모델 리스크의 근원 .............................................................................. 92



5.3 머신러닝에 대한 품질 검증 ............................................................................................ 93



5.4 테스트에 대한 핵심 고려 사항 ........................................................................................ 94



5.5 재현 가능성과 감사 가능성 ............................................................................................ 95



5.6 머신러닝 보안 ............................................................................................................. 96





5.6.1 적대적 공격 ..................................................................................................... 96





5.6.2 다른 취약점들 .................................................................................................. 98



5.7 모델 리스크 경감 ......................................................................................................... 99





5.7.1 환경 변화 ........................................................................................................ 99





5.7.2 모델 간 상호작용 ........................................................................................... 100





5.7.3 모델의 잘못된 작동 ........................................................................................ 101



5.8 마치며 .................................................................................................................... 102

CHAPTER

6 상용 배포

6.1 CI/CD 파이프라인 ................................................................................................... 104 6.2 머신러닝 아티팩트 개발 ............................................................................................. 105



6.2.1 머신러닝 아티팩트의 개념 ............................................................................... 105





6.2.2 테스트용 파이프라인 ...................................................................................... 106

6.3 배포 전략 ................................................................................................................ 107



6.3.1 모델 배포의 종류 ........................................................................................... 108





6.3.2 모델 상용 배포 시 고려 사항 ............................................................................ 109





6.3.3 상용 환경의 유지보수 ..................................................................................... 110

6.4 컨테이너화 .............................................................................................................. 111 6.5 배포 확장 ................................................................................................................ 112 6.6 요구사항과 도전 과제 ................................................................................................ 114 6.7 마치며 ................................................................................................................... 115 15

CONTENTS

CHAPTER

7 모니터링과 피드백 루프

7.1 모델을 얼마나 자주 재학습시켜야 할까? ....................................................................... 118 7.2 모델 성능 저하 ......................................................................................................... 121



7.2.1 실측 데이터 평가 ........................................................................................... 122





7.2.2 입력값 드리프트 감지 ..................................................................................... 124

7.3 드리프트 감지 .......................................................................................................... 125



7.3.1 데이터 드리프트의 원인에 대한 예시 ................................................................. 125





7.3.2 입력값 드리프트 감지 기법 .............................................................................. 126

7.4 피드백 루프 ............................................................................................................. 128



7.4.1 로깅 ............................................................................................................ 129





7.4.2 모델 평가 ..................................................................................................... 130





7.4.3 온라인 평가 .................................................................................................. 133

7.5 마치며 ...................................................................................................................... 137

CHAPTER



8 모델 거버넌스 8.1 조직에 어떤 거버넌스가 필요한지 누가 결정하는가? ........................................................ 139

8.2 리스크 수준에 거버넌스 맞추기 ................................................................................... 141 8.3 MLOps 거버넌스를 주도하는 현행 규정 ....................................................................... 143



8.3.1 미국의 제약 관련 규정: GxP ............................................................................ 143





8.3.2 재무 모델의 리스크 관리에 대한 규정 ................................................................ 144





8.3.3 GDPR과 CCPA의 데이터 개인 정보 보호 규정 .................................................. 145

8.4 AI 관련 규정의 최신 동향 ........................................................................................... 146 8.5 책임 있는 AI의 등장 .................................................................................................. 148 8.6 책임 있는 AI의 핵심 요소 ........................................................................................... 149

16



8.6.1 핵심 요소 1: 데이터 ........................................................................................ 149





8.6.2 핵심 요소 2: 편향 ........................................................................................... 149





8.6.3 핵심 요소 3: 포괄성 ........................................................................................ 151





8.6.4 핵심 요소 4: 확장적인 모델 관리 ....................................................................... 152





8.6.5 핵심 요소 5: 거버넌스 ..................................................................................... 152

8.7 MLOps 거버넌스 템플릿 ........................................................................................... 153 8.8 마치며 .................................................................................................................... 163

PART

3 MLOps 실제 사례

CHAPTER

9 소비자 신용 리스크 관리

9.1 배경: 비즈니스 활용 사례 ........................................................................................... 167 9.2 모델 개발 ................................................................................................................ 168 9.3 모델 편향성에 대한 고려 사항 ..................................................................................... 169 9.4 상용화 준비 ............................................................................................................. 170 9.5 상용 배포 ................................................................................................................ 171 9.6 마치며 ................................................................................................................... 172

CHAPTER

10 마케팅 추천 엔진

10.1 추천 엔진의 반란 ...................................................................................................... 173



10.1.1 머신러닝의 역할 ............................................................................................ 174





10.1.2 밀어 넣느냐, 당겨 오느냐? ............................................................................... 174

10.2 데이터 준비 ............................................................................................................. 175 10.3 실험 설계 및 관리 ..................................................................................................... 176 10.4 모델 학습 및 배포 ..................................................................................................... 177

17

CONTENTS





10.4.1 확장성과 커스터마이징 가능성 ......................................................................... 178





10.4.2 모니터링 및 재학습 전략 ................................................................................. 179





10.4.3 실시간 스코어링 ............................................................................................ 179





10.4.4 추천을 켜고 끄는 기능 .................................................................................... 179

10.5 파이프라인 구조와 배포 전략 ...................................................................................... 180 10.6 모니터링과 피드백 .................................................................................................... 181



10.6.1 모델 재학습 .................................................................................................. 181





10.6.2 모델 업데이트하기 ......................................................................................... 182





10.6.3 밤새 실행하고, 낮에는 자기 .............................................................................. 182





10.6.4 모델을 수동으로 제어하는 경우 ........................................................................ 183





10.6.5 모델을 자동으로 제어하는 경우 ........................................................................ 183





10.6.6 성능 모니터링 ............................................................................................... 184

10.7 마치며 ................................................................................................................... 185

CHAPTER

11 소비 예측

11.1 전력 시스템 ............................................................................................................. 187 11.2 데이터 수집 ............................................................................................................. 189

11.3 문제 정의: 머신러닝인가, 머신러닝이 아닌가? ................................................................ 191



11.4 공간 및 시간 해상도 .................................................................................................. 192



11.5 구현 ....................................................................................................................... 193



11.6 모델링 .................................................................................................................... 194



11.7 배포 ....................................................................................................................... 196



11.8 모니터링 ................................................................................................................. 197



11.9 마치며 .................................................................................................................... 198



찾아보기 ..........................................................................................................................

18

199

PART

1

MLOps 개념과 필요성

PART 1

MLOps 개념과 필요성

1장

왜 지금이고 도전 과제는 무엇인가

2장

 LOps 이해관계자들 M

3장

MLOps의 핵심 기능

CHAPTER

1

왜 지금이고 도전 과제는 무엇인가

머신러닝 운영Machine Learning Operations(MLOps, 이하 동일)은 기업의 성공적인 데이터 사이언스 프로젝트에서 필수 요소가 되어가고 있다. 즉, 조직과 비즈니스 리더들이 장기적 가치를 창출 하고 데이터 사이언스, 머신러닝 및 AI를 주도할 때 리스크Risk를 제거하는 데 도움이 되는 프로 세스다. MLOps가 다소 새로운 개념임에도 불구하고 데이터 사이언스의 대표 어휘 중 하나로 간주되어 큰 관심을 받고 있는 이유는 무엇인가? 이번 장에서 MLOps의 추상적 개념과 도전 과제, 기업의 성공적 데이터 사이언스 전략에서 MLOps가 핵심인 이유를 알아보고, 가장 중요 한 내용으로서 최근에 MLOps가 뜨겁게 부상한 이유에 대해 살펴보겠다. MLOps, ModelOps, AIOps MLOps(혹은 ModelOps)는 다소 새로운 원칙discipline으로서, 2018년 후반부터 2019년 사이에 부각되기 시작하였다. 이 책을 쓰는 시점에 두 용어 MLOps와 ModelOps가 많은 경우 같은 의 미로 사용되고 있다. 하지만 일부의 주장에 따르면 ModelOps는 머신러닝 모델뿐만 아니라 다 른 종류의 모델(예를 들면, 룰 기반 모델)도 포함하므로 MLOps보다 더 포괄적이다. 이 책은 머 신러닝 모델의 생애주기를 다루므로 ‘MLOps’라는 용어를 사용하겠다.

AIOps는 때로 MLOps와 혼동될 수 있으나 완전히 다른 주제다. AIOps는 인공지능Artificial 을 활용하여 운영상의 다양한 도전 과제를 해결하는 절차다. 즉, DevOps를 위한 AI로,

Intelligence

예를 들면 네트워크 장애가 발생하기 전에 DevOps 팀에 발생 가능성을 미리 주지시키는 네트 워크 장애 예측 점검이 있다. AIOps는 상당히 중요하고 흥미로운 주제이지만 이 책의 범위를 벗 어나므로 다루지 않는다.

1장 왜 지금이고 도전 과제는 무엇인가

21

시간에 따른 관심도

2004-1-1

2014-9-1

그림 1-1 MLOps의 급격한 성장( ‘ModelOps’ 개념 미포함)

1.1 MLOps와 도전 과제 정의하기 MLOps의 핵심은 머신러닝 모델 생애주기 관리의 표준화 및 간소화다(그림 1-2). 그런데 왜 머신러닝 모델 생애주기를 간소화해야 할까? 비즈니스 요구사항에서 머신러닝 모델의 개발 과 정을 대략 살펴보기만 해도 그 이유를 명확히 알 수 있다. 대부분의 전통적 조직에서 여러 머신러닝 모델의 개발과 그 모델들의 상용 환경 배포는 비교적 새로운 업무에 속한다. 최근까지만 해도 적은 수의 모델만 관리 가능했고, 전사 차원에서는 모 델들과 비즈니스 연관도에 대해 이해하는 일에 관심이 거의 없었다. 그런데 의사결정을 자동화 하기 시작하면서(의사결정 자동화를 도입하는 기업이 늘어나고 있다) 모델은 기업 전략의 핵 심 사항 중 하나가 되었고 그와 동시에 모델 리스크 관리가 중요한 과제 중 하나가 되었다. 기업 환경에서 머신러닝 모델 생애주기의 현실은 요구사항과 활용 도구 측면에서 보면 매우 복 잡하다(그림 1-3).

22

1부 MLOps 개념과 필요성

반복

비즈니스 목표 정의

간단한 머신러닝 모델 생애주기 머신러닝 모델 배포

데이터에 대한 접근, 이해, 정리

머신러닝 모델 생성 그림 1-2 머신러닝 모델 생애주기에 대한 간략한 표현: [그림 1-3]에 비해 MLOps의 필요성이 잘 드러나지 않는다.

머신러닝 모델 생애주기를 규모 있게 관리하기 어려운 세 가지 주요 이유는 다음과 같다. 많은 의존성: 데이터는 지속적으로 변화하고, 비즈니스 요구사항도 변경된다. 모델의 결과를 지속적으로 비즈



니스에 반영하여, 상용 배포한 모델과 실제 데이터가 요구사항에 부합하도록 하면서 동시에 원래의 문제를 해 결하거나 원래의 목표를 달성하도록 해야 한다. 동일한 언어를 사용하지 않는 이해관계자들: 머신러닝 모델 생애주기에는 사업 담당자, 데이터 과학자, IT 개



발/운영 팀이 모두 관련되어 있지만, 대부분의 경우 상호 소통의 기준이 될 수 있는 동일한 도구 사용이나 기반 기술 공유가 이루어지지 않는다. 소프트웨어 개발을 모르는 데이터 과학자: 대부분의 데이터 과학자는 모델 구축 혹은 평가에 특화된 전문적 지



식과 경력을 가지고 있으며, 애플리케이션 작성에는 능숙하지 않다. 시간이 흐름에 따라 일부 데이터 과학자는 모델 배포나 운영에 능숙해지기도 하지만, 상당수 데이터 과학자들은 여러 가지 역할을 맡게 되면 그 어떤 것 도 완전하게 수행하지 못한다. 이렇게 제한된 업무만 수행하는 데이터 과학자들은 운영해야 하는 모델이 늘어 날수록 더 심각한 문제에 봉착한다. 그렇다고 데이터 팀의 구성원을 순환 배치하면 문제는 더 복잡해져서, 어 느 순간 데이터 과학자들은 자신이 만들지 않은 모델을 관리해야 하는 상황에 직면하게 된다.

1장 왜 지금이고 도전 과제는 무엇인가

23

데이터 과학자

데이터 엔지니어

데이터 수집

특성 엔지니어링

데이터 준비

직무 전문가

모델 학습 및 실험

사업 부서

비즈니스 질의

모델 개발

모델 평가 및 비교

직무 전문가

실행 환경

탄력적 확장

리스크 평가

컨테이너화

로깅 및 경고 입력값 드리프트 추적 성능 드리프트

품질 보장

CI/CD

온라인 평가

상용화 준비

개발에서 상용으로

모니터링과 피드백 루프

데이터 엔지니어 소프트웨어 엔지니어 머신러닝 아키텍트

데이터 엔지니어

DevOps

데이터 과학자

DevOps

그림 1-3 오늘날 일반적인 조직 내 머신러닝 모델 생애주기에 대한 사실적 도식화: 완전히 다른 기술과 완전히 다른 도 구를 사용하는 다양한 사람들이 참여한다.

MLOps라는 이름과 개념이 익숙하다고 느낄 수 있는데, 그 이유는 MLOps의 많은 부분을 DevOps의 개념에서 차용했기 때문이다. DevOps는 소프트웨어 변경 및 갱신 작업을 간소 화하는 과정이기도 하다. MLOps와 DevOps에는 상당한 공통점이 있는데, 예를 들면 다음과 같다. 팀들을 이어주는 견고한 자동화와 신뢰



24

1부 MLOps 개념과 필요성

팀 간 협업과 의사소통 강화에 대한 아이디어



서비스 생애주기의 처음부터 끝까지 개발(build), 테스트(test), 출시(release)



지속적 전달(Continuous Delivery, CD)과 품질 검증 간의 우선순위 조정



하지만 MLOps와 DevOps 사이에는 결정적인 차이점이 하나 있어서 DevOps 담당자를 데 이터 사이언스 팀으로 즉시 전환 배치할 수 없다. 소프트웨어 코드를 상용 배포하는 것과 머신 러닝 모델을 상용 배포하는 것은 근본적인 부분에서 차이가 있다. 소프트웨어 코드는 비교적 정적이지만(최근 SaaSSoftware-as-a-Service 회사에서는 DevOps 팀에서 하루에도 몇 번씩 빠르고 반복적으로 배포하기 때문에 ‘비교적’이라는 표현을 썼다), 데이터는 항상 변화한다. 즉, 머신 러닝 모델은 지속적으로(물론 일시적인 경우도 있기는 하다) 학습하고 새로운 입력에 적응한 다. 이처럼 머신러닝 모델이 코드와 데이터를 모두 포함한다는 점을 비롯한 여러 환경적 복잡 성으로 인해 MLOps는 새롭고 독특한 원칙이 되었다. DataOps는 어떤가? DevOps에 비해 MLOps가 복잡하다는 비교에서 한발 더 나아가, 2014년 IBM이 소개한 DataOps를 살펴보자. DataOps는 빠르게 활용 가능한, 비즈니스에 적합한 데이터를 찾는 방 법론으로 데이터 품질과 메타데이터 관리에 초점을 맞추고 있다. 예를 들어, 모델이 의존하는 데 이터에 갑작스러운 변경이 생기면, DataOps 시스템은 사업 담당 팀에 알려 데이터에서 얻는 최 신 통찰Insight을 더 주의 깊게 활용하도록 한다. 또한 데이터 팀에도 알려 변경 내용을 조사하거나 라이브러리 업그레이드를 되돌리고 관련 부분을 재개발할 수 있도록 한다. 즉, MLOps는 DataOps와 일부 겹치는 부분이 있을 수 있지만 MLOps가 더 깊은 부분까지 다 룬다. 또한 MLOps에는 추가된 핵심 기능들이 있어 더욱 견고하다. 이와 관련한 상세한 내용은

3장에서 다룬다.

DevOps나 DataOps에서 있었던 사례들과 마찬가지로, 최근까지 데이터 사이언스 팀들은 사 업적 기준에서 볼 때 다수의 머신러닝 모델을 상용 배포할 필요가 없었기 때문에 프로세스를 정의하고 관리하지 않아도 되었다. 하지만 이제 상황이 크게 바뀌고 있다. 지금은 다수의 머신 러닝 모델을 상용 배포하기 위해, 여러 단계 및 형태로 이루어진 데다 너무 많은 규칙을 포함하 고 있는 프로세스를 표준화해야 한다. 이를 위해 데이터 사이언스 팀들은 MLOps 성공 사례를 기반으로 구축된 프레임워크를 활용하는 시도를 하고 있다. 이 책의 2부인 ‘MLOps 적용 방법’ 에서 이에 관한 내용을 다루겠다.

1장 왜 지금이고 도전 과제는 무엇인가

25

1.2 리스크를 경감하기 위한 MLOps 상용 배포한 모델이 하나밖에 없는 팀이라 해도 MLOps는 매우 중요하다. 왜냐하면 모델에 따 라 정도의 차이는 있더라도 지속적인 성능 모니터링과 조정이 운영에 필수적인데, MLOps가 바로 이러한 것들을 안전하고 신뢰할 수 있게 수행하도록 보장해주고 머신러닝 모델 활용으로 인한 리스크를 경감해주기 때문이다. 하지만 MLOps 실천 사례를 실현하기 위해서는 비용이 필요하므로, 실천 사례별로 비용 대비 효용성 평가를 수행해야 한다.

1.2.1 리스크 평가 머신러닝 모델의 리스크는 매우 다양하다. 예를 들어 고객에게 마케팅 혜택을 한 달에 한 번 추 천하는 추천엔진의 리스크는 여행 사이트의 가격과 매출을 책임지는 머신러닝 모델의 리스크 보다 낮다. 따라서 MLOps를 리스크를 경감하기 위한 방안으로써 검토할 때 아래와 같은 사항 을 분석해야 한다. 특정 기간 동안 모델을 사용할 수 없는 리스크



특정 표본에 대해 잘못된 예측을 반환하는 리스크



시간이 지남에 따라 모델 정확도나 공정성이 떨어지는 리스크



모델을 유지보수하기 위한 기술(즉, 데이터 사이언스 관련 인재)이 손실될 리스크



광범위하게 배포되고 조직 외부에서도 사용되는 모델이라면 리스크가 더 크다. [그림 1-4] 에서 볼 수 있듯이 리스크 평가 Risk Assessment의 기준은 보통 두 가지로서, 리스크의 발생 확률 probability mitigation

과 영향도impact다. 이 두 가지 조합이 바로 리스크의 심각도severity로서, 리스크 경감

수준을 측정할 때도 이 두 가지를 조합하여 사용한다. 모델을 초기에 의도한 바와 다르

게 사용할 수도 있기 때문에 리스크 평가는 프로젝트를 시작할 때뿐만 아니라 정기적으로 수행 해야 한다.

26

1부 MLOps 개념과 필요성

발생 확률

5×5 리스크 매트릭스 가능성 매우 높음

5 보통

10 중대

15 중대

20 심각

25 심각

가능성 높음

4 보통

8 보통

12 중대

16 중대

20 심각

가능함

3 가벼움

6 보통

9 보통

12 중대

15 중대

가능성 낮음

2 가벼움

4 보통

6 보통

8 보통

10 중대

드뭄

1 가벼움

2 가벼움

3 가벼움

5 보통

6 보통

중간

높음

매우 높음

매우 낮음

로깅 및 경고 낮음

영향도 그림 1-4 의사결정자에게 정량적 리스크 분석을 지원하는 표

1.2.2 리스크 경감 중앙 통제 팀(내부 활동을 통합적으로 리포팅하는 팀을 뜻하며, 기업 내에 이러한 팀이 하나가 아닌 여럿이 있을 수 있다)에서 다수의 모델을 운영하는 경우 MLOps를 활용하면 리스크 경감 에 필수적인 척도들을 특히 더 잘 확인할 수 있다. 즉, 적절한 리스크 경감 방안을 선택할 수 있 도록 표준화해야만 여러 모델의 상태를 전체적으로 관찰할 수 있다. 이와 관련한 상세한 내용 은 8.2절에서 다룬다. 여러가지 이유로 MLOps 인프라 없이 머신러닝 모델을 상용 환경에 바로 배포하는 것이 위험 하기는 하지만, 머신러닝 모델의 성능을 상용 환경에서만 평가할 수 있는 경우가 많다. 왜 그럴 까? 예측 Prediction 모델은 학습한 데이터의 품질이 곧 모델의 품질이기 때문이다. 즉, 학습 데이 터가 상용 환경을 충분히 반영하지 않았다면 모델은 상용 환경에서 좋은 성능을 보일 수 없다. 또한 상용 환경이 바뀌면 모델의 성능이 급격히 저하되는 경우도 많다. 이와 관련한 상세한 내 용은 5장에서 다룬다.

1장 왜 지금이고 도전 과제는 무엇인가

27

PART 2

MLOps 적용 방법

4장

모델 개발

5장

상용화 준비

6장

상용 배포

7장

모니터링과 피드백 루프

8장

모델 거버넌스

CHAPTER

4

모델 개발

MLOps를 진지하게 받아들이려고 한다면 적어도 모델 개발 프로세스를 간략하게나마 이해해 야 한다. [그림 4-1]을 보면 큰 범위에서 머신러닝 모델 생애주기를 단계별로 확인할 수 있다. 상황에 따라 모델 개발 프로세스는 매우 간단할 수도 있고 엄청나게 복잡할 수도 있다. 또한 개 발 이후에 모델의 사용법, 모니터링, 유지보수에 대한 제약도 천차만별이다.

모델 개발 ·데이터 탐색 ·특성 엔지니어링 및 특성 선택 ·실험

학습

모델 평가 및 비교

후보 모델

데이터

상용화 준비

상용 배포

모니터링과 피드백 루프

선택된 모델 성능 지표 및 문서화

그림 4-1 머신러닝 모델 생애주기 내의 모델 개발

그림을 보면 데이터 수집 프로세스가 모델의 남은 생애주기에 끼치는 영향은 명확하다. 데이터 수집 상태에 따라 모델이 얼마나 쉽게 부실화될 수 있는지 바로 확인할 수 있다. 다른 프로세스 는 영향을 덜 끼치는 편이다. 예를 들어, 특성 엔지니어링 및 특성 선택 단계를 보면, 날짜 데이터만 있어 모델에 날짜만 입

4장 모델 개발

65

력하는 경우와 날짜별 공휴일 여부 데이터도 있어 날짜와 공휴일 여부 플래그flag를 같이 입력하 는 경우 사이에 성능상으로 큰 차이가 있을 수 있다. 혹은 모델을 평가하고 비교하기 위한 지표 에 따라 모델의 버전을 자동으로 변경하며 최고의 모델을 찾아가는 절차는 데이터 수집 프로세 스의 수준에 따라 불가능할 수도 있다. 이러한 부분들을 확인하기 위해 이번 장에서는 모델 개발의 기초, 특히 MLOps 관점에서

MLOps 프로세스 전체를 용이하게 진행하기 위한 고려 사항에 맞춰 머신러닝 모델을 개발하 는 방법에 대해 살펴본다.

4.1 머신러닝 모델이란? 머신러닝 모델은 학계와 현실 세계(즉, 비즈니스) 양쪽에서 활용된다. 따라서 모델이 이론적 으로 표현하고자 한 것과 모델을 실제로 구현한 방법을 구분해야 한다. 3장을 기반으로 양쪽의 관점을 각각 살펴보겠다.

4.1.1 이론적으로는 머신러닝 모델은 현실의 반영이다. 즉, 현실의 물건 혹은 프로세스의 어떤 면모를 부분적으로 혹은 대략적으로 표현한 것이다. 여기서 어떤 면모를 표현할 것인가는 사용 가능성과 유용성에 따라 달라진다. 머신러닝 모델은 학습시키고 나면 수학 공식으로 집약되고, 입력값을 넣으면 결과를 출력한다. 결과의 예시로 어떤 이벤트가 발생할 확률을 추정하거나 원시 값에 대한 추 정값을 계산하는 것 등을 들 수 있다. 머신러닝 모델은 통계 이론을 기반으로 하며, 머신러닝 알고리즘은 학습 데이터를 사용해 모델 을 구축하는 도구다. 즉, 머신러닝 모델과 알고리즘의 목표는 주어진 데이터로부터 어떤 합성 된 표현을 도출하는 것이고, 이때 주어지는 데이터는 수집 시점의 현실 세계를 표현한다. 결국, 머신러닝 모델은 미래가 과거와 유사할 것으로 예상되는 경우에 합성된 표현이 유효하므로 예 측에 활용할 수 있다.

66

2부 MLOps 적용 방법

일반화 능력 머신러닝 모델의 입력 데이터가 학습 데이터와 유사한 형태가 아니어도 정확하게 예측하는 능력 을 일반화 능력Generalization Capacity이라 한다. 예를 들어, 모델의 학습 데이터 세트가 얼룩말이 아닌 말만 포함하고 있더라도, 모델이 예측 시에 얼룩말을 구분하는 능력이다.1 모델에 확률 분포에 따른 예측을 포함하면, 이런 놀라운 일반화 능력을 구현할 수 있다.

머신러닝 모델이 예측하고 일반화 generalize하는 방법과 관련하여 흔히 드는 예시는 집값이다. 물 론 집값은 매우 많은 요소에 영향을 받기 때문에 정확한 모델을 만들기 어렵다. 하지만 쓸 만한 정도로 근접한 가격은 어렵지 않게 예측할 수 있다. 모델에 대한 입력 데이터는 면적, 침실과 화장실의 수, 건축 연도, 위치 등 직접적으로 연관된 정보일 수도 있고, 주변 환경이나 거래량 같은 간접적인 정보일 수도 있다. 이력 데이터가 충분히 많고 시장 상황이 급변하지 않는다면, 알고리즘을 통해 합리적으로 추정할 수 있는 수식을 만들어낼 수 있다. 자주 사용되는 또 다른 예시로 건강 진단이나 특정 기간 내에 특정 질병이 누군가에게 발병할 것이라는 예측이 있다. 이런 종류의 분류 모델classification model은 어떤 이벤트의 발생 확률을 예측 할 수 있고, 예측 결과에 신뢰 구간까지 포함할 수도 있다.

4.1.2 실제로는 모델은 수식을 구성하고 활용하기 위해 필요한 매개변수들의 집합이다. 또한 모델은 보통 무상 태적stateless이자 결정론적deterministic이다. 즉, 동일한 입력값을 전달하면 동일한 출력값을 반환한 다. 물론 예외적인 경우도 있다. 상세한 내용은 7장의 ‘온라인 학습’ 단락에서 확인한다. 이 매개변수는 대개 최종 수식의 매개변수를 일컫지만, 모델 즉 최종 수식에 입력하기 위해 입 력 데이터를 변환해야 하는 경우 그 변환 자체도 매개변수 중 하나로 포함한다. 변환에는 입력 값에서 도출한 값뿐만 아니라 파생된 데이터(예를 들어, 분류classification 혹은 결정decision)도 포함 한다. 실제 업무에서는 결국 모델이 머신러닝 기반인지 아닌지에 따른 차이가 없다. 모델은 단 지 한 번에 한 행씩 입력 데이터를 입력받는 계산용 수학 함수일 뿐이다. 1 CycleGAN은 GAN(Generative Adversarial Networks) 모델의 일종으로, 학습 데이터에 서로 다른 도메인 혹은 스타일의 이미지 데이터 쌍이 없더라도 어떤 이미지에서 전혀 다른 도메인 혹은 스타일의 이미지로 변환하는 모델이다. Jun-Yan Zhu, Taesung Park, Phillip Isola and Alexei A. Efros에 의한 최근의 연구를 구현한 것이다(https://oreil.ly/7A_qd ).

4장 모델 개발

67

예를 들어, 집값의 사례에서 모든 지역에 대해 정확한 모델을 얻으려고 모든 우편번호에 해당 하는 가격 정보를 완전히 모으는 방식은 데이터가 너무 많아 현실적이지 않다. 우편번호 대신 가격에 영향이 큰 파생 데이터를 활용하는 편이 낫다. 예를 들어, 거주자의 평균 수익, 인구 밀 도, 편의시설에 대한 접근성 같은 파생 데이터를 활용할 수 있다. 하지만 최종 사용자는 이런 파생 데이터를 직접 입력하지 않고 우편번호를 입력할 것이므로, 우편번호에서 파생 데이터를 도출하는 변환도 가격 예측 모델의 일부가 된다. 출력값 또한 단순한 하나의 숫자가 아닐 수 있다. 예를 들어, 이상 거래 탐지 시스템의 경우 모 아니면 도 형태의 답이 아니라 어떤 확률을 반환할 것이다. 경우에 따라 신뢰 구간도 같이 반환 할 수 있다. 사기가 수용 가능한 수준인지 혹은 이후의 검증 결과나 거래 거부에 따른 비용인지 를 고려하여 결정한 임곗값에 반환된 확률이 도달하면 사기로 판정할 수도 있다. 그 외에 모델 이 추천이나 의사결정을 반환하는 경우도 있다. 즉, 방문객이 최대한 지출하도록 하는 제품이 무엇인지 반환하거나 회복 가능성이 가장 높은 치료 방법을 반환할 수도 있다. 이런 모든 변환과 관련 데이터가 모델의 일부다. 하지만 그렇다고 해서 항상 하나의 패키지에 전부 넣어 단 하나의 아티팩트로 컴파일하지는 않는다. 하나로 묶으면 빠르게 다루기 힘들 수 있고, 어떤 것은 제약이 있어 하나로 묶기 어려울 수도 있다. 예를 들어, 서로 다른 갱신 주기나 외부 소스 의존성 등이 제약이 될 수 있다.

4.1.3 필수 구성 요소 머신러닝 모델을 구축하려면 [표4-1]에서 설명하는 것과 같이 많은 구성 요소가 필요하다. 표 4-1 머신러닝 모델에 필요한 구성 요소 머신러닝 구성 요소 학습 데이터

설명 학습 데이터는 보통 예측하려는 목표에 맞춰 실제 사례들로 레이블링한다(지도 학습 (supervised learning)). 당연한 이야기지만, 좋은 학습 데이터가 중요하다. 좋지 않은 데이 터에 대한 사례로서, 2차 세계대전 기간에 총격을 받은 비행기 관련 데이터(https://oreil. ly/sssfA )를 들 수 있다. 생존자 편향( survivor bias), 즉 성공한 경우의 데이터만 포함하고

있어 좋지 않은 학습 데이터다.

68

2부 MLOps 적용 방법

성능 지표

성능 지표는 개발 중인 모델이 최적화되어야 할 방향이다. 의도치 않은 결과에 도달하지 않도 록 신중하게 선택해야 한다. 자칫 코브라 효과(Cobra Effect)(https://oreil.ly/DYOss ) 를 불러올 수 있다(코브라 효과는 유명한 일화로서, 사람들이 코브라 개체 수를 줄이려다 오히 려 코브라 수를 늘린 일에서 유래했다). 예를 들어, 데이터 중 95%가 클래스 A인 경우, 단순히 정확도만 성능 지표로 삼아 최적화하면 언제나 95%의 정확도로 A를 예측할 것이다.

머신러닝 알고리즘

다양한 모델이 존재하고 각각의 모델은 다양한 방법을 사용하며 저마다 장단점이 있다. 알고 리즘 중 어떤 것은 특정 작업에 적합하므로, 성능, 안정성, 해석 가능성, 컴퓨팅 비용과 같은 것 들 중 무엇을 더 중요하게 보느냐에 따라 선택을 달리할 수 있다.

하이퍼파라미터

하이퍼파라미터는 머신러닝 알고리즘에 대한 설정이다. 알고리즘은 기본적인 공식이고, 학습 하는 매개변수는 공식을 구성하는 연산과 피연산자이며, 하이퍼파라미터는 알고리즘이 이 매 개변수를 찾는 방법이다. 예를 들어, 의사결정 트리(데이터가 분기에 도달하면 하위집합에 가장 적합한 예측이 어느 것 이냐에 따라 데이터를 둘로 나눔)의 경우 하이퍼파라미터 중 하나가 트리의 깊이, 즉 분기의 개수다.

평가 데이터 세트

레이블링된 데이터 사용 시, 평가 데이터 세트는 학습 데이터와 달라야 하고, 모델이 처음 만나 는 데이터에 대해 어떤 성능을 보이는지(즉, 얼마나 일반화되어 있는지)를 평가해야 한다.

각 구성 요소의 목표 값과 복잡함으로 인해 좋은 MLOps를 만들기란 매우 어려운 일이다. 하 지만 복잡함은 여기에 그치지 않고 알고리즘으로 인해 가중된다.

4.1.4 머신러닝 알고리즘에 따른 MLOps의 도전 과제 머신러닝 알고리즘들의 공통점은 과거 데이터의 패턴을 모델링하여 추론한다는 점과 이러한 경험의 품질과 연관성이 알고리즘의 효과성을 결정하는 핵심 요소라는 점이다. 다른 점은 각 알고리즘의 스타일에 따라 특정한 성향을 띠며, MLOps에 각기 다른 도전 과제를 제시한다는 점이다. 관련 내용을 [표 4-2]에 요약하였다. 표 4-2 알고리즘 유형에 따른 MLOps 고려 사항 알고리즘 유형

이름

MLOps 고려 사항

선형(Linear)

선형 회귀(Linear regression)

과대적합(Overfitting) 경향이 있다.

로지스틱 회귀(Logistic regression)

과대적합 경향이 있다.

4장 모델 개발

69

트리 기반

의사결정 트리(Decision tree)

(Tree-based)

불안정할 수 있다. 데이터에 약간의 변화만 생겨도 최적인 의사결정 트리의 구조에 큰 변 화가 생길 수 있다.

랜덤 포레스트(Random forest)

예측 결과를 이해하기 힘들어, 책임 있는 AI 측면에서는 적합하지 않을 수 있다. 또한 예 측 결과 출력이 느릴 수 있어, 모델을 활용하 는 애플리케이션에 부담이 될 수 있다.

그래디언트 부스팅( Gradient boosting)

랜덤 포레스트와 같이, 예측 결과를 이해하기 어려울 수 있다. 또한 특성 혹은 학습 데이터 에 약간의 변화만 생겨도 모델에 급격한 변경 이 발생할 수 있다.

딥러닝

신경망(Neural network)

( Deep learning)

해석 가능성의 관점에서 딥러닝 모델은 거의 해석이 불가능하다. 신경망을 포함하여 딥러 닝 알고리즘은 학습에 엄청나게 많은 시간과 컴퓨팅 파워(그리고 데이터)가 들어간다. 그 정도 자원이 필요할지 혹은 더 간단한 모델로 도 목적을 달성할 수 있을지 확인해야 한다.

어떤 머신러닝 알고리즘은 특정 사례에 가장 적합할 수 있으나, 거버넌스를 고려하여 다른 알 고리즘을 선택할 수도 있다. 특히, 규제가 심한 환경에서 설명 가능한 의사결정을 내려야 하는 경우, 신경망처럼 불투명한 알고리즘을 선택할 수 없다. 대신 의사결정 트리와 같은 더 간단한 기법을 선호할 수밖에 없다. 또한 많은 경우 성능 관점에서 절충안을 찾기보다 비용 관점에서 절충안을 찾게 된다. 더 간단한 기법을 사용할 경우 더 복잡한 기법과 동일한 수준의 성능을 얻 기 위해 수작업으로 특성 엔지니어링을 수행해야 하는 경우가 많아 더 많은 비용이 들어갈 수 있기 때문이다.

컴퓨팅 파워 머신러닝 모델 개발의 구성 요소에 대해 논의할 때, 컴퓨팅 파워Computing Power를 빼놓을 수 없다. 어떤 사람들은 비행기가 인간의 독창성 때문에 날 수 있게 되었다고 말하지만, 많은 양의 연료 덕분이기도 하다. 머신러닝에서도 마찬가지다. 모델 개발도 컴퓨팅 파워에 반비례하여 단축될 수 있다.

20세기 초에 수작업으로 계산하여 만든 선형 회귀 모델부터 최근의 가장 거대한 딥러닝 모델에 이르기까지 새로운 알고리즘은 컴퓨팅 파워를 충분히 확보한 뒤에야 각광을 받았다. 예를 들어, 랜덤 포레스트나 그래디언트 부스팅과 같이 흔히 쓰이는 알고리즘도 20년 전 기준으로 보면 필

70

2부 MLOps 적용 방법

요한 컴퓨팅 파워가 너무나 컸다. 컴퓨팅 파워가 충분해진 덕택에 머신러닝 모델 개발에 드는 비용이 낮아져 많은 기업이 다양한 분야에서 머신러닝 모델을 활용할 수 있게 되었다. 물론 데이터에 드는 비용도 줄어들기는 했지 만, 데이터 비용은 머신러닝 모델의 저변 확대에 있어 첫 번째 요인이라 할 수 없다. 극히 일부 알고리즘만 빅데이터를 활용하고 있다. 여전히 대다수 모델은 많은 데이터를 필요로 하지 않아, 모든 학습 데이터를 메모리에 모두 적재한 채로도 작동 가능하다.

4.2 데이터 탐색 데이터 과학자나 분석가가 모델을 학습시키기 위한 데이터 소스를 검토할 때, 우선 데이터 형태 를 확인해야 한다. 아무리 좋은 알고리즘을 사용하는 모델이라 해도 모델의 성능은 학습 데이터 에 달려 있다. 이 단계에서 나타나는 많은 이슈로 인해 전체 데이터 혹은 데이터의 일부를 쓸 수 없게 될 수 있다. 예를 들어, 데이터의 불완전성, 부정확성, 불일치 등이 이슈가 될 수 있다. 다음은 데이터 탐색 과정의 예다. 데이터를 어떻게 수집했는지, 어떤 가정을 포함하는지를 문서화함



데이터 통계에 대한 요약 확인하기: 각 열은 어떤 영역에 속하는가? 값이 누락된 행이 있는가?



명백한 실수가 있는가? 정상적이지 않은 특잇값이 있는가? 특잇값이 전혀 없는가? 데이터의 분포를 상세히 확인함



정리, 채움, 변경, 필터링, 자르기, 표본추출 등



서로 다른 열 간 상관관계 확인, 일부 하위집합에 대한 통계적 테스트 수행, 분포 곡선 보간



데이터를 문헌상의 다른 데이터 혹은 모델과 비교하기: 없는 정보가 있는가?



데이터가 비슷하게 분산되어 있는가?

물론 이러한 탐색 과정에서 정보에 입각한 의사결정을 내리기 위해서는 비즈니스 영역에 대한 지식이 필요하다. 특정한 부분에 대한 통찰 없이는 데이터에서 특이 사항을 찾지 못할 수 있고, 어떤 가정들을 바탕으로 내린 결론에 대해서는 학습되지 않은 관점에서 이해하기 어려울 수 있 다. 산업용 센서 데이터가 좋은 예시가 될 수 있다. 데이터 과학자가 기계공학 분야 엔지니어나 기기 전문가가 아닌 이상, 어떤 기계에서 측정되는 값들을 정상값과 특잇값으로 구분할 수 없다.

4장 모델 개발

71

PART 3

MLOps 실제 사례

9장 소비자 신용 리스크 관리 10장 마케팅 추천 엔진 11장 소비 예측

CHAPTER

9

소비자 신용 리스크 관리

이 책의 마지막 3개 장에서는 MLOps가 실제로 어떻게 구현되는지에 대한 세 가지 예시를 살 펴보겠다. 각 예시는 머신러닝 관점에서 근본적으로 다른 사례에 속하며, MLOps 방법론이 비 즈니스 및 머신러닝 모델 생애주기에 따라 어떻게 달라지는지 설명하기 위해 선정하였다.

9.1 배경: 비즈니스 활용 사례 소비자가 대출을 요청하면 여신 기관은 대출 여부를 결정해야 한다. 경우에 따라 절차 중 자동 화된 부분이 다를 수 있다. 하지만 어떤 경우이든 계획대로 대출금이 상환될지 여부를 추정한 확률에서 도출한 점수를 바탕으로 대출 가능 여부 결과를 소비자에게 전달할 것이다. 점수는 프로세스의 여러 단계에서 일상적으로 사용된다. ●

사전 심사(prescreen) 단계에서 적은 수의 특성만으로 계산한 점수를 활용하여, 기관에서 일부 대출 신청을 빠르게 파기할 수 있다.



서명 단계에서는 필요한 모든 정보를 사용하여 점수를 계산해서, 결정을 내리기 위한 보다 정확한 근거를 얻 는다.



서명 단계 이후, 점수를 포트폴리오 내에서 대출과 관련된 리스크를 평가할 때 사용할 수 있다.

이러한 확률을 계산하기 위해 수십 년 전부터 다양한 분석 방법을 활용해왔다. 예를 들어,

9장 소비자 신용 리스크 관리

167

FICO 점수1는 미국에서 1995년부터 사용하였다. 이러한 예측 모델은 기관의 수익과 고객의 삶에 직접적으로 미치는 영향을 고려하여 늘 상당한 수준의 정밀 조사를 받아왔다. 즉 고도로 규제된 환경에서 프로세스, 방법, 기술을 정규화하여 모델의 지속 가능한 성능을 보장하였다. 모델이 전문가가 만든 규칙 기반이든, 고전적 통계 모델 기반이든, 최신 머신러닝 알고리즘 기반이든 상관없이 모두 유사한 규정을 준수해야 한다. 그래서 소비자 신용 리스크 관리를

MLOps의 선행 사례로 볼 수 있다. 이 활용 사례를 기반으로 모범 실천 사례뿐만 아니라 다른 활용 사례도 병행하여 분석할 수 있다. 일반적으로 신용도를 결정할 때 고객의 과거 상황과 현재 상황에 대한 정보를 활용할 수 있다. 고객의 신용도는 얼마인가? 고객이 대출금을 상환하지 않은 적이 있는가(여신 용어로, 연체자 인가)? 일부 국가에서는 신용국 credit bureau이라는 기관에서 이 정보를 수집하여 채권자가 직접 또는 점수의 형태로 이용할 수 있도록 한다(점수 형태의 예시로는 앞서 언급한 FICO 점수가 있다). 예측할 대상을 정의하는 것은 더 복잡하다. 고객이 예상대로 상환하지 않는 것은 신용 리스크 모델에 있어 ‘나쁜’ 결과다. 이론적으로 ‘좋은’ 결과라고 결정하려면 총액 상환을 기다려야 하고, ‘나쁜’ 결과라고 결정하려면 손해 배상 청구까지 가야 한다. 하지만 이러한 최종 결과를 얻기까 지 오랜 시간이 걸릴 수 있어, 변화에 대한 반응성을 떨어뜨릴 우려가 있다. 따라서 손실이 확 실해지기 전에 ‘나쁜’ 결과로 선언하기 위해 다양한 지표를 기반으로 하여 절충점을 찾는다.

9.2 모델 개발 역사적으로 신용 리스크 모델링은 규칙rule(현대 ML 전문 용어로 ‘수동 특성 엔지니어링manual ’이라고 한다)과 로지스틱 회귀의 혼합으로 구축하였다. 좋은 모델을 만들기 위해

feature enginieering

서는 전문가의 지식이 필수다. 각 변수의 영향과 변수 간의 상호작용을 연구하고 적응된 고객 세분화를 구축하려면 막대한 시간과 노력이 필요하다. 오프셋이 있는 2단계 모델, 트위디 분포 Tweedie distribution

에 기반한 고급 일반 선형 모델 또는 한쪽은 단조성monotonicity 제약이 있고 다른 쪽

은 재무 리스크 관리 기법을 적용한 혼합 모델과 같은 고도화된 기법을 활용하면 결국 이 분야 1 옮긴이_FICO라는 회사에서 만든 미국의 신용평가점수 제도다.

168 3부 MLOps 실제 사례

는 보험계리사들이 지배하게 될 것이다.

XGBoost와 같은 그레이디언트 부스팅 알고리즘 gradient boosting algorithm으로 인해 좋은 모델을 처 음부터 만들어야 할 필요가 줄어들어 구축 비용이 줄었다. 그러나 블랙박스 효과로 인해 검증 은 더 복잡해졌다. 따라서 그러한 모델에 어떤 입력값을 넣더라도 합리적인 결과를 반환한다는 느낌을 받기 힘들어졌다. 그럼에도 불구하고 신용 리스크 모델 제작자들은 이러한 새로운 유형 의 모델을 사용하고 검증하는 방법을 습득하였다. 우리가 이 책에서 살펴본 것처럼 MLOps의 중요한 구성 요소인 신뢰를 자신들의 모델에 구축하기 위해, 그들은 샤플리Shapley 값과 같은 개 별적 설명 방법을 기반으로 하는 새로운 검증 방법론을 개발했다.

9.3 모델 편향성에 대한 고려 사항 모델이 대출 신청자를 의도치 않게 탈락시킬 수 있으므로 모델 제작자는 선택 편향 selection bias도 감안해야 한다. 선택 편향으로 인해, 대출이 허용된 집단이 대출 신청자 집단을 대표하지 않을 수 있다. 부주의하여 이전 버전에서 대출 가능으로 판정한 집단으로 모델의 새로운 버전을 학습시키면, 대출이 거부된 집단은 학습 데이터에 포함되지 않으므로 대출 거부 집단을 예측하지 못하는 모 델을 만들게 된다. 이 효과를 체리 피킹cherry-picking이라고 한다. 결과적으로, 신청자 집단을 기 반으로 가중치를 재조정하거나 외부 데이터를 기반으로 모델을 보정하는 것과 같은 특별한 방 법을 사용해야 한다. 대출 허용 여부에 대한 의사결정뿐만 아니라 리스크 평가에도 사용하는 모델은 ‘예/아니요’ 같 은 결과와 함께 확률도 계산해야 한다. 하지만 일반적으로 예측 모델이 직접 생성하는 확률 은 정확하지 않다. 데이터 과학자들이 임곗값을 기준으로 이항 분류를 적용하여 ‘예/아니요’를 얻는 것은 문제가 안 되지만, 이력 데이터 기반으로 평가하여 ‘실제’ 확률로 복구하려면 조정 이라는 단조로운 변환 monotonous transformation 절차가 필요하다.

calibration

이 활용 사례에 대한 모델 검증은 일반적으로 다음과 같이 구성한다. 학습 데이터 세트의 뒤쪽(때에 따라 앞쪽)에서 선별한, 표본 외( out-of-sample) 데이터 세트로 성능 테스트

● 

를 수행한다.

9장 소비자 신용 리스크 관리

169

전체 집단뿐만 아니라 하위집단별 성능도 조사한다. 하위집단에는 일반적인 매출 기반 고객 세그먼트뿐만 아



니라 책임 있는 AI의 출현에 따라 중요해진 성별에 따른 고객 세그먼트 혹은 지역 규정에 따라 보호되는 속성 기반 고객 세그먼트가 있을 수 있다. 이렇게 구분하지 않을 경우 심각한 피해를 입을 수 있다. 예를 들어, 애플 은 2019년, 그들이 발행하는 신용카드가 카드를 신청하는 여성에 대해 ‘성차별적’이라는 말을 듣고 나서야 비 로소 그 사실을 알게 되었다(https://oreil.ly/iO3yj ).

9.4 상용화 준비 신용 리스크 모델의 유의미한 영향을 고려하여, 검증 과정에 머신러닝 모델 생애주기 중 모델 링 부분과 관련된 유의미한 작업을 포함하며, 다음과 같은 완전한 문서화를 포함한다. 사용한 데이터



모델 자체와 모델을 구축하기 위해 세운 가정



검증 방법론과 검증 결과



모니터링 방법론



이 시나리오에서 모니터링 방법론은 두 가지로 나뉘는데, 데이터와 성능 드리프트다. 예측 실 행과 실제 데이터 획득 사이의 지연시간(일반적으로 대출 기간에 지불 연체를 고려한 몇 개월 을 더한 기간)이 길기 때문에 모델 성능만 모니터링하는 것으로는 충분하지 않으므로 데이터 드리프트도 주의 깊게 모니터링해야 한다. 예를 들어 경기 침체가 발생하거나 상업 정책이 바뀔 경우, 추가 검증 없이는 모델의 성능을 보장할 수 없는 수준으로 신청자 집단이 변화할 가능성이 높다. 데이터 드리프트의 경우, 확 률 분포 사이의 거리(예를 들어, 콜모고로프-스미르노프Kolmogorov-Smirnov 거리 또는 와서스타인 Wasserstein

거리)를 측정하는 일반적인 통계 지표나 집단 안정성 지수 population stability index나 특성 안

정성 지수characteristic stability index 같은 금융 서비스에 특화된 지표로 고객 세그먼트별로 측정한다. 성능 드리프트의 경우, 하위집단에 대해서 일반적인 지표(AUC) 또는 특정 지표(예를 들어, 콜 모고로프-스미르노프, 지니Gini)를 활용하여 정기적으로 측정한다(https://oreil.ly/1-7kd ). 모델에 대한 문서는 보통 매우 공식적이고 독립적인 절차에 따라 모델 리스크 관리(MRM) 팀 이 검토한다. 이러한 독립적인 검토는 모델 개발 팀에 올바른 질문을 할 수 있도록 하는 좋은 실천 사례다. 특별히 중요한 일부 사례의 경우, 검증 팀은 주어진 설명서에 따라 모델을 처음부

170 3부 MLOps 실제 사례

터 다시 구축할 수도 있다. 어떤 경우에는 대체 기술을 사용하여 두 번째 모델을 구축하여 모델 에 대해 문서화된 내용을 이해하였는지 확인하고 원본 모델에 보이지 않던 버그가 있는지 찾아 본다. 복잡하고 시간이 많이 걸리는 모델 검증 프로세스는 전체 머신러닝 모델 생애주기에 영향을 끼 친다. QA가 길기 때문에 빠른 수정 및 빠른 반복은 불가능하여 머신러닝 모델 생애주기가 매 우 느리고 신중해진다.

9.5 상용 배포 일반적인 대형 금융 서비스 조직에서 상용 환경은 설계 환경과 분리되어 있을 뿐만 아니라 기 술 스택도 다를 수 있다. 또한 실거래 검증이나 대출 검증과 같은 중요한 작업과 관련된 기술 스택은 언제나 발전이 더디다. 역사적으로 상용 환경은 주로 규칙 기반이거나 로지스틱 회귀와 같은 선형 모델을 기반으로 구 축하였다. 일부는 PMML이나 JAR 파일과 같은 더 복잡한 모델을 다룰 수 있다. 이보다 덜 중 요한 사례에서는 도커 배포 또는 통합 데이터 사이언스 및 머신러닝 플랫폼을 통해 배포할 수 도 있다. 결국, 모델 운영화에는 버튼 클릭부터 마이크로소프트 워드 문서 작성까지도 포함될 수 있다. 배포된 모델의 활동 로깅은 가치가 높은 활용 사례일수록 모델 성능을 모니터링하는 데 꼭 필 요하다. 모니터링 빈도에 따라 피드백 루프를 자동화하거나 자동화하지 않을 수 있다. 예를 들 어, 작업을 1년에 한두 번만 수행하고 데이터에 대해 질의하는 데 가장 많은 시간을 소모하는 경우 자동화가 필요하지 않을 수 있다. 반면, 평가를 매주 하는 경우라면 자동화가 필수적일 수 있다. 기간이 몇 개월밖에 안 되는 단기 대출의 경우가 이런 예에 해당한다.

9장 소비자 신용 리스크 관리

171