相似度演算法
㈠ 如何進行相似度的計算,主要用什麼方式
如何計算句子的語義相似度,很容易想到的是向量空間模型(VSM)和編輯距離的方法,比如A:「我爸是李剛」,B:「我兒子是李剛」,利用VSM方法A(我,爸,是,李剛)B(我,兒子,是,李剛),計算兩個向量的夾角餘弦值,不贅述;編輯距離就更好說了將「爸」,「兒子」分別替換掉,D(A,B)= replace_cost;
這是兩種相當呆的方法,屬於baseline中的baseline,換兩個例子看一下就知道A:「樓房如何建造?」,B:「高爾夫球怎麼打?」,C:「房子怎麼蓋?」,如果用VSM算很明顯由於B,C中有共同的詞「怎麼」,所以BC相似度高於AC;編輯距離同理;
解決這種問題方法也不難,只要通過同義詞詞典對所有句子進行擴展,「如何」、「怎麼」,「樓房」、「房子」都是同義詞或者近義詞,擴展後再算vsm或者edit distance對這一問題即可正解.這種方法一定程度上解決了召回率低的問題,但是擴展後引入雜訊在所難免,尤其若原句中含有多義詞時.例如:「打醬油」、「打毛衣」.在漢字中有些單字詞表達了相當多的意義,在董振東先生的知網(hownet)中對這種類型漢字有很好的語義關系解釋,通過hownet中詞語到義元的樹狀結構可以對對詞語粒度的形似度進行度量.
問題到這里似乎得到了不錯的解答,但實際中遠遠不夠.VSM的方法把句子中的詞語看做相互獨立的特徵,忽略了句子序列關系、位置關系對句子語義的影響;Edit Distance考慮了句子中詞語順序關系,但是這種關系是機械的置換、移動、刪除、添加,實際中每個詞語表達了不同的信息量,同樣的詞語在不同詞語組合中包含的信息量或者說表達的語義信息大不相同.What about 句法分析,計算句法樹的相似度?這個比前兩種方法更靠譜些,因為句法樹很好的描述了詞語在句子中的地位.實際效果要待實驗證實.
對了,還有一種方法translation model,IBM在機器翻譯領域的一大創舉,需要有大量的語料庫進行訓練才能得到理想的翻譯結果.當然包括中間詞語對齊結果,如果能夠利用web資源建立一個高質量的語料庫對兩兩相似句對通過EM迭代詞語對齊,由詞語對齊生成句子相似度,這個.想想還是不錯的方法!
㈡ 計算兩個概念的相似度,用什麼演算法比較好
本體映射可以用來解決本體異構問題,也是本體結盟、本體集成、本體合並、本體翻譯等的技術基礎。本文針對目前本體映射中概念相似度計算所存在的問題,提出了一種綜合的相似度計算方法。首先根據兩個概念名稱相似性過濾出最相關的概念,減少相似度的計算;然後基於概念實例、基於概念屬性、基於概念關系計算概念相似度,並進行綜合;最後對其性能進行了簡單分析。...
㈢ 數組相似度計算
你是求一個相似度演算法:
如果一個公司真實排名為x1, 而你的打分排名是 x2,
怎麼搞一個合理的評分數呢?
對差值的絕對值進行打分
|x1-x2|=0 得14分(28的一半)
|x1-x2|>=14 得 0分
就是:|差值|>14 得0分,|差值|<=14,得 14-|差值|
滿分 14X28 分, 這樣對28個排名,就可以算出得分了
相似度=得分/(14x28) X 100 (%)
用c語言編個計算小程序很簡單。
㈣ 兩段語音相似度對比,什麼演算法識別率高
可以用兩個語音軟體測試測試,說出同樣的一段話就好了,就知道哪個語音識別率好了,就像錄音轉文字助手就可以把語音轉換成文字。
點開里邊的錄音識別功能,說出你要測試的語音,就可以把語音轉成文字了,你可以去跟其他的比較一下。
㈤ 如何計算兩組數據的相似度
數據文件:x和group,8個個案。x的取值為4.5 5.6 7.9 5.2 4.6 5.4 6.4 6.2,group的取值為 1=A組,2=B組。
操作:菜單選擇
Analyze
Compare Means
Independent-Samples T Test
把x放入Test Variable(s)欄中,把group放入Grouping Variable,單擊Define Groups,分別輸入1,2,單擊Continue按鈕返回,單擊OK按鈕運行。
得t=0.178,P=0.865>0.05,2組數據間無差異。
㈥ 關聯規則演算法怎麼刻畫相似度
關聯規則原始的定義裡面並沒有相似度的概念
只有支持度和置信度,
支持度 (A->B )=P(AB) 就是AB出現的概率
支持度 (A->B )=P(B|A) 就是A發生條件下B發生的概率。
相似度公式cosine (A->B) = P(AB)/√P(A)P(B)
不知道是不是你要的
㈦ 如何計算網站網頁相似度
據統計,網頁上的大部分相同的頁面佔29%,而主體內容完全相同的佔22%,這些重復網頁有的是沒有一點改動的拷貝,有的在內容上稍作修改,比如同一文章的不同版本,一個新一點,一個老一點,有的則僅僅是網頁的格式不同(如 HTML, Postscript),文獻[Models and Algorithms for Duplicate Document Detection 1999年]將內容重復歸結為以下四個類型:
1.如果2篇文檔內容和格式上毫無差別,則這種重復叫做full-layout plicate。
2.如果2篇文檔內容相同,但是格式不同,則叫做full-content plicates
3.如果2篇文檔有部分重要的內容相同,並且格式相同,則稱為partial-layout plicates
4.如果2篇文檔有部分重要的內容相同,但是格式不同,則稱為partial-content plicates
網頁去重的任務就是去掉網頁中主題內容重復的部分。它和網頁凈化(noise rection),反作弊(antispam) 是搜索引擎的3大門神
去重在我看來起碼有四好處:減少存儲;增強檢索效率;增強用戶的體驗;死鏈的另一種解決方案。
目前從網路的搜索結果來看,去重工作做的不是很完善,一方面可能是技術難度(precision和recall都超過90%還是很難的);另一方面可能是重復的界定,比如轉載算不算重復?所以另一項附屬的工作是對個人可寫的頁面(PWP)進行特殊的處理,那麼隨之而來的工作就是識別PWP頁面。^_^這里就不扯遠呢。
問題如何解決?
網頁的deplication,我們的演算法應該是從最簡單的開始,最樸素的演算法當然是
對文檔進行兩兩比較,如果A和B比較,如果相似就去掉其中一個
然而這個樸素的演算法,存在幾個沒有解決的問題:
0.要解決問題是什麼?full-layout?full-content?partial-layout還是partial-content?
1. 怎麼度量A 和 B的相似程度
2. 去掉A還是去掉B,如果A ~B(~表相似,!~表示不相似),B~C 但是 A!~C,去掉B的話,C就去不掉。另一個更深入的問題是,演算法的復雜度是多少?假設文檔數為n,文檔平均長度為m,如果相似度計算復雜度為m的某一個復雜度函數:T=T(m),文檔兩兩比較的復雜度是O(n^2),合起來是O(n^2 * T(m)) . 這個復雜度是相當高的,想搜索引擎這樣處理海量數據的系統,這樣的復雜度是完全不能接受的,所有,另外三個問題是:
3. 如何降低相似度計算的復雜化度
4. 如何減少文檔比較的復雜度
5. 超大數據集該如何處理
第0個問題是,我們要解決的關鍵,不同的問題有不同的解決方法,從網頁的角度來看,結構的重復並不能代表是重復,比如產品展示頁面,不同的產品展示頁面就有相同的文檔結構。內容來看,復制網站會拷貝其他網站的主要內容,然後加些廣告或做些修改。所以,解決的問題是,partial-content deplication,那麼首先要抽取網頁的主體內容。演算法變成:
抽取文檔主體內容,兩兩比較內容的相似性,如果A和B相似,去掉其中一個
其次,問題2依賴於問題1的相似度度量,如果度量函數具有傳遞性,那麼問題2就不存在了,如果沒有傳遞性,我們的方法是什麼呢?哦,那就找一個關系,把相似關系傳遞開嘛,簡單,聚類嘛,我們的框架可以改成:
抽取文檔主體內容,兩兩比較內容的相似性,如果A和B相似,把他們聚類在一起,最後一個類里保留一個page
最後,歸納為幾個步驟
第一步:識別頁面的主題內容,網頁凈化的一部分,以後討論
第二步:計算相似度
第三步:聚類演算法,計算出文檔那些文檔是相似的,歸類。
核心的問題是,「如何計算相似度?」這里很容易想到的是
1. 計算內容的編輯距離edit distance(方法很有名,但是復雜度太高)
2. 把內容分成一個個的token,然後用集合的jaccard度量(好主意,但是頁面內容太多,能不能減少啊?)
好吧,但是,當然可以減少集合的個數呢,采樣,抽取滿足性質的token就可以啦,如滿足 mod m =0 的token,比如有實詞?比如stopwords。真是絕妙的注意.在把所有的idea放一起前,突然靈光一現,啊哈,
3. 計算內容的信息指紋,參考google研究員吳軍的數學之美系列。
把他們放在一起:
第一步:識別頁面的主題內容,網頁凈化的一部分,以後討論
第二步:提取頁面的特徵。將文章切分為重合和或不重合的幾個結合,hash out
第三步:用相似度度量來計算集合的相似性,包括用信息指紋,Jaccard集合相似度量,random projection等。
第四步:聚類演算法,計算出文檔那些文檔是相似的,歸類。
方法分類:
按照利用的信息,現有方法可以分為以下三類
1.只是利用內容計算相似
2.結合內容和鏈接關系計算相似
3.結合內容,鏈接關系以及url文字進行相似計算
一般為內容重復的去重,實際上有些網頁是
按照特徵提取的粒度現有方法可以分為以下三類
1.按照單詞這個級別的粒度進行特徵提取.
2.按照SHINGLE這個級別的粒度進行特徵提取.SHNGLE是若干個連續出現的單詞,級別處於文檔和單詞之間,比文檔粒度小,比單詞粒度大.
3.按照整個文檔這個級別的粒度進行特徵提取
演算法-具體見真知
1. I-Match
2. Shingling
3. Locality Sensitive Hashing.(SimHash)
4. SpotSigs
5. Combined
㈧ 相似度計算
你是求一個相似度演算法:
如果一個公司真實排名為x1,
而你的打分排名是
x2,
怎麼搞一個合理的評分數呢?
對差值的絕對值進行打分
|x1-x2|=0
得14分(28的一半)
|x1-x2|>=14
得
0分
就是:|差值|>14
得0分,|差值|<=14,得
14-|差值|
滿分
14x28
分,
這樣對28個排名,就可以算出得分了
相似度=得分/(14x28)
x
100
(%)
用c語言編個計算小程序很簡單。
㈨ 相似度的計算 用哪個演算法 協同過濾 演算法
SIM = Structural SIMilarity(結構相似性),這是一種用來評測圖像質量的一種方法。由於人類視覺很容易從圖像中抽取出結構信息,因此計算兩幅圖像結構信息的相似性就可以用來作為一種檢測圖像質量的好壞.
首先結構信息不應該受到照明的影響,因此在計算結構信息時需要去掉亮度信息,即需要減掉圖像的均值;其次結構信息不應該受到圖像對比度的影響,因此計算結構信息時需要歸一化圖像的方差;最後我們就可以對圖像求取結構信息了,通常我們可以簡單地計算一下這兩幅處理後的圖像的相關系數.
然而圖像質量的好壞也受到亮度信息和對比度信息的制約,因此在計算圖像質量好壞時,在考慮結構信息的同時也需要考慮這兩者的影響.通常使用的計算方法如下,其中C1,C2,C3用來增加計算結果的穩定性:
2u(x)u(y) + C1
L(X,Y) = ------------------------ ,u(x), u(y)為圖像的均值
u(x)^2 + u(y)^2 + C1
2d(x)d(y) + C2
C(X,Y) = ------------------------,d(x),d(y)為圖像的方差
d(x)^2 + d(y)^2 + C2
d(x,y) + C3
S(X,Y) = ----------------------,d(x,y)為圖像x,y的協方差
d(x)d(y) + C3
而圖像質量Q = [L(X,Y)^a] x [C(X,Y)^b] x [S(X,Y)^c],其中a,b,c分別用來控制三個要素的重要性,為了計算方便可以均選擇為1,C1,C2,C3為比較小的數值,通常C1=(K1 x L)^2, C2=(K2 xL)^2, C3 = C2/2, K1
㈩ 如何實現兩個聲音相似度匹配演算法
作為自然語言理解的一項基礎工作,詞語語義相似度度量一直是研究的重點。語義相似度度量本身是一個中間任務,它是大多數自然語言處理任務中一個必不可少的中間層次,在自然語言處理中有著廣泛的應用,如詞義消歧、信息檢索以及機器翻譯等。 本文的核心內容是漢語詞語語義相似度演算法研究以及如何將其應用於跨語言信息檢索(Cross-Language Information Retrieval, CLIR)領域。首先對語義相似度度量演算法進行綜述,然後重點描述基於HowNet的語義相似度度量演算法,提出根據知識詞典描述語言(Knowledge Dictionary Mark-up Language, KDML)的結構特性將詞語語義相似度分為三部分進行計算,每部分採用最大匹配的演算法,同時加入義原深度信息以區別對待不同信息含量的義原。較以往同類演算法,其計算結果具有區分度,更加符合人的主觀感覺。 本文嘗試將所建立的漢語語義相似度度量模式應用於跨語言信息檢索系統。跨語言信息檢索結合傳統文本信息檢索技術和機器翻譯技術,在多方面涉及到語義問題,是語義相似度良好的切入點。兩者的結合主要體現在兩方面:(1)將語義相似度度量應用於查詢翻譯,利用語義相似度對查詢關鍵詞進行消歧翻譯,提高翻譯質量;(2)將語義相似度應用於查詢擴展,使擴展內容與原查詢具有更高相關性,以提高檢索的召回率和准確率。 本文提出相對客觀的評價標准,如為單獨衡量詞義消歧的性能,而使用第三屆詞義消歧系統評價會議(The 3rd Evaluating Word Sense Disambiguation Systems, SENSEVAL-3)語料進行測試;為衡量應用語義相似度於跨語言檢索後的性能,又使用第九屆文本檢索會議(The 9th Text Retrieval Conference, TREC-9) CLIR評價任務的查詢集、語料庫和結果集進行評估。這使得我們的實驗結果相對公正客觀,具有一定可比性。本文對原有英漢跨語言信息檢索系統進行一定程度的改進,使得各種相關演算法都可方便地在系統中進行集成,成為一個研究跨語言信息檢索的實驗平台,其系統的設計思想充分體現模塊化和擴展性。 綜上,本文通過綜合分析主流的語義相似度演算法,而提出一種新的基於HowNet的漢語語義相似度演算法,並給出其在英漢跨語言信息檢索中的嘗試性應用,希望能給相關領域的研究者有所借鑒。