데브코스/TIL

2023-11-22 데이터 기반 제품 개선

Hynnjnn 2023. 11. 22. 17:50

3-1 데이터 기반 제품 개선이란?

Product Science
머신러닝 기술을 사용해 제품/서비스의 기능을 개선
agile 방법론을 따른다.

데이터 과학자

필요한 스킬셋

  • 머신러닝/인공지능에 지식, 경험
  • SQL, 파이썬(전처리에 대부분의 시간이 든다. 코딩 잘하면 시간 줄일 수 있다.)
  • 통계 지식, 수학 지식

3-2 데이터 기반 제품 개선 케이스

  • 개인화된 추천 엔진
    collaborative filtering
    머신러닝 과정 자동화 = MLOps
  • 사기 결제 감지
    패턴이 나타난다.
    머신 러닝 편향성 또는 머신 러닝 윤리의 중요성
  • 환자 이상 징후 예측
  • 농업용 자율 트랙터

3-3 머신러닝이란?

머신러닝 = 명시적인 프로그래밍 없이 컴퓨터에게 학습할 수 있는 능력을 주는 것.

  • 지도 학습(Supervised Learning)
    • Classification
    • Regression
       
  • 비지도 학습(Unsupervised Learning)
    • Clustering
       
  • 강화 학습(Reinforcement Learning)
     

머신러닝 모델 = 학습된 결과가 들어가 있는 블랙박스


3-4 ML 모델 개발 시 고려할 점

데이터 과학자 - 데브옵스, 백엔드 엔지니어 간 환경, 목적 차이


3-5 MLOps 란?

모델 빌드, 배포, 모니터링 전체 프로세스를 자동화하는 직군

Data Drift = 시간이 지나면서 훈련에 사용한 데이터와 실제 환경의 데이터가 다르게 변화하는 것
즉, 주기적으로 ML 모델을 다시 빌딩해주는 일이 필요하다.


DevOps vs MLOps
  • DevOps
    • Code가 작업 대상
    • Code to Service 프로세스 담당(CI: Continuous Integration, CD: Continuous Delivery)
    • On-call (어딜 가도 폰 필요함 몸값 비쌈?)

  • MLOps
    • 모델이 작업 대상
    • 모델을 계속해서 빌딩하고 배포하고 성능 모니터링 (CT: Continuous Training)
    • Latency 모니터링

MLOps 엔지니어가 알아야하는 기술

  • 데이터 엔지니어가 알아야 하는 기술
    • 파이썬/스칼라/자바
    • 데이터 파이프라인과 데이터 웨어하우스

  • DevOps 엔지니어가 알아야 하는 기술
    • CI/CD, 서비스 모니터링
    • 컨테이너
    • 클라우드

  • 머신러닝 관련 경험/지식

    • 머신러닝 모델 빌딩 배포
    • ML 모델 빌딩 프레임워크(SageMaker, Kubeflow, MLflow 등)

3-6 머신 러닝 사용 시 고려할 점

  • 데이터 편향 주의
  • 데이터를 절대적으로 신뢰하면 안된다.
  • 개인정보 다룰 때 주의

3-7 실습: 머신 러닝 모델 만들어보기

Simple ML for Sheet