AD Features
기능 개요
AD의 pipeline
AI Contents의 pipeline은 기능 단위인 asset의 조합으로 이루어져 있습니다. AD는 총 6가지 asset의 조합으로 pipeline이 구성되어 있습니다.
Train pipeline
Input - Readiness - Preprocess - Train
Inference pipeline
Input - Readiness - Preprocess - Inference - Output
각 단계는 asset으로 구분됩니다.
Input asset
Anomaly Detection은 학습할 때 이상탐지를 하고자 하는 x 컬럼이 포함된 tabular 형태의 데이터로 동작합니다. 따라서 input asset에서는 해당 csv 데이터를 읽고 다음 asset으로 전달하는 역할을 수행합니다. 위 도표에서 보듯 다음 asset인 Preprocess asset으로 전달됩니다.
Readiness asset
Readniess asset에서는 전처리와 학습 및 추론을 진행하기 전 데이터 입력과 설정 등이 조건에 맞게 되어 있는지를 체크하게 됩니다.
Preprocess asset
Anomaly Detection은 학습 혹은 추론이 진행되기 전 데이터를 전처리하는 과정을 먼저 거치게 되며 이 과정이 process asset에서 진행됩니다. 해당 과정에서는 각 포인트마다 빈 값 혹은 NaN과 같이 정상적이지 않은 포인트를 제거하거나 scaling을 하는 등을 과정이 진행됩니다.
Train asset
Anomaly Detection에서 train asset은 이상 탐지를 위한 최적의 파라미터를 찾아내는 과정을 수행합니다. 우선 preprocess asset을 거쳐서 전처리가 완료된 데이터를 전달 받습니다.그 후 실험계획서에 미리 작성한 설정에 맞게 데이터를 그룹별, 컬럼별로 나누게 됩니다. 나누어진 데이터마다 모델별로 인스턴스를 생성하고 bayesian optimization을 통해 모델 별로 최적을 파라미터들 찾아내는 과정을 진행합니다. 이 과정이 완료되고 나면 모델 별 성능과 학습 과정에서의 추론 결과를 저장합니다.만약 x 컬럼 별로 레이블이 존재하는 경우 unsupervised 기반의 metric이 아닌, f1 score, precision, recall을 직접 maximize 하도록 설정할 수 있습니다. 이 경우 모델 별 성능이 output csv에 같이 저장되고, 모델 별 성능을 비교한 plot 또한 저장됩니다.
Inference asset
inference asset에서는 input asset, preprocess asset을 거쳐 전달받은 inference 데이터를 읽고, 다시 그룹 별, 데이터 컬럼별로 나누게 됩니다. 나누어진 데이터마다 이전 학습 단계에서 저장한 모델들 중 선택된 모델들을 불러와서 이상 탐지를 진행하고 결과를 저장합니다.만약 레이블 컬럼이 존재하는 경우 모델 별 성능이 output csv에 같이 저장되고, 모델 별 성능을 비교한 plot 또한 저장됩니다. 운영을 위한 파일은 inference_summary.yaml도 저장됩니다.