귀사의 머신 러닝 모델을 프로덕션 환경에 도입하는 고객

귀사의 머신 러닝 모델을 프로덕션 환경에 도입하는 고객

머신 러닝(ML) 제품을 구축할 때 다음 세 가지 신속한 변화를 위한 목표의 공통 결과는 무엇입니까?

  1. 신속한 구축

  2. 올바르게 구축

  3. 올바른 것을 구축합니다.

답변: 유용하고 재사용 가능한 모델입니다.

모델 없는 MVP는 없습니다. 그리고 생산은 노트북에서 모델 가치를 입증한 후 최종적인 쉬운 단계가 아닙니다. 단순히 로컬 클라우드 공급자에게 자동 모델 파일 복사 붙여넣기 작업이 아닙니다. 이것은 ML 제품을 만드는 데 있어 중요한 부분입니다. 생산에 들어가는 것은 처음부터 공정의 일부여야 합니다.

수천 개의 모델이 대규모 데이터셋에 대해 자동으로 교육되고 매초마다 높은 가치를 예측하는 부드러운 파이프라인을 통해 구현되는 Google 규모의 팀과 ML 시스템이 없을 수도 있습니다.

그러나 모델을 유용하게 사용하려면 모델을 유지하고 배포해야 합니다. 하지만, 모델을 제작하는 것은 사람마다 완전히 다른 것을 의미합니다. 자신의 역할과 경험에 따라 매우 다른 접근 방식을 취할 수도 있습니다.

ML뿐만 아니라 실시간 수학 모델을 사용한 제 경험에서, 저는 모델을 생산에 투입하는 많은 접근법을 보았습니다. 다음 세 가지 접근 방식은 앞서 언급한 세 가지 민첩한 목표 각각을 동일한 순서로 나타내기도 합니다.

  1. 도메인 전문가: 중요한 관련 기능이 포함된 반전되지 않은 휴리스틱 모델 코드를 로컬 컴퓨터의 스크립트에 복사하고 데이터와 결과를 수동으로 전자 메일로 최종 사용자에게 보내는 동안 매개 변수를 즉시 수정하십시오.

“예, 제 컴퓨터에 ‘생산 중’이라는 것이 있습니다. 하지만 디버깅, 유지 보수, 재사용은 악몽일 뿐더러 강력하거나 자율적으로 작동하지 않습니다.”

“우리는 모델을 만들 시간이 없었습니다. 그러나 적어도 교육 파이프라인과 잠재적 아티팩트는 자동으로 테스트되고 패키징됩니다. 우리는 또한 모든 git merge 충돌을 잘 처리했고 repo는 정말 구조적으로 보입니다.”

  1. 데이터 과학자: “1TB에 달하는 매개 변수와 GPU를 교육할 수 있는 최신 딥 러닝 넷만 주시면 최소한 데이터가 동작하거나 변경되지 않는 경우라도 모델을 실행할 수 있는 Jupyter 노트북을 드리겠습니다. 또한 6개월에서 12개월 후에 컨퍼런스에서 발표할 수 있는 좋은 결과를 가진 논문도 있습니다.

모델은 최신 기술이며 이론에 따른 모범 사례 모델링 원칙을 따릅니다. 비즈니스 KPI를 봐도 오류 메트릭이 낮고 성능이 우수합니다. 그러나 특정 기계에서 하나의 실험 환경에서만 작동합니다.

“제 초고급 모델 아키텍처, 사용자 지정 Python 패키지 또는 이상하게 확장된 기능을 재현하지 못할 것입니다. 절대로! 무하하하!”

이 모든 과장된 접근은 그 자체로 특별히 대단한 것은 아니다. 그리고 한 사람이 역할이나 민첩한 목표 등 세 가지 모두에 적합한 위치에 머무르는 데 필요한 광범위한 기술을 가진 경우는 거의 없습니다. 이것은 팀워크입니다.

그렇다면 모델을 프로덕션 환경에 도입하는 데 가장 적합한 접근 방식은 무엇입니까? 여러분은 다른 전형적인 역할들이 무엇을 할 것이라고 생각하나요? 데이터 엔지니어? UX요?