मैं अव्यक्त Dirichlet आवंटन (sklearn कार्यान्वयन) का इस्तेमाल किया के बारे में 500 वैज्ञानिक लेख-सार विश्लेषण करने के लिए और मैं सबसे महत्वपूर्ण शब्द (जर्मन भाषा में) वाले विषय मिल गया। मेरी समस्या सबसे महत्वपूर्ण शब्दों से जुड़े इन मूल्यों की व्याख्या करना है। मुझे लगता है कि प्रति विषय सभी शब्दों के लिए संभावनाएं प्राप्त होती हैं जो 1 तक जोड़ती हैं, जो मामला नहीं है।एलडीए घटकों (sklearn का उपयोग कर) की व्याख्या कैसे करें?
मैं इन मूल्यों की व्याख्या कैसे कर सकता हूं? उदाहरण के लिए, मैं यह बताना चाहता हूं कि विषय # 20 में अन्य विषयों की तुलना में बहुत अधिक मूल्य वाले शब्द क्यों हैं। Bayesian संभावना के साथ उनकी पूर्ण ऊंचाई क्या है? क्या कॉर्पस में विषय अधिक आम है? मैं अभी तक एलडीए के पीछे गणित के साथ सिद्धांतों के मूल्यों को एक साथ लाने में सक्षम नहीं हूं।
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.decomposition import LatentDirichletAllocation
tf_vectorizer = CountVectorizer(max_df=0.95, min_df=1, top_words=stop_ger,
analyzer='word',
tokenizer = stemmer_sklearn.stem_ger())
tf = tf_vectorizer.fit_transform(texts)
n_topics = 10
lda = LatentDirichletAllocation(n_topics=n_topics, max_iter=5,
learning_method='online',
learning_offset=50., random_state=0)
lda.fit(tf)
def print_top_words(model, feature_names, n_top_words):
for topic_id, topic in enumerate(model.components_):
print('\nTopic Nr.%d:' % int(topic_id + 1))
print(''.join([feature_names[i] + ' ' + str(round(topic[i], 2))
+' | ' for i in topic.argsort()[:-n_top_words - 1:-1]]))
n_top_words = 4
tf_feature_names = tf_vectorizer.get_feature_names()
print_top_words(lda, tf_feature_names, n_top_words)
Topic Nr.1: demenzforsch 1.31 | fotus 1.21 | umwelteinfluss 1.16 | forschungsergebnis 1.04 |
Topic Nr.2: fur 1.47 | zwisch 0.94 | uber 0.81 | kontext 0.8 |
...
Topic Nr.20: werd 405.12 | fur 399.62 | sozial 212.31 | beitrag 177.95 |
क्या आप इस बारे में किसी भी निष्कर्ष तक पहुंचे? मुझे एक ही समस्या का सामना करना पड़ रहा है। क्या आपने स्कोर विधि की कोशिश की है? मेरे कोड पर यह एक NaN लौटाता है ... –
बस पाया गया [यह जारी] [https://github.com/scikit-learn/scikit-learn/issues/6353) scikit-learn github पर, यह कार्यान्वयन अभी भी प्रतीत होता है उपयोगी होने के लिए बहुत सारी बग है। इसके बजाय [gensim] (https://radimrehurek.com/gensim/) का उपयोग करना बेहतर है। –
गिहब लिंक साझा करने के लिए धन्यवाद! – LSz