我想計算兩個列表的餘弦相似類似以下內容:python:如何計算兩個單詞列表的餘弦相似度?
A = [u'home (private)', u'bank', u'bank', u'building(condo/apartment)','factory']
B = [u'home (private)', u'school', u'bank', u'shopping mall']
我知道的餘弦相似性和乙方應
3/(sqrt(7)*sqrt(4)).
我試圖名單改造成類似'形式家庭銀行建築工廠「,看起來像一句話,然而,一些元素(例如家庭(私人))本身具有空白空間,一些元素有括號,所以我覺得難以計算單詞的出現。
你知道如何計算這個複雜的列表中的詞彙出現,這樣對於列表B,詞彙出現可以表示爲
{'home (private):1, 'school':1, 'bank': 1, 'shopping mall':1}?
或者你知道如何計算這兩者的餘弦相似名單?
非常感謝您
你如何定義'餘弦similarity'? 3 /(sqrt(7)* sqrt(4))''來自哪裏? – ZdaR 2015-03-02 21:10:26
我只知道定義餘弦相似度的一種方法,就像A = [2,1,1,1,0,0]和B = [A,B,B]一樣, 1,1,0,0,1,1],它們的餘弦相似度爲3 /(sqrt(7)* sqrt(4)) – gladys0313 2015-03-03 06:04:24