이번 포스팅에서는 인공지능 문제와 미래 시리즈의 마지막 포스팅으로 모델 중심 AI(Model-centric AI)에서 데이터 중심 AI(Data-centric AI) 전환에 대해 가볍게 정리해보고 MLOps의 의미에 대해서도 알아보았습니다.
참고로 본 포스팅은 “인공지능 문제와 미래”라는 시리즈로 아래와 같이 3가지 포스팅으로 구성하였습니다.
(1) 인공지능 문제와 미래 (1) 강인공지능 불가능? 딥마인드와 IBM 왓슨
(2) 인공지능 문제와 미래 (2) 딥러닝 한계점, 인공지능 응용 상용화 문제점
(3) 인공지능 문제와 미래 (2) Model-centric AI에서 Data-centric AI로 (이번 포스팅)
앞선 포스팅에서는 딥러닝의 한계점과 인공지능 응용 상용화의 문제점에 대해 정리해보았습니다. 인공지능의 대표적인 기술인 딥러닝의 한계점 등에 대해 지적한 게리 마커스(Gary Marcus)의 한계점에 대한 내용을 주관적으로 정리해서 설명하였습니다.
이번 포스팅에서는인공지능 미래 방향성에 대해서 최근 앤드류 응(Andrew NG, 스탠퍼드대 교수 / 바이두 수석AI과학자 및 부사장)이 제안한 모델 중심 AI(Model-centric AI)에서 데이터 중심 AI(Data-centric AI) 방향성에 대해 간단히 정리해보겠습니다. (앤드류 응(Andrew NG)의 MLOps : From Model-centric to Data-centric AI 내용을 참고, PDF 파일)
참고로 앤드류 응(吳恩達, Andrew Ng)은 중국계 미국인이고, 미국 스탠퍼드 대학교(Stanford University)의 교수이자, 중국 바이두(Baidu)의 부사장 겸 수석 과학자입니다.
앤드류 응은 2012년 구글 브레인(Google Brain)에서 프로젝트를 담당하면서 머신러닝 분야에서 그 능력을 인정받았는데요, 그가 주도한 구글 브레인 프로젝트팀은 1만 6,000개의 컴퓨터 프로세서를 연결해 인공신경망을 구축하고 1,000만 개의 유튜브 영상에서 추출한 디지털 이미지를 이용해 스스로 훈련하는 방식으로 고양이의 이미지를 식별하는 데 성공하기도 했습니다.
Model-centric AI와 Data-centric AI 정의
앤드류 응은
AI 시스템(System) = 코드(Model, Algorithm) + 데이터(Data)
라고 표현하였으며, 그럼에도 많은 인공지능 단체, 연구기관들이 Mode과 Algorithm에만 집중하고 있다고 지적한 바 있습니다.
그나마 AI 모델의 성능을 높이기 위한 방법으로 구글과 바이두에서 인공지능 연구를 리딩했던 스탠퍼드대 컴퓨터공학부 교수, 앤드류 응(Andrew Ng) 교수가 DeepLearning AI에서 “From Model-centric to Data-centric AI”에서 데이터 중심의 AI개발로 방향성을 제시한 것 입니다.
Model-centric AI와 Data-centric AI를 정의하면 아래와 같습니다.
Model-centric AI란?
말그대로 모델 중심의 AI 개발 방식입니다. 정작 데이터에는 신경쓰지 않고 모델과 알고리즘에만 신경쓰는 인공지능 개발 방식 입니다.
– 데이터(Data)는 전형적인 전처리 작업 후 고정되어 있음
– 데이터(Data)를 최대한 모으고 이후 데이터에 노이즈가 있더라도 코드(Model, Algorithm) 최적화에만 집중함
Data-centric AI
앤드류 응이 제안한 방향성으로 데이터의 질을 반복적으로 향상시키는 것이 특징 입니다.
– 코드(Model, Algorithm)은 고정되어 있고 데이터(Data)의 질을 반복적으로 향상시키는데 집중
– 데이터 레이블을 일관적으로 유지 시켜야 함
앤드류 응은 이와 같은 Data-centric 방향성으로 진화를 위해서는 MLOps를 적극적으로 활용해야한다고 제안하였습니다.
MLOps란?
MLOps는 Machine Learning Model Operationalization Management의 약자로, 기계학습(Machine Learning) 모델 운영 관리 기술을 의미합니다.
좀 더 풀어 설명하자면 MLOps란 데이터 관리, 인공지능(머신러닝) 서비스 개발, 운영을 통합하여 안정적으로 서비스를 제공하면서 신속하고 유연한 개발을 추구하는 방식을 뜻합니다.
수식으로 표현하자면 아래와 같습니다.
MLOps = DataOps + ModelOps + DevOps
사실 이 용어는 기존 소프트웨어(SW) 개발자들에게 익숙한 용어였던 “DevOps”가 있어서 그런지 이상하게 느껴지지 않는데요,
역시 이 단어의 의미 또한 두 개 용어 내 “Ops”는 운영(Operations)을 의미하고 있습니다.
전통적인 프로그래밍 기반 SW 제품 관리를 용이하게 하는 작업이 DevOps라고 한다면, MLOps는 머신러닝(ML, Machine Learning) 내 기반 서비스 운영을 효율화하는 업무라고 할 수 있겠습니다.
사실 아직 신기술 범주에 속하는 AI 기술은 일상 속 서비스보다는 연구실에서 많이 다루어졌기 때문에 상대적으로 늦게 MLOps가 주목받기 시작했지만, 실은 매우 중요한 영역입니다.
앤드류 응이 제안하는 것처럼 모델 성능 이외 빠른 추론 속도나 해석 가능성도 매우 중요하기 때문에 좋은 AI 개발을 위해서는 안정적인 운영과 시스템 구조가 필요하며, 무엇보다 AI 서비스를 제공하는 기업 측면에서는 사용자 데이터가 계속 쌓이는 만큼 이를 반영할 수 있도록 AI 모델에 대한 수시 점검, 개선이 필요하기 때문입니다.
Model-centric AI와 Data-centric AI 성능 차이
위와 같이 Model-centric AI와 Data-centric AI의 성능 차이를 비교하자면,
앤드류 응의 세미나 발표에 따르자면, 컴퓨터 비전을 이용한 철강 합판 또는 태양광 패널의 결함을 찾는 문제에서 모델을 고치는 작업을 했을 때 Model-centrics 방식보다 Data-centric 방식으로는 모델의 성능이 17% 정도 개선된 것을 확인할 수 있었다고 합니다.
하지만 게다가 많은 인공지능 연구의 요약(Abstract, 논문의 초록/요약 등)을 살펴봤을 때 99%의 연구는 모델을 개선하는 것만 다루고 있고 1% 연구만 데이터 가공(Data Augmentation)에 대해서 이야기하고 있다고 지적했습니다.
결국, 모델 중심 AI(Model-centric AI)에서 데이터 중심의 AI(Data-centric AI) 개발이 훨씬 효율적으로 모델 성능을 올릴 수 있으므로,
MLOps를 통해 체계적으로 데이터의 질을 개선하는 툴 또는 프로세스를 설계해야 한다고 제안하고 있습니다.
앞서 설명한 바와 같이, MLOps의 가장 핵심은 ML(Machine Learning) 라이프싸이클의 전 과정인 Collect data에서부터 Deploy production까지 고품질의 데이터를 공급하도록 하는 것이고, 모델을 통한 개선보다 Data-centric AI, 데이터를 통한 성능 개선을 통해 노력하고 효율적으로 이를 가능하게 해줄 프레임워크나 툴이 필요하다는 의미 입니다.
참고로 이번 포스팅에서는 위에서 설명한 내용은 앤드류 응(Andrew NG)의 MLOps : From Model-centric to Data-centric AI 내용을 가볍게만 다루어보았는데요, 좀 더 구체적인 내용은 아래 동영상에서 확인할 수 있습니다.
참고로 본 포스팅은 “인공지능 문제와 미래”라는 시리즈로 아래와 같이 3가지 포스팅으로 구성하였습니다.
(1) 인공지능 문제와 미래 (1) 강인공지능 불가능? 딥마인드와 IBM 왓슨
(2) 인공지능 문제와 미래 (2) 딥러닝 한계점, 인공지능 응용 상용화 문제점
(3) 인공지능 문제와 미래 (2) Model-centric AI에서 Data-centric AI로 (이번 포스팅)