2017-07-27 9 views
0

私は2つのドキュメント間のjaccardの類似性を見つけようとしています。しかし、私は難しい時間を感じています。sklearn.metrics.jaccard_similarity_score()がシーンの背後でどのように働いているのか理解しています。Jaccardのsim = docs/termsの用語の共通点です。pythonでJaccardの類似点

は例の下に考えてみましょう: 二つの文書のための私のDTMは:FUNC上記

array([[1, 1, 1, 1, 2, 0, 1, 0], 
     [2, 1, 1, 0, 1, 1, 0, 1]], dtype=int64) 

intersection of terms in both the docs = 4 
total terms in doc 1 = 6 
total terms in doc 2 = 6 
Jaccard = 4/(6+6-4)= .5 

誰かが私がここで行方不明です明らかに何かがあるなら、私は理解して助けてください:ジャカードSIMが私は自分のスコアを見つけようとしています

print(sklearn.metrics.jaccard_similarity_score(tf_matrix[0,:],tf_matrix[1,:])) 
0.25 

スコア私を与えます。

答えて

0

としてはhere述べ:バイナリと多クラス分類で

を、ジャカード類似性係数スコアが分類精度に等しいです。

したがって、一致する要素の割合を計算しています。だからあなたは0.25を得ているのです。

+0

ありがとうございました!それで、周波数が一致するのはどこですか(第2項と第3項)?もしそうなら、それはドキュメントの類似性スコアを得る有効な方法でしょうか? – Apoorv

+2

Set Jaccardの類似性はドキュメント間の類似性の尺度になりますが、 'TF-IDF'などのメトリックはドキュメントの語彙モデルでより一般的です。 – enezhadian

+0

ところで 'https:// radimrehurek.com/gensim/index.html'をチェックしてください。あなたが必要なものを見つけるかもしれません。 – enezhadian

関連する問題