中文單詞的表示以及相似度計算方法

2021-09-28 19:38:58 字數 1138 閱讀 8173

詞的獨熱表示(one-hot representation)

給定乙個詞典:[我,是,計算機專業,的,學生]

1、求給定單詞的表示:

我:[1,0,0,0,0]

計算機專業:[0,0,1,0,0]

學生:[0,0,0,0,1]

每個單詞的長度是詞典的長度,詞典長度為5,對於詞典和第乙個單詞」我「來說,詞典中」我「出現,因此該位置為1,」是「沒有出現,該位置為0,「計算機專業」沒有出現,該位置為0,「的」沒有出現,該位置為0,「學生」沒有出現,該位置為0。因此單詞「我」的表示為[1,0,0,0,0]。

2、求給定句子的表示

給定乙個詞典:[我,去,打,籃球,又,逛街]

boolean representation --在表示時,只要詞典中的詞在句子**現,都標記為1,不管出現幾次。

s = 我去打籃球又去逛街:[1,1,1,1,1,1]

t = 我去打籃球:[1,1,1,1,0,0]

count representation--在表示時,需要標記詞典中的詞在句子**現的頻次,比如,「去」字,出現兩次,在相應位置標記為2.

s = 我去打籃球又去逛街:[1,2,1,1,1,1]

t = 我去逛街:[1,1,0,0,0,1]

詞的分布式表示(distributed representation)

相似度計算方法

假設s = (s1,s2,s3) , t = (t1,t2,t3)

歐式距離 = |s-t| = sqrt((s1-t1)^2+(s2-t2)^2+(s3-t3)^2)  ,其值越小,說明兩個句子越相似。

使用boolean representation表示時,s和t句子的相似度為sqrt((1-1)^2+(1-1)^2+(1-1)^2+(1-0)^2+(1-0)^2) = sqrt(2)

余弦相似度 = s*t/(|s|*|t|)           s*t是s和t的內積, 余弦相似度值越大,說明兩個句子越相似。

使用boolean representation表示時,s和t句子的相似度為(1*1+1*1+1*1+1*1+1*0+1*0)/[sqrt((1)^2+(1)^2+(1)^2+(1)^2+(1)^2+(1)^2)*sqrt((1)^2+(1)^2+(1)^2+(1)^2+(0)^2+(0)^2)] = sqrt(2/3)

計算文字相似度 最準的中文文字相似度計算工具

向ai轉型的程式設計師都關注了這個號?text2vec,chinese text to vetor.文字向量化表示工具,包括詞向量化 句子向量化 本文相關 獲取 ai專案體驗位址 文字相似度計算 query和docs的相似度比較 result 文字相似度計算 儘管文字相似度計算的基準方法很簡潔,但用...

結巴分詞關鍵詞相似度 中文文字相似度計算工具集

一 基本工具集 1.分詞工具 a.jieba 結巴中文分詞 b.hanlp c.盤古分詞 開源中文分詞元件 盤古分詞是乙個中英文分詞元件。作者eaglet 曾經開發過ktdictseg 中文分詞元件,擁有大量使用者。作者基於之前分詞元件的開發經驗,結合最新的開發技術重新編寫了盤古分詞元件。d.pul...

基於Map Reduce的相似度計算

基於map reduce的相似度計算 不久前 6.29 參加了chinahadoop的夏季沙龍,聽了人人的大牛講了基於map reduce的相似度計算的優化,感覺對map reduce程式設計模型的理解又進一步加深了,在這裡把該演算法總結成博文,以期能夠更加透徹的理解該演算法。相似度的計算在文字的分...