> 기술 주변기기 > 일체 포함 > Tan Zhongyi: 모델 중심에서 데이터 중심까지 MLOps는 AI를 더 빠르고 비용 효율적으로 구현하는 데 도움이 됩니다.

Tan Zhongyi: 모델 중심에서 데이터 중심까지 MLOps는 AI를 더 빠르고 비용 효율적으로 구현하는 데 도움이 됩니다.

PHPz
풀어 주다: 2023-04-09 19:51:11
앞으로
1419명이 탐색했습니다.

게스트: Tan Zhongyi

편집자: Qianshan

Enda Ng은 AI가 모델 중심 연구 패러다임에서 데이터 중심 연구 패러다임으로 바뀌었다고 여러 차례 밝혔습니다. AI 구현에 있어서 가장 큰 과제는 데이터입니다. 고품질 데이터 공급을 보장하는 방법이 핵심 문제입니다. 이 문제를 해결하려면 AI를 빠르고 효율적이며 비용 효과적으로 구현하는 데 도움이 되는 MLOps 사례와 도구를 사용해야 합니다.

최근 51CTO가 주최한 ​ AISummit 글로벌 인공 지능 기술 컨퍼런스 ​에서 Open Atomic Foundation의 TOC 부회장 Tan Zhongyi가 기조 연설을 했습니다. "모델 중심에서 데이터 중심으로 - MLOps가 AI를 돕습니다. "MLOps를 빠르고 비용 효율적으로 구현하는 방법"은 MLOps의 정의, MLOps가 해결할 수 있는 문제, 일반적인 MLOps 프로젝트, MLOps 기능 및 AI 팀의 수준을 평가하는 방법을 참가자와 공유하는 데 중점을 두었습니다.

여러분에게 영감을 주기 위해 연설 내용을 다음과 같이 정리했습니다.

모델 중심에서 데이터 중심으로

현재 AI 업계에는 "모델 중심에서 데이터 중심으로"라는 추세가 있습니다. 정확히 무엇을 의미하나요? 과학과 산업계의 분석부터 시작해 보겠습니다.

  • AI 과학자 Andrew NG는 현재 AI 구현의 핵심은 데이터 품질을 어떻게 향상시키는가라고 분석했습니다.
  • 업계 엔지니어와 분석가들은 AI 프로젝트가 종종 실패한다고 보고했습니다. 실패 이유에 대해서는 더 자세히 조사해 볼 필요가 있습니다.

Andrew Ng는 "MLOps: From Model-centric to Data-centric"이라는 연설을 통해 실리콘 밸리에 큰 반향을 일으킨 적이 있습니다. 연설에서 그는 "AI = 코드 + 데이터"(코드에는 모델과 알고리즘이 포함됨)를 믿고 코드가 아닌 데이터를 개선하여 AI 시스템을 개선했습니다.

구체적으로, 모델 중심 방법이 채택됩니다. 즉, 데이터를 변경하지 않고 유지하고 더 많은 네트워크 계층 사용, 더 많은 하이퍼 매개변수 조정 등 모델 알고리즘을 지속적으로 조정하며 데이터 중심 방법을 사용합니다. 즉, 모델을 변경하지 않고 그대로 유지하고 데이터 레이블 개선, 데이터 주석 품질 개선 등 데이터 품질을 향상시킵니다.

같은 AI 문제라도 코드를 개선하든, 데이터를 개선하든 효과는 전혀 다릅니다.

경험적 증거에 따르면 데이터 중심 접근 방식을 통해 정확도를 효과적으로 향상시킬 수 있지만 모델을 개선하거나 모델을 교체하여 정확도를 향상시킬 수 있는 정도는 극히 제한적입니다. 예를 들어, 다음의 강판 결함 검출 작업에서 기준 정확도는 76.2%였으며 모델 변경 및 매개변수 조정 등의 다양한 작업 후에도 정확도는 거의 향상되지 않았습니다. 그러나 데이터 세트의 최적화로 정확도가 16.9% 향상되었습니다. 다른 프로젝트의 경험도 이를 증명한다.

Tan Zhongyi: 모델 중심에서 데이터 중심까지 MLOps는 AI를 더 빠르고 비용 효율적으로 구현하는 데 도움이 됩니다.

이런 일이 일어나는 이유는 데이터가 상상 이상으로 중요하기 때문입니다. "데이터가 AI의 양식이다"라는 사실은 누구나 알고 있습니다. 실제 AI 애플리케이션에서는 약 80%의 시간이 데이터 관련 콘텐츠를 처리하는 데 사용되고 나머지 20%는 알고리즘을 조정하는 데 사용됩니다. 이 과정은 재료를 준비하고 다양한 재료를 가공하고 조정하는 데 80%의 시간이 소요되지만, 실제 요리는 요리사가 냄비에 냄비를 넣을 때 몇 분 밖에 걸리지 않습니다. 요리의 맛을 결정하는 열쇠는 재료와 가공 방식에 있다고 할 수 있습니다.

Ng의 관점에서 MLOps(예: "생산을 위한 기계 학습 엔지니어링")의 가장 중요한 작업은 데이터 준비, 모델 훈련, 모델 온라인, 모델 모니터링 및 재훈련을 포함하여 기계 학습 수명 주기의 모든 단계에 있습니다. 각 단계마다 항상 고품질의 데이터 공급을 유지합니다.

위 내용은 AI 과학자들이 MLOps에 대해 알고 있는 내용입니다. 다음으로 AI 엔지니어와 업계 분석가들의 의견을 살펴보겠습니다.

우선, 업계 분석가의 관점에서 볼 때 현재 AI 프로젝트의 실패율은 놀라울 정도로 높습니다. 2019년 5월 Dimensional Research의 조사에 따르면 AI 프로젝트의 78%가 2019년 6월에 온라인으로 전환되지 않은 것으로 나타났습니다. VentureBeat 보고서에 따르면 AI 프로젝트의 87%가 프로덕션 환경에 배포되지 않은 것으로 나타났습니다. 즉, AI 과학자, AI 엔지니어들이 많은 일을 해왔지만, 궁극적으로는 비즈니스 가치를 창출하지 못했다는 것이다.

왜 이런 결과가 나오는 걸까요? 2015년 NIPS에서 발표된 논문 "Hidden Technical Debt in Machine Learning Systems"에서는 실제 온라인 AI 시스템에는 데이터 수집, 검증, 자원 관리, 기능 추출, 프로세스 관리, 모니터링 및 기타 여러 콘텐츠가 포함되어 있다고 언급했습니다. 하지만 실제로 머신러닝과 관련된 코드는 전체 AI 시스템에서 5%만을 차지하고, 95%는 엔지니어링 관련 콘텐츠와 데이터 관련 콘텐츠이다. 따라서 데이터는 가장 중요하면서도 가장 오류가 발생하기 쉬운 것입니다.

실제 AI 시스템에 대한 데이터의 과제는 주로 다음 사항에 있습니다.

  • 규모: 대용량 데이터를 읽는 것은 어려운 일입니다.
  • 낮은 지연 시간: 서비스 제공 중 높은 QPS 및 낮은 지연 시간 요구 사항을 충족하는 방법
  • 데이터 변경으로 인한 모델 붕괴: 현실 세계는 끊임없이 변화하고, 모델 효과를 처리하는 방법
  • 시간 여행: 시계열 특성 데이터 처리에 문제가 발생하기 쉽습니다.
  • 훈련/제공 편향: 훈련 및 예측에 사용되는 데이터가 일치하지 않습니다.

위에 나열된 내용은 기계 학습의 데이터와 관련된 몇 가지 과제입니다. 또한 실제 생활에서 실시간 데이터는 더 큰 문제를 야기합니다.

그렇다면 기업의 경우 AI를 어떻게 대규모로 구현할 수 있을까요? 대기업을 예로 들면, 1,000개 이상의 애플리케이션 시나리오와 1,500개 이상의 모델이 동시에 온라인에서 실행될 수 있습니다. 어떻게 그렇게 많은 모델을 지원할 수 있을까요? AI를 "더 많이, 더 빠르게, 더 좋게, 더 저렴하게" 구현하려면 기술적으로 어떻게 해야 할까요?

다양함: 주요 비즈니스 프로세스를 중심으로 여러 시나리오를 구현해야 하며 대기업의 경우 1,000개 또는 심지어 수만 개에 이를 수도 있습니다.

빠름: 각 장면의 구현 시간이 짧아야 하며, 반복 속도가 빨라야 합니다. 예를 들어 권장 시나리오에서는 하루에 한 번 전체 교육을 수행하고 15분 또는 5분마다 증분 교육을 수행해야 하는 경우가 많습니다.

좋음: 각 장면의 착지 효과는 기대에 부응해야 하며, 적어도 구현 전보다 좋아야 합니다.

절약: 각 시나리오의 구현 비용은 기대에 부응하여 상대적으로 경제적입니다.

진정으로 "더 많이, 더 빠르게, 더 좋게, 더 저렴하게" 달성하려면 MLOps가 필요합니다.

Tan Zhongyi: 모델 중심에서 데이터 중심까지 MLOps는 AI를 더 빠르고 비용 효율적으로 구현하는 데 도움이 됩니다.

전통적인 소프트웨어 개발 분야에서는 DevOps를 사용하여 느린 출시 및 불안정한 품질과 같은 유사한 문제를 해결합니다. DevOps는 소프트웨어 개발 및 출시의 효율성을 크게 향상시켰으며 최신 소프트웨어의 신속한 반복 및 개발을 촉진했습니다. AI 시스템에 문제가 발생하면 DevOps 분야의 성숙한 경험을 통해 MLOps를 개발할 수 있습니다. 따라서 그림에 표시된 것처럼 "머신러닝 개발 + 최신 소프트웨어 개발"이 MLOps가 됩니다.

MLOps는 정확히 무엇인가요?

현재 업계에는 MLOps에 대한 표준 정의가 없습니다.

  • wikipedia의 정의: MLOps는 프로덕션에서 기계 학습 모델을 안정적이고 효율적으로 배포하고
    유지하는 것을 목표로 하는 일련의 사례입니다.
  • Google 클라우드의 정의: MLOps는 기계 학습 시스템 개발과 운영을 통합하는 것을 목표로 하는 기계 학습 엔지니어링 문화 및 관행입니다.
  • Microsoft Azure의 정의: MLOps는 데이터 과학자와 애플리케이션 엔지니어가 프로덕션에서 기계 학습 모델을 더욱 효과적으로 만드는 데 도움이 될 수 있습니다.

위의 설명은 상당히 복잡합니다. 이에 대한 개인적인 이해는 비교적 간단합니다. MLOps는 "코드+모델+데이터"의 지속적인 통합, 지속적인 배포, 지속적인 교육 및 지속적인 모니터링입니다.

Tan Zhongyi: 모델 중심에서 데이터 중심까지 MLOps는 AI를 더 빠르고 비용 효율적으로 구현하는 데 도움이 됩니다.

위 사진은 전형적인 머신러닝 생활 현장을 보여줍니다. 프로젝트 단계를 정의한 후에는 처리 데이터를 정의하고 수집하기 시작합니다. 현재 문제를 해결하는 데 어떤 데이터가 도움이 되는지 관찰해야 합니다. 처리 방법, 기능 엔지니어링 수행 방법, 변환 및 저장 방법.

데이터를 수집한 후 모델 학습 및 반복을 시작하고 지속적으로 알고리즘을 조정한 다음 계속 학습하여 최종적으로 기대에 맞는 결과를 얻어야 합니다. 결과가 만족스럽지 않으면 상위 계층으로 돌아가서 더 많은 데이터를 얻고, 그 데이터에 대해 더 많은 변환을 수행한 다음 다시 훈련해야 하며, 더 만족스러운 결과를 얻을 때까지 이 사이클을 반복해야 합니다. 모델 알고리즘을 적용한 다음 온라인으로 다시 시작하세요.

배포 및 모니터링 과정에서 모델 효과가 일관되지 않으면 훈련 및 배포에서 어떤 문제가 발생했는지 관찰해야 합니다. 일정 기간 동안 배포된 후에는 모델 부패 문제에 직면할 수 있으며 재교육이 필요합니다. 때로는 배포 과정에서 데이터에 문제가 발생하여 데이터 처리 계층으로 돌아가야 하는 경우도 있습니다. 게다가 배포 효과가 프로젝트 기대에 미치지 못하고 원래 시작점으로 돌아가야 할 수도 있습니다.

보시다시피 전체 프로세스는 반복 프로세스입니다. 엔지니어링 실습을 위해서는 지속적인 통합, 지속적인 배포, 지속적인 교육 및 지속적인 모니터링이 필요합니다. 그 중에서도 지속적인 학습과 지속적인 모니터링이 MLOps의 고유한 특징입니다. 지속적인 학습의 역할은 코드 모델이 변경되지 않더라도 데이터 변경에 대해 지속적으로 학습해야 한다는 것입니다. 지속적인 모니터링의 역할은 데이터와 모델의 매칭에 문제가 있는지 지속적으로 모니터링하는 것입니다. 여기서 모니터링이란 온라인 시스템을 모니터링하는 것뿐만 아니라 시스템 및 머신러닝과 관련된 재현율, 정확도 등 일부 지표를 모니터링하는 것을 의미합니다. 요약하면 MLOps는 실제로 코드, 모델 및 데이터에 대한 지속적인 통합, 지속적인 배포, 지속적인 교육 및 지속적인 모니터링이라고 생각합니다.

물론 MLOps는 프로세스와 파이프라인뿐만 아니라 더 크고 더 많은 콘텐츠도 포함합니다. 예:

(1) 저장 플랫폼: 특성과 모델의 저장 및 읽기

(2) 컴퓨팅 플랫폼: 특성 처리를 위한 스트리밍 및 일괄 처리

(3) 메시지 큐: 실시간 데이터 수신에 사용

(4) 스케줄링 도구: 다양한 리소스 스케줄링(컴퓨팅/스토리지)

(5) Feature Store: 다양한 기능 등록, 검색 및 공유

( 6 ) 모델 스토어: 모델의 특성

(7) 평가 스토어: 모델의 모니터링/AB 테스트

피처 스토어, 모델 스토어 및 평가 스토어는 모두 기계 학습 분야에서 새롭게 떠오르는 애플리케이션이자 플랫폼입니다. 동시에 여러 모델을 실행하고 빠른 반복을 달성하려면 반복을 더욱 효율적으로 만들기 위해 이러한 정보를 유지할 수 있는 우수한 인프라가 필요합니다.

MLOps의 독특한 프로젝트 - Feature Store

다음은 피처 플랫폼인 Feature Store에 대해 간략하게 소개합니다. Feature Store는 머신러닝 분야의 고유한 플랫폼으로서 많은 기능을 갖추고 있습니다.

먼저, 모델 훈련과 예측 요구 사항을 동시에 충족해야 합니다. 기능 데이터 스토리지 엔진은 다양한 시나리오에서 완전히 다른 애플리케이션 요구 사항을 갖습니다. 모델 훈련에는 우수한 확장성과 대규모 저장 공간이 필요합니다. 실시간 예측은 고성능과 짧은 대기 시간 요구 사항을 충족해야 합니다.

둘째, 학습 단계와 예측 단계 중 특성 처리 간의 불일치 문제를 해결해야 합니다. 모델 훈련 중에 AI 과학자는 일반적으로 Python 스크립트를 사용한 다음 Spark 또는 SparkSQL을 사용하여 기능 처리를 완료합니다. 이러한 종류의 교육은 지연에 민감하지 않으며 온라인 비즈니스를 처리할 때 효율성이 떨어집니다. 따라서 엔지니어는 기능 처리 프로세스를 변환하기 위해 고성능 언어를 사용합니다. 그러나 번역 과정은 매우 번거롭고 엔지니어는 논리가 기대에 부합하는지 확인하기 위해 과학자들과 반복적으로 확인해야 합니다. 기대에 조금이라도 부합하지 않는 한, 온라인과 오프라인의 불일치 문제를 가져올 것입니다.

셋째, 낭비를 방지하고 효율적으로 공유하려면 특성 처리의 재사용 문제를 해결해야 합니다. 기업의 AI 애플리케이션에서는 이런 상황이 자주 발생한다. 동일한 기능이 서로 다른 사업 부서에서 사용되고, 데이터 소스가 동일한 로그 파일에서 나오며, 중간에 수행되는 추출 로직도 비슷하지만 서로 다른 부서에 있기 때문이다. 또는 다른 시나리오에서 사용하면 재사용할 수 없습니다. 이는 동일한 논리가 N 번 실행되는 것과 동일하며, 로그 파일이 방대해 스토리지 리소스와 컴퓨팅 리소스가 엄청나게 낭비됩니다.

요약하면 Feature Store는 주로 고성능 특성 저장 및 서비스, 특성 데이터 일관성, 특성 재사용 및 기타 모델 학습 및 모델 예측 문제를 해결하는 데 사용됩니다. 데이터 과학자는 배포 및 공유를 위해 Feature Store를 사용할 수 있습니다.

현재 시중에 나와 있는 주류 기능 플랫폼 제품은 크게 세 가지 범주로 나눌 수 있습니다.

  • 각 AI 기업이 자체 연구를 진행합니다. 비즈니스에 실시간 교육이 필요한 한, 이들 회사는 기본적으로 위의 세 가지 문제를 해결하기 위해 유사한 기능 플랫폼을 개발할 것입니다. 하지만 이 기능 플랫폼은 비즈니스와 밀접한 관련이 있습니다.
  • SAAS 제품 또는 클라우드 공급업체가 제공하는 기계 학습 플랫폼의 일부입니다. 예를 들어 AWS에서 제공하는 SageMaker, Google에서 제공하는 Vertex, Microsoft에서 제공하는 Azure 기계 학습 플랫폼이 있습니다. 사용자가 다양하고 복잡한 기능을 쉽게 관리할 수 있도록 기계 학습 플랫폼에 기능 플랫폼이 내장되어 있습니다.
  • 일부 오픈 소스 및 상용 제품. 몇 가지 예를 들자면, 오픈 소스 Feature Store 제품인 Feast와 오픈 소스 Feature Store 제품인 OpenMLDB가 완전한 오픈 소스 상용 기능 플랫폼 제품을 제공합니다.

MLOps 성숙도 모델

성숙도 모델은 시스템의 기능 목표와 일련의 규칙을 측정하는 데 사용됩니다. DevOps 분야에서 성숙도 모델은 회사의 DevOps 기능을 평가하는 데 자주 사용됩니다. MLOps 분야에도 이에 상응하는 성숙도 모델이 있지만 아직 표준화되지 않았습니다. MLOps에 대한 Azure의 성숙도 모델에 대해 간략하게 소개합니다.

전체 기계 학습 프로세스의 자동화 정도에 따라 MLOps의 성숙한 모델은 (0, 1, 2, 3, 4) 수준으로 나뉘며, 이 중 0은 자동화가 없음을 의미합니다. (1,2,3)은 부분 자동화이고 4는 고도로 자동화된

Tan Zhongyi: 모델 중심에서 데이터 중심까지 MLOps는 AI를 더 빠르고 비용 효율적으로 구현하는 데 도움이 됩니다.

성숙도 수준이 0입니다. 즉, MLOps가 없습니다. 이 단계는 데이터 준비가 수동이고, 모델 훈련도 수동이고, 모델 훈련 배포도 수동임을 의미합니다. 모든 작업이 수동으로 수행되므로 AI에 대한 혁신적인 파일럿 프로젝트를 수행하는 일부 비즈니스 부서에 적합합니다.

성숙도 수준은 1입니다. 즉, DevOps는 있지만 MLOps는 없습니다. 데이터 준비는 자동으로 수행되지만 모델 훈련은 수동으로 수행됩니다. 과학자들은 데이터를 얻은 후 데이터를 완료하기 전에 다양한 조정과 훈련을 수행합니다. 모델 배포도 수동으로 수행됩니다.

성숙도는 2이며 자동화된 교육입니다. 모델 훈련은 자동으로 완료됩니다. 즉, 데이터가 업데이트된 후 자동화된 훈련을 위해 유사한 파이프라인이 즉시 시작되지만 훈련 결과의 평가 및 시작은 여전히 ​​수동으로 완료됩니다.

성숙도 레벨은 3이며 자동 배포입니다. 모델의 자동 학습이 완료되면 수동 개입 없이 모델 평가 및 출시가 자동으로 완료됩니다.

성숙도 레벨은 4이며, 이는 자동 재교육 및 배포를 의미합니다. 온라인 모델을 지속적으로 모니터링하여 Model DK의 온라인 모델 기능이 저하된 것으로 확인되면 자동으로 반복 교육이 시작됩니다. 전체 프로세스가 완전 자동화되어 있어 가장 성숙한 시스템이라고 할 수 있습니다.

더 흥미로운 내용을 보려면 컨퍼런스 공식 웹사이트를 참조하세요. ​클릭하여 보기​

위 내용은 Tan Zhongyi: 모델 중심에서 데이터 중심까지 MLOps는 AI를 더 빠르고 비용 효율적으로 구현하는 데 도움이 됩니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:51cto.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿