當前位置:首頁 >  站長 >  搜索優(yōu)化 >  正文

TF-IDF:傳統(tǒng)IR的相關(guān)排序技術(shù)

 2013-05-24 09:23  來源: Rude的SEO博客   我來投稿 撤稿糾錯

  域名預(yù)訂/競價,好“米”不錯過

那一年,菊花還只是菊花,2B還是考試時涂卡使用的鉛筆,黃瓜只有蔬菜的功能,信息檢索技術(shù)(Information Retrieval)還只是簡單的使用在圖書館、資料庫等處。

也正是在那一年,信息檢索的相關(guān)排序技術(shù)很風(fēng)靡的是TF-IDF。

或許此刻你會十分想問,啥是TF-IDF?嗯,不捉急,在找尋這個問題的答案之前,先來看一個問題。

在一堆書籍里面,你想找尋和OOXX主題相關(guān)的資料(不要想歪),你用什么標準來判定這堆書籍里面的A比B更符合你的主題呢?

思考一分鐘。

你或許會說,看一下這些書籍的名字,看看哪些書名里面包含我要找的主題的相關(guān)信息,然后再在剩下的這部分書籍中概覽一下內(nèi)容,看看哪個更符合我想要的。

想法很好。

人是這么想的,信息檢索系統(tǒng)也得這么干才能給出我們最想要的結(jié)果,但是一個問題又暴露了出來——程序看不懂文字無法判定。

來,再給你一分鐘時間,想想怎么幫程序解決這一問題。

嗯,你發(fā)現(xiàn)了,你想查詢的主題中所包含的詞匯跟這堆書籍中的某個子集內(nèi)容中的詞匯是有交集的。

對,用上次在搜索引擎原理簡介的文章中我們談到的基于詞典的分詞技術(shù),來找尋交集。

先來給定一個詞典,它是N個詞的集合。

∑={t1,t2,…,tn}

而對于你搜索的條件q和這堆書籍中的某一本d,則可以根據(jù)這個詞典表示為:

q={q1,q2,…,qn}

d={d1,d2,…,dn}

其中q1為t1這個詞匯在你的搜索條件q中出現(xiàn)的次數(shù),q2為t2這個詞匯在搜索條件q中出現(xiàn)的次數(shù),依次類推。如果qn為零,則表示第n個詞在q中沒有出現(xiàn)。

設(shè)定w1=d1/∑dn,則w1即為詞匯t1在d中出現(xiàn)的頻率,此刻d即可表示為:

d=,wi(i=1,2,3,…,n)即為詞頻(term frequency)。

對于一些質(zhì)量很高的信息(書籍、文獻等),詞頻是一個很好的,可以通過程序語言實現(xiàn)的,表達詞匯在文檔中所占權(quán)重的方式。

嗯?疑問出來了,一些詞比如“我們”、“大家”等這種詞匯也肯定會在多篇文章中出現(xiàn),但是用此來衡量的話顯然上面下的結(jié)論是不成立的啊。

恭喜你想到了這一步,此種詞匯對于文檔內(nèi)容的辨別來說,實在木有太大的意義。

來,找特征,去掉這種詞匯的影響。

啊,這些詞匯會在多個文章中同時出現(xiàn)。

用ki(i=1,2,3,…,n)來表示ti這個詞匯在書籍的集合D中所涉及的書籍次數(shù),M表示書籍D的大小,則ki/M的值即可以說明一些問題,我們定義這個值為ti的文檔頻率(document frequency)。

顯然,文檔頻率越高,這個詞的權(quán)重就應(yīng)該越低。

為了便于計算,常用的會是與文檔頻率成反比的一個量,我們稱之為倒置文檔頻率(inverse document frequency),定義為:

IDFi=lg(M/ki)

這樣以來,wi就變成了(哥從網(wǎng)上找了一個公式)

 

給定某種權(quán)重的定量設(shè)計,求文檔和查詢的相關(guān)性就變成了求d和q向量的某種距離,最常用的是余弦(cos)距離(這句話果斷不懂,完全復(fù)制來的)。

 

雖然說上面的這個算法在理論上看起來比較垃圾(不考慮文章的意思,將文章看成詞的集合),但是從實踐下來看,其價值還是得到了普遍的認可(尤其是對于上述提到的圖書檢索來說)。

當然,對于目前web上這些個魚龍混雜的網(wǎng)頁,僅僅依靠td-idf是不夠的(很容易造成一大堆關(guān)鍵詞堆砌的網(wǎng)頁獲得好的排名),這也促成了基于鏈接關(guān)系等一系列算法的誕生。

原文地址:

申請創(chuàng)業(yè)報道,分享創(chuàng)業(yè)好點子。點擊此處,共同探討創(chuàng)業(yè)新機遇!

相關(guān)文章

熱門排行

信息推薦