[3일차]머신 러닝 모델 개발시 고려할 점

김준석·2023년 12월 26일
0

모델 개발시 데이터 과학자들의 일반적인 생각

데이터 과학자들은 최근까지만 해도 머신러닝모델을 만든 뒤의 배포과정은 생각하지 않음. 데이터 과학자들은 R언어로 머신러닝모델을 만들었는데 엔지니어들의 사용 툴에서 R언어 사용 불가

데이터 과학자 : "아주 좋은 머신러닝 모델을 만들자"

엔지니어 : "모델을 만든 뒤 의 스텝은?"

데이터 과학자 : 내 알빠 아니제~


모델 개발시 엔지니어들의 일반적인 생각

엔지니어 : "머신러닝 모델을 받긴 했는데 언어도 다르고.. 어떻게 배포하지?"

(시간이 지난 후)

데이터 과학자 : "모델 잘 런칭되었나요?"

엔지니어 : "아니요.."

결국 데이터 과학자와 엔지니어들의 충돌이 발생됨.

한기용 강사님께서 야후에 계실적..

데이터 과학자들이 검색 엔진에서 결과 10개가 나왔을때 결과마다 타이틀과 요약을 웹페이지 본문에서 추출하는 로직을 머신러닝 모델로 만든적이 있음.

데이터 과학자들의 KPI는 프로젝트 성공 여부가 아닌 논문을 잘썼느냐 였다.

그래서 엔지니어들과 협업을 하지만 데이터 과학자들은 논문쓰기에 바빴기에 품질, 언어를 상관하지 않았음.


마찰이 생기는 지점 - 개발된 모델의 이양 관련

  • 데이터 과학자들은 R을 비롯한 다양한 툴로 모델 개발
  • 하지만 실제 프로덕션 환경은 다양한 모델들을 지원하지 못함
    • 개발/검증된 모델의 프로덕션 환경 론칭시 시간이 걸리고 오류 가능성이 존재
    • 심한 경우 모델 관련 개발을 다시 해야 됨.
  • 결국 파이썬과 같이 개발환경도 트랜스폼할 수 있는 툴을 프로젝트에서 사용하게 함.

모델 개발시 꼭 기억할 포인트 - 1

한기용 강사님의 경험을 바탕으로 작성 됨.

이후 모델 개발 업무 진행시 참고하면 좋을 듯.

  • 모델 개발부터 최종 론칭까지 책임질 사람이 필요
    • 모델 개발은 시작일 뿐. 성공적으로 배포가 되는 것이 최종 목표
    • 이 일에 참여하는 사람들이 다 같이 크레딧을 받아야 협업이 더 쉬워짐 즉, kpi를 더 다양하게 분배해야 됨.
      • 최종 론칭하는 엔지니어들과 소통하는 것이 중요.
  • 모델 개발 초기부터 개발/론칭 과정을 구체화하고 소통
    • 모델 개발시 모델을 어떻게 검증할 것 인지?
    • 모델을 어떤 형태로 엔지니어 들에게 넘길 것인지?
      • 피쳐 계산을 어떻게 하는 건지, 모델 자체는 어떤 포맷인지 체크. 엔지니어가 잘 사용할 수 있는 툴로 전달해주는게 BEST
    • 모델을 프로덕션(론칭 전)에서 A/B 테스트를 할 것인지?
      • 한다면 최종 성공판단 지표는 무엇인가

모델 개발시 꼭 기억할 포인트 - 2

  • 개발된 모델이 바로 프로덕션에 론칭 가능한 프로세스/프레임웍이 필요
    • 예를 들어 R로 개발된 모델은 바로 프로덕션 론칭이 불가능
    • 트위터 : 데이터 과학자들에게 특정 파이썬 라이브러리로 모델개발 정책화(너네 R쓰지마!)
      • 툴을 하나로 통일(표준화)
    • 머신러닝 전반 개발/배포 프레임웍의 등장
      • 머신러닝 모델 개발. 검증, 배포를 하나의 프레임웍에서 수행
      • AWM SageMaker가 대표적인 프레임웍
        • 검증된 모델을 버튼 클릭 하나로 APi형태로 론칭(코딩없이)
        • AutoPilot이란 AutoML 기능도 제공
      • Google Cloude와 Azure도 비슷한 프레임웍 지원
      • 다수의 it기업도 자체 머신러닝 개발/배포 프레임웍을 개발.

모델 개발시 꼭 기억할 포인트 - 3

  • 첫 모델 론칭은 시작일 뿐
    • 론칭이 아닌 운영을 통해 점진적인 개선을 이뤄내는 것이 중요!(애자일)
    • 데이터 과학자의 경우 모델 개발하고 끝이 아니라는 점을 명심해야 됨.
      • 모델을 넘긴 뒤 운영에 같이 관여하며 이슈, 개선사항을 파악하여 발전시켜야 됨.
    • 결국 피드백 루프가 필요
      • 운영에서 생기는 데이터를 가지고 개선점 찾기
        • 검색이라면 CTR(Click Through Rate)을 모니터링하고 모든 데이터를 기록
      • 주기적으로 모델을 재빌딩하고 배포 해야 됨.
        • 이로 인해 탄생한 직군이 MLOps

0개의 댓글