Myo-Kyeong Tech Blog

[Machine Learning] 머신러닝 디자인 패턴 : 특징 저장소 (Feature Store) 본문

MLOps

[Machine Learning] 머신러닝 디자인 패턴 : 특징 저장소 (Feature Store)

myo-kyeong 2024. 4. 22. 21:06
728x90
반응형

 

애드혹(ad-hoc approach) 접근 방식의 문제점 

  • 애드혹 (ad-hoc)  접근 방식
    • 특정 문제를 해결하기 위해 임시적으로 취하는 방법으로 일회성 모델 개발이나 학습에 한해 적합 
      • ML 프로젝트에서 "그때 그때 필요에 따라" 특징 생성
  • 초기 단계나 작은 규모의 프로젝트에서는 효과적일 수 있지만, 조직이 성장하고 프로젝트가 복잡해짐에 따라 관리가 어려워지고 비효율적
    • 개별 사용자나 팀이 만든 feature는 다른 팀이나 프로젝트에서 재사용하기 어려움
    •  각 ML 프로젝트가 민감한 데이터 특징을 다르게 계산하면, 데이터 거버넌스 측면에서 문제가 생길 수 있음
      • 예를 들어, 두 개의 다른 팀이 각각 고객의 신용 점수를 다른 방식으로 계산할 경우, 이 두 점수가 실제로 어떤 의미를 가지는지 일관성이 결여되어 신뢰할 수 없는 데이터가 될 수 있음.
    • 학습 환경서빙 환경에서 데이터를 다루는 방식의 차이모델의 예측 성능에 영향을 줄 수 있음 (학습 제공 편향)
      • 예를 들어, 고객 신용 점수를 예측하기 위해서 여러 가지 특징(고객 평균 잔고, 최근 거래 기록, 계좌 개설일)들을 여러 데이터베이스에서 배치(batch)형태로 추출되어 모델 학습을 하였지만 실제 운영 환경에서는 요청이 들어올 때마다 실시간으로 처리되어야 하기때문에 일부 특징들을 실시간으로 재현하는 것이 어려울 수 있음. 
  • 이러한 문제를 해결하기 위해 특징 저장소와 같은 중양화된, 표준화된 접근 방식이 필요

 

특징 저장소(Feature Store) 디자인 패턴

 

  • 데이터에서 프로젝트와 팀 간에 공유할 수 있는 특징(feature)을 추출하고, 이를 중앙 집중화된 저장소에 보관하는 시스템
  • 두 가지 주요 디자인 특성에 의해 구축
    1. 큰 특징 데이터셋을 빠르게 처리하기 위한 도구로써의 측면
    2. 어떤 목적으로 저장할지에 대한 측면 
      • 짧은 지연 시간 액세스를 지원하는 방식(추론용)
      • 대규모 일괄 엑세스(모델 학습용)을 지원하는 방식 
  • 원본 데이터 읽기(구조화된 데이터, 스트리밍 데이터) -> 데이터 처리 프레임워크 사용하여 변환 -> 변환된 특징을 특징 저장소에 저장 -> 학습 및 서빙
  • 데이터의 일관된 처리를 보장하여 학습 환경과 서빙 환경 간의 데이터 처리 방식의 차이를 최소화 ( 학습 제공 편향 문제 해결 ) 
    • 모든 데이터 특징을 중앙에서 관리하며, 동일한 특징 생성 파이프라인을 통해 학습과 서빙 모두 데이터를 제공
  • 온 / 오프라인 (서빙 / 학습) 환경에 서로 다른 데이터 저장소를 사용하여 짧은 지연 시간과 높은 처리량을 요구하는 사례 모두 해결
    • 온라인 애플리케이션을 지원하는 프로덕션 모델은 밀리초 이내에 실시간 예측을 생성해야만 하므로 짧은 지연 시간 필수적
    • 특징 레코드들을 학습을 위해 대량 배치 작업으로 가져오기 때문에 높은 처리량에 중점을 둠
  • 여러 모델 개발자들이 일관된 특징을 공유하고 재사용할 수 있으며, 모델의 개발과 배포가 더욱 신속하고 효율적으로 이루어질 수 있음

 


REFERENCE

728x90
반응형