2016-10-09 11 views
0

PyLDAVis를 사용하여 Python에서 LDA 항목을 시각화하려고하지만 올바르게 이해할 수 없습니다. 내 모델은 150K 단어의 vocab 크기를 가지고 있으며 약 1600 만 개의 토큰이 그것을 훈련시키기 위해 사용되었습니다.PyLdaVis : TypeError : 인덱스 개체를 내부 정렬 할 수 없으며 대신 sort_values를 사용합니다.

나는 iPython 노트북 외부에서이 작업을 수행하고 있으며이 작업을 수행하기 위해 작성한 코드입니다.

model_filename = "150k_LdaModel_topics_"+ topics +"_passes_"+passes +".model" 

dictionary = gensim.corpora.Dictionary.load('LDADictSpecialRemoved150k.dict') 
corpus = gensim.corpora.MmCorpus('LDACorpusSpecialRemoved150k.mm') 
ldamodel = gensim.models.ldamodel.LdaModel.load(model_filename) 

import pyLDAvis.gensim 
vis = pyLDAvis.gensim.prepare(ldamodel, corpus, dictionary) 
pyLDAvis.save_html(vis, "topic_viz_"+topics+"_passes_"+passes+".html") 

RAM이 30GB 이상인 고속 서버에서 2-3 시간 동안 실행 한 후 다음 오류가 발생합니다. 누군가 내가 잘못 가고있는 곳에서 도울 수 있습니까?

Traceback (most recent call last): 
    File "create_vis.py", line 36, in <module> 
    vis = pyLDAvis.gensim.prepare(ldamodel, corpus, dictionary) 
    File "/local/lib/python2.7/site-packages/pyLDAvis/gensim.py", line 110, in prepare 
    return vis_prepare(**opts) 
    File "/local/lib/python2.7/site-packages/pyLDAvis/_prepare.py", line 398, in prepare 
    token_table  = _token_table(topic_info, term_topic_freq, vocab, term_frequency) 
    File "/local/lib/python2.7/site-packages/pyLDAvis/_prepare.py", line 267, in _token_table 
    term_ix.sort() 
    File "/local/lib/python2.7/site-packages/pandas/indexes/base.py", line 1703, in sort 
    raise TypeError("cannot sort an Index object in-place, use " 
TypeError: cannot sort an Index object in-place, use sort_values instead 

답변

0

LDAVis 코드에 문제가 있으며 문제를보고했을 때 해결되었습니다.