bab2min / tomotopy

Python package of Tomoto, the Topic Modeling Tool
https://bab2min.github.io/tomotopy
MIT License
557 stars 62 forks source link

hLDA의 유효한 토픽은 무엇일까요? #133

Closed haeunkim832 closed 3 years ago

haeunkim832 commented 3 years ago

안녕하세요 hDLA코드를 돌리면서 의문이 생겨서 여쭤봅니다.

토픽의 번호가 1~40이면 모두 있는 것이 아닌 것과 is_live_topic이 동일한 맥락일까요? 그리고 유효한 토픽의 정의가 궁금합니다.

bab2min commented 3 years ago

@haeunkim832 네, train 과정에서 새 토픽이 생성되고 소멸되는게 반복되기 때문에 전체 데이터 상에 1 ~ 40번 토픽이 들어가있더라도 특정 train 시점에서는 일부 토픽들이 소멸되고 존재하지 않는 상황일 수가 있습니다. 그래서 is_live_topic이라는 메소드로 특정 토픽이 소멸된 토픽인지 아닌지를 판단하게 한 거구요. 살아있는 토픽만 따로 골라내서 0번부터 차례로 배치할수도 있겠지만 이 경우 매 train step마다 토픽을 재배치해야해서 속도가 너무 느려지는 문제가 있어서 어쩔수 없이 토픽 번호는 그대로 유지하고 죽은 토픽의 자리는 공석으로 비워두는 식으로 구현했습니다~