상세 컨텐츠

본문 제목

[Python] tomotopy로 Correlated Topic Model 수행하고 시각화하기

프로그래밍/NLP

by ∫2tdt=t²+c 2020. 6. 9. 22:37

본문

이전 포스팅에서 Correlated Topic Model을 통해서 뉴스 기사를 분석하고 주제 간의 상관관계를 뽑아낸 적이 있습니다. 최근 tomotopy에 CTM을 추가해서 누구나 쉽게 따라해볼 수 있게 된 김에 간단하게 따라해볼 수 있는 코드를 공유드립니다!

기본 코드는 tomotopy github의 예제코드(https://github.com/bab2min/tomotopy/blob/master/examples/ctm_network.py)와 동일하되, 전처리 부분만 한국어 전용으로 변경되었습니다.


분석이 잘 되었다면 최종적으로 생성된 topic_network.html 파일을 열어 결과물을 확인해보시면 됩니다.

네트워크를 그린 결과는 위와 같습니다. 노드(동그라미)는 각각의 주제를 나타내며 안에 들어가 있는 단어 3개는 상위 단어입니다. 상관계수가 상위 10% 안에 드는 경우 노드 사이에 선을 그어주었습니다. 선의 굵기는 상관계수의 크기를 나타냅니다. 마우스를 올리면 상관계수 값을 볼 수도 있습니다. 주제 간의 상관관계를 분석해야하는 경우가 있다면 CTM을 사용해보시기를 권합니다!

관련글 더보기

댓글 영역