프로덕션 ML 시스템: 데이터를 변환해야 하는 경우

원시 데이터는 특성을 추출 (변환)해야 합니다. 변환이 필요한 경우 어떻게 해야 할까요? 일반적으로 특성 추출은 다음 중 한 가지 단계에서 수행할 수 있습니다. 다음 두 마침표:

  • 모델 학습
  • 모델 학습

학습 전 데이터 변환

이 접근 방식에서는 다음 두 단계를 따릅니다.

  1. 코드 작성 또는 특수 도구 사용 원시 데이터를 변환해야 합니다
  2. 변환된 데이터를 모델이 수집할 수 있는 위치(예: 저장되도록 합니다

장점

  • 시스템은 원시 데이터를 한 번만 변환합니다.
  • 시스템은 전체 데이터 세트를 분석하여 가장 적합한 혁신 전략을 수립하는 데 도움이 될 수 있습니다

단점

학습-서빙 편향은 시스템이 동적 작업을 할 때 더 위험합니다. (온라인) 추론입니다. 동적 추론을 사용하는 시스템에서 원시 데이터 세트는 일반적으로 예측을 제공하는 소프트웨어와 다르며 학습-서빙 편향이 발생할 수 있습니다 반면에 정적 (오프라인) 추론을 사용하는 시스템은 때때로 동일한 소프트웨어를 사용할 수 있습니다.

학습 중 데이터 변환

이 접근 방식에서 변환은 모델 코드의 일부입니다. 모델 원시 데이터를 수집하여 변환합니다.

장점

  • 변환을 변경하더라도 동일한 원시 데이터 파일을 계속 사용할 수 있습니다.
  • 학습 및 예측 시 동일한 변환이 보장됩니다.

단점

  • 복잡한 변환은 모델 지연 시간을 늘릴 수 있습니다.
  • 변환은 각 배치마다 발생합니다.

배치별로 데이터를 변환하는 것은 까다로울 수 있습니다. 예를 들어 Z-점수 정규화를 사용합니다. 원시 수치 데이터를 변환할 수 있습니다 Z-점수 정규화에는 평균과 특성의 표준 편차입니다. 그러나 배치당 변환 수로 인해 전체 데이터 세트가 아닌 데이터 1개 배치를 사용하면 됩니다. 따라서 배치의 처리 능력이 한 배치에서 Z-점수가 -2.5이면 동일한 의미를 갖지 않습니다. 다른 배치에서는 -2.5로 설정할 수 있습니다 이 문제를 해결하려면 시스템에서 평균 및 표준 편차를 미리 계산할 수 있습니다. 모델의 상수로 사용할 수 있습니다.