짧은 텍스트 클러스터링을위한 좋은 방법은 무엇입니까?


15

텍스트 클러스터링 문제를 해결 중입니다. 데이터에는 여러 문장이 포함됩니다. 짧은 텍스트에서 높은 정확도에 도달하는 좋은 알고리즘이 있습니까?

좋은 참고 자료를 제공 할 수 있습니까?

KMeans, 스펙트럼 군집화와 같은 알고리즘은이 문제에 적합하지 않습니다.

답변:


10

그것은 당신이 원하는 "최첨단"(SOTA)의 양과 얼마나 깊이 가고 싶은지에 달려 있습니다.

word2vec, Glove 또는 fastText에서 제공하는 얕은 단어 임베딩으로 살 수 있다면 Word Mover Distance (WMD [yes, really ...])는 문서 거리 (짧은)를 측정하는 훌륭한 기능이라고 생각합니다. [1] . 과거에는이 거리 측정에 대한 "자습서"를 제공하는 여러 Python 노트북을 보았으므로 실제로 쉽게 갈 수 있습니다.

그러나 SOTA에 더 관심이 있다면 문장에서 주제 모델을 학습하는 일종의 반복 네트워크를 사용하여 심층적 인 (시퀀스 표현) 학습을 조사해야합니다. 단어의 통합 (의미 적)을 포함하는 것 외에도, 이러한 접근법은 의존성을 사용하여 주제 표현을 학습함으로써 [좋은, 오래된] "단어"접근법을 뛰어 넘습니다.문장에서 단어의. 예를 들어, SLRTM (Sentence Level Recurrent Topic Model)은보다 전통적인 LDA (Blei 등) 또는 LSA (Landauer 등)의 아이디어를 기반으로하는 매우 흥미롭고 깊고 반복적 인 모델이지만 arXiv 일뿐입니다. 논문 (따라서 비 검토되지 않은 연구에 관한 모든 기본 "소금 채취 경고"가 적용되어야합니다 ...) [2]. 그럼에도 불구하고,이 논문에는이 토끼 구멍을 내려 가고 싶을 때 연구를 시작하기위한 훌륭한 포인터와 참고 자료가 많이 있습니다.

마지막으로, 이들은 각각 bag-of-words 및 시퀀스 모델에 대해 최상의 성능을 발휘할 수있는 방법이라고 주장하지 않습니다. 그러나 그들은 "최상의"SOTA가 될 수있는 모든 것에 아주 가까워 야하고, 적어도 훌륭한 출발점으로 작용해야합니다.

[1] Matt J. Kusner et al. 워드 임베딩에서 문서 거리까지. JMLR, 기계 학습에 관한 제 32 차 국제 컨퍼런스 진행, 2015.

Fei Tian et al. SLRTM : 주제를 스스로 말하기 arXiv 1604.02038, 2016.


나는 word2vec를 시도했지만 짧은 텍스트에는 잘 수행되지 않습니다.
매니아

확실하게 : 위의 대답은 짧은 텍스트 클러스터링에 word2vec (단독)를 사용하지 않는 것이 좋습니다. 대신 WMD (포함 된 벡터보다) 및 / 또는 딥 러닝 방법을 사용하는 것이 좋습니다. (그렇지만 자신의 벡터를 학습 할 수 있다면 최소한 "작동 가능한 프로토 타입"에 대해서는 소프트 코사인 유사성을 사용하여 단독으로 매우 좋은 결과를 얻을 수 있습니다.)
fnl

-1

https://github.com/RandyPen/TextCluster
KMeans 등을 능가하는 짧은 텍스트에 특정한 클러스터 방법입니다. 잠재 변수 번호를 설정할 필요가 없습니다.
기본 아이디어는 문장을 단어로 토큰 화하는 것입니다. 그런 다음 텍스트 구성 요소에 따라 다른 버킷으로 보내십시오. 각 버킷에서 문장과 버킷 간의 유사성을 계산합니다. 유사성 점수가 특정 값보다 높은 경우이 문장을 해당 버킷에 추가하고 다음 버킷을 검색하십시오.

기본


당신은 당신의 답변을 정교하게해야합니다. 링크를 인용하지 마십시오.
Michael R. Chernick '
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.