• 카테고리

    질문 & 답변
  • 세부 분야

    딥러닝 · 머신러닝

  • 해결 여부

    해결됨

classification을 통한 cluster 해석

23.07.16 17:57 작성 23.07.16 18:01 수정 조회수 227

1

안녕하십니까 교수님 cluster 해석과 관련하여 질문이 있어 글을 작성하게 되었습니다. 각 cluster별로 명확하게 어떤 feature가 많이 고려되었다는 것을 확인할 수 있는 방법이 있을까요?

 

clustering을 진행한 뒤 다음과 같은 방법으로 cluster를 해석하려 하였습니다.

1) 군집화를 진행하여 0, 1, 2, 3 의 cluster가 도출됨

2) cluster를 label 데이터로 하여 classification을 진행

3) feature importance를 활용하여 기술적으로 cluster를 해석

 

여기서 질문드리고 싶은 점은.. 각 군집별로 feature importance를 도출할 방법이 없을까요? (또는 XAI등 다른 방법이 있을까요??)

현재 feature importance는 cluster 0, 1, 2, 3을 모두 반영한 feature importance를 도출해 명확하게 cluster의 특징을 해석하기 어려운 것 같습니다.. 각 cluster별로 어떤 feature가 많이 고려되었다는 것을 확인할 수 있는 방법이 있는 지가 궁금합니다.

 

항상 감사드립니다.

답변 1

답변을 작성해보세요.

1

안녕하십니까,

음, 좋은 질문이군요. 다만 저도 적용해 보지 않은 방식이고, clustering과 feature importance는 알고리즘 자체가 다른데 이를 이용해서 각 cluster 별로 어떤 feature가 고려되었다는 것을 찾을 수 있을지는 의문입니다.

clustering은 k-means의 경우 거리 기반으로 비슷한 피처들을 하나의 군집으로 묶여내는 알고리즘 인데 반해서, feature importance는 지도학습의 타겟 데이터와 피처 데이터를 기반으로 트리 기반의 머신러닝 모델이 학습될 때 얼마나 자주 노드가 분할이 되는지에 따라 피처별로 importance가 정해 지는 방식입니다.

때문에 서로 다른 두개의 알고리즘이 연관되어 각 cluster 별로 어떤 feature가 중요하게 동작하는지 찾아낼 수 있을지는 개인적으로 의문입니다.

다만 저도 궁금증을 가지고 검색을 해본 결과 아래와 같이 적어주신대로 시도를 해본 자료를 찾을 수 있었습니다.

1) 군집화를 진행하여 0, 1, 2, 3 의 cluster가 도출됨

2) cluster를 label 데이터로 하여 classification을 진행

3) feature importance를 활용하여 기술적으로 cluster를 해석

https://towardsdatascience.com/interpretable-k-means-clusters-feature-importances-7e516eeb8d3c

해당 url의 자료와 적어주신 방법간의 차이는 one-vs-all 기반으로 binary classification을 적용한 것입니다.

그밖에 여러 방식으로 clustering을 interpretation 하는 방식을 소개하고 있으니, 참조해 보시면 좋을 것 같습니다.

감사합니다.

두니님의 프로필

두니

질문자

2023.07.19

교재 내용이 아닌데도 레퍼런스까지 참조하시어 답변해주셔서 정말 감사드립니다.