인프런 커뮤니티 질문&답변
One class classification (anomalies detection)
작성
·
375
0
안녕하세요 선생님!
코딩 입문자인 제가 어쩌다가 회사에서 머신러닝 프로젝트를 맡게 되어 여기저기서 도움을 구하다가 선생님 강의를 찾게 되어 열심히 따라가는 중입니다. 어렵지만 쉽게 설명해주셔서 정말 도움이 많이 됩니다.
수업 내용 참고해 가면서 드디어 ML 모델을 제 프로젝트에도 적용해보려고 시도했는데요. 데이터를 가만히 들여다보니 제가 가진 데이터는 one class classification, 그러니까 anomalies detection 을 하는 모델을 만들어야 하는 것으로 생각되었습니다. (imbalanced data, 아주작은 비정상 샘플 (혹은 없음) vs 많은 정상 샘플).
질문: 수업 내용 중에서는 신용카드 사기예측 분석 부분이 가장 잘 맞을 것 같아 맞춰서 적용해보는 중인데요. 만약 정상 샘플만 존재해도 one class classification 이 가능한지 궁금하구요. 또한, 제가 가진 데이터와 같은 One class classification (anomalies detection) 시 제가 집중해야 할 수업 부분과 해당 분석을 위한 데이터 준비할 때 주의사항, 추천모델, 평가 방법에 대한 조언을 부탁드리겠습니다.
답변 1
1
안녕하십니까,
아쉽게도 제 강의에는 One class classification에 대한 내용은 담고 있지 않습니다.
말씀하신대로 비슷한 내용은 신용카드 사기 검출과 같은 imbalanced dataset에서 적용 시 LightGBM의 하이퍼파라미터 튜닝, IQR 검출 및 아웃라이어 제거, Smote 기반의 Oversampling에 대해서 자세히 말씀드리고 있지만, 한개의 결정값만 One class classification 모델에 대해서는 다루고 있지 않습니다.
정상 샘플만 있을 경우 강의의 신용카드 사기 검출 모델을 적용하면 성능이 좋을 것 같지는 않습니다.
인터넷을 검색해보니, 아래 링크에 scikit learn을 이용하여 One class classification에 대한 모델을 시도한 글이 있군요. 참조해 보시는 것도 좋을 것 같습니다.
https://gaussian37.github.io/dl-concept-One-Class-Classification-for-Images-with-Deep-features/
해당 링크는 딥러닝 기반으로 피처들을 뽑았는데, 해당 피처를 Resnet으로 만든 부분을 대신해서 적용하려는 데이터를 입력하시면 어떨까 싶습니다.
감사합니다.





