मैं टेक्स्ट मैट्रिक्स को TF-IDF मैट्रिक्स में कनवर्ट करने के लिए निम्न कोड चलाता हूं।कैसे टीटीएफ-आईडीएफ द्वारा गणना की जाती है scikit-learn TfidfVectorizer
text = ['This is a string','This is another string','TFIDF computation calculation','TfIDF is the product of TF and IDF']
from sklearn.feature_extraction.text import TfidfVectorizer
vectorizer = TfidfVectorizer(max_df=1.0, min_df=1, stop_words='english',norm = None)
X = vectorizer.fit_transform(text)
X_vovab = vectorizer.get_feature_names()
X_mat = X.todense()
X_idf = vectorizer.idf_
मैं निम्नलिखित उत्पादन
X_vovab =
[u'calculation',
u'computation',
u'idf',
u'product',
u'string',
u'tf',
u'tfidf']
हो और X_mat =
([[ 0. , 0. , 0. , 0. , 1.51082562,
0. , 0. ],
[ 0. , 0. , 0. , 0. , 1.51082562,
0. , 0. ],
[ 1.91629073, 1.91629073, 0. , 0. , 0. ,
0. , 1.51082562],
[ 0. , 0. , 1.91629073, 1.91629073, 0. ,
1.91629073, 1.51082562]])
अब मैं समझता हूँ कि कैसे इन अंकों की गणना नहीं है। मेरा विचार यह है कि पाठ [0] के लिए, केवल 'स्ट्रिंग' के लिए स्कोर की गणना की जाती है और 5 वें coloumn में स्कोर होता है। लेकिन चूंकि टीएफ_आईडीएफ शब्द आवृत्ति का उत्पाद है जो 2 और आईडीएफ है जो लॉग (4/2) है 1.3 9 और मैट्रिक्स में दिखाए गए 1.51 नहीं। टीके-आईडीएफ स्कोर विज्ञान-सीखने में गणना कैसे किया जाता है।
यह वास्तव में अच्छा जवाब है !! मैंने पूरे दिन इसे समझ लिया। @ खरगोश क्या आप इस उदाहरण में दिखा सकते हैं कि सामान्यीकरण कैसे लागू किया जाता है? – Himadri