inflearn logo
강의

講義

知識共有

実践!機械学習/ディープラーニング不正取引検知マスタークラス

実習 - オートエンコーダーを特徴抽出器として使用

오토인코더+ Knn, SVC 로 해석하는경우

71

anycad11

投稿した質問数 19

0

강사님 안녕하세요... 강의 잘듣고 잇습니다.

이번에 강의해주신 오토인코더+ 분류모델(Knn, SVC)에 관해서 질문드리겟습니다.

위모델로 이상치예측성능은 좋게 나왓는데, 실무에서는 왜 예측이 됫는지, 원본데이터의 설명변수를 가지고 설명할수 잇게할려면은 어떻게 해야하는지요?

머신러닝 딥러닝

回答 3

0

anycad11

강사님 답변감사합니다 ㅎㅎ

0

YoungJea Oh

딥러닝, SVC, 앙상블(Random Forest, XGBoost) 같은 것들은, 내부 구조가 복잡해서 "왜 이렇게 예측했는지" 이해하기 어려원서 Blackbox 모델이라고 합니다. 이번 실습의 Autoencoder + SVC 조합이 여기에 해당합니다. 해석 가능한 모델 (White box 모델)은 Decision Tree 같은 모델이고요. 그래도 굳이 원본 데이터의 설명변수가 어떻게 예측 결과에 영향을 끼지는지 아시고 싶으시면 아래에 인프런 AI 가 제안해 준 SHAP 같은 방법이 있지만 방법 자체가 이해하기 어렵고, 쉬운 접근법은 원본 변수와 인코딩 변수 간 상관분석을 하는 방법인데,

encoded = encoder_all.predict(X_train)
corr = np.corrcoef(X_train.T, encoded.T)[:30,30:]
원본 변수별로 어떤 인코딩 변수와 상관 관계가 높은지 확인해 보시면 참고가 될 수 있을겁니다. 좋은 질문 감사합니다.

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다.

anycad11님이 머신러닝과 딥러닝을 활용한 이상거래 탐지 강의를 듣고 오토인코더와 분류모델(KNN, SVC)를 적용하여 얻은 결과에 대해 더 깊이 파고들고자 하시는 점, 정말 훌륭한 접근입니다. 실무에서는 모델의 예측 이유를 설명할 수 있는 해석 가능성(interpretability)이 매우 중요합니다. 이와 관련하여 몇 가지 방법을 제안드립니다.

  1. 특성 중요도(Feature Importance):

    • SVC와 같은 모델에서는 특성 중요도를 직접적으로 제공하지 않지만, 트리 기반 모델이나 로지스틱 회귀에서는 특성의 중요도를 확인할 수 있습니다. KNN은 비선형 모델이라 해석이 직관적이지 않습니다.
    • SHAP (Shapley Additive exPlanations)이나 LIME (Local Interpretable Model-agnostic Explanations)을 통해 어떤 특성들이 예측에 얼마나 영향을 미쳤는지를 분석할 수 있습니다. SHAP는 게임 이론에 기반한 툴로써 개별 예측 값에 대한 특성의 공헌도를 제공합니다.
  2. 오토인코더의 재구성 오류 분석:

    • 오토인코더의 출력과 입력 간의 차이를 분석하여 어떤 특성이 이상치로 작용했는지를 찾을 수 있습니다. 재구성 오류가 크게 나타나는 피처가 무엇인지 분석하면, 이상치의 원인을 파악할 수 있습니다.
  3. 시각적 분석:

    • PCA나 t-SNE 같은 차원 축소 기법을 활용해 데이터의 분포를 2D 또는 3D로 시각화하고, 이상치가 어떤 특성들을 통해 분포에서 벗어났는지를 시각적으로 확인합니다.

이러한 방법들을 활용하면 예측 모델의 내부 작동 및 예측된 이상치에 대한 설명 가능성을 높여 실무 적용성을 강화할 수 있습니다. 관련된 질문과 답변이 있는 인프런 강의의 추가 학습 자료나 소스를 참고하면 도움이 될 것입니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

26,27강 진행 간 노션, html 프롬프트 파일 불일치

0

13

3

<div id="banner">배너 이미지</div> 관련 질문

0

9

1

kaggle notebook에 service key 설정이 누락된 것 같습니다

1

21

2

주말에 실행할 경우 update_economic_data_in_background에 로직 변경 필요성

1

31

1

뒤로가기 버튼 같은 것이 있나요?

0

28

1

강의 연장 문의

0

32

1

프로그램 실행시간에 대한 질문

1

25

2

비중 및 매수 종목수 조정.

1

33

2

Claude api가 소식 동기화가 늦는 문제

1

41

2

[긴급요청2] 28강 동영상 오류(27강 음성 재생) 수정 예정일자를 알려주세요

0

26

1

출력값 질문

0

32

2

슬롯 관련 문의

1

31

2

수업노트가 어디에 있나요?

0

32

1

[긴급요청] 28강 동영상 전체에 오디오가 잘못들어가있습니다.

0

26

1

실제 계좌 잔고 및 테스트중에

1

70

4

설치 및 설정 가이드 노션 자료는 없나요 ?

0

27

2

VAE 모델 loss 계산하는 부분 오류

0

272

2

features 수가 작을 경우의 Dense 설정 문의

0

241

1

라이브러리 임포트 시 경고 메세지가 뜹니다.

0

582

1

오토인코더를 특성 추출기로 사용하는 방법에 대해 질문

0

267

1

실습: 001. Imbalanced Dataset Sampling 관련 질문

0

1187

2

깃헙의 자료와 강의의 실습 내용이 다릅니다.

0

275

1

섹션2. DNN 이진분류 part2에서 pos, neg에 대해 질문드립니다.

0

581

1

SMOTE를 활용한 데이터 생성

0

567

1