看了一些跟hits相關的**,在此做個小小的總結。
個人認為hits演算法就是乙個對有向的二分圖進行操作的演算法。
hits演算法主要有兩部分構成,分別是hub值和authority值,翻譯成中文,應該是樞紐值和權威值。
hits演算法首先根據如下規則將節點劃分為兩個集合:
1.若某個節點的入度不為0,則該節點屬於a集合
2.若某個節點的出度不為0,則該節點屬於h集合
根據上述兩條規則,存在某個節點同時屬於兩個集合,這種情況是允許存在的。到此,二分圖劃分完畢,同乙個集合之間不存在連邊,所有連邊都是從h集合指向a集合的有向邊。
在文獻計量學中,以文獻引用網路為例。節點表示文獻,節點i到節點j的連邊表示文獻i引用文獻j。最終得到每篇文獻的hub值和authority值(在下文中這兩個值分別用h和a表示)。一般情況下,根據節點的a值進行排序,有時候也會用到h值。
現在來講講hits演算法的具體迭代過程,即節點h值和a值的計算方法。hits演算法通過如下兩個公式計算對應的值
hi = sum(aj)
aj = sum(hi)
稍微對這兩個公式做一些介紹。第乙個等式左邊的hi表示在第t次迭代計算時文獻i得到的h值(新得到的),等式右邊的aj表示在t-1次迭代計算時文獻j的a值,sum表示對所有被文獻i引用的文獻進行求和。同理,第二個等式左邊的aj表示第t次迭代計算時文獻j得到的a值,等式右邊的hi表示第t-1次迭代時文獻i擁有的h值,sum表示對所有引用j的文獻進行求和。當迭代完成,對所有節點的h值和a值進行歸一化處理,一般是分別除以最大的h值和a值。
當演算法在一定範圍內收斂時,停止迭代,節點根據各自的h值或a值進行排序。
上述兩個公式表明,hits演算法將某個節點擁有的h值或a值全部賦予給他的鏈出節點或鏈入節點。根據這幾天看的**,hits演算法收斂速度較慢,對排序結果的魯棒性較差,即若干節點的變動,會導致排序結果的變化。另外,hits演算法有時會發生主題便宜現象,即a值較高的節點,往往發生在網路較為密集的連通圖中。
不過,hits演算法也有他的優點。其在搜尋引擎中,與輸入的查詢較為相關,被廣泛應用於搜尋引擎的網頁搜尋中。
HITS演算法思想
在 v中的每個頁面 p都有一對非負的權重值 ap,hp 其中 ap表示權威值 hp表示中心值 設指向頁面 p的頁面為 q,ap 的值則更新為所有 hq的和 如果把頁面 p所指向的頁面稱為q,則 hp的值更新為所有 aq之和 這兩步將被重複多次 最後按照得到的權威值和中心值對頁面進行排序.若乙個網頁由...
鏈結分析演算法之 HITS演算法
hits hits hyperlink induced topic search 演算法是由康奈爾大學 cornell university 的jon kleinberg 博士於1997 年首先提出的,為ibm 公司阿爾馬登研究中心 ibm almaden research center 的名為 c...
HITS演算法的Java實現
package hits hits鏈結分析演算法 author hjm public class hits for int k 0 k0.01 pagenum authority值的更新計算 for int i 0 i hub值的更新計算 for int i 0 i system.out.print...