HITS
HITS
1 概述
HITS(hypertext induced topic search)超链接归纳主题搜索是由kleinbers在90年代提出的基于链接分析的网页排名算法。Hits算法是利用HubAuthority的搜索方法,即中心权威的思想。
Hits算法的基本思想:
- 好的中心网页拥有很多的链出链接,这些链接都指向权威网页。
- 好的权威网页拥有很多的链入链接,这些链接都来自中心网页。
即:一个优秀的中心页必然会指向很多优秀的权威页,一个优秀的权威页必然会被很多优秀的中心页指向。
2 网页收集
在算法描述前,先描述HITS算法是如何收集待评级的网页的。HITS将根据如下描述来搜索页面集合:
- 它将搜搜字段q送至搜索引擎系统,然后收集t个排名最高的网页,这些网页都是与查询字段q高度相关的。该集合称为根集W。
- 然后它通过将指向W集合内部的网页或者W集内部网页指向的外部网页加入W集的方式来扩充W。这就得到了一个更大的集合,我们称为集合S,S被称为基本集。然而,这个集合可能相当的大,算需要通过相纸每个W集内部的网页,仅允许它们最多将K个指向自己的网页加入S来限制S集的大小。
接着HITS对S集内部的每张网页进行处理,对每张S集内部的网页指定一个权威分值和中心分值。
3 HITS算法
HITS算法的求解过程如下:
- 收集根集页面
- 将所有根集页面的A(Authority Score)和H(hub Score)赋予初值
- 根据公式计算新一轮的H和A的值
- 规范化结果
- 重复(3)(4),直到结果收敛。
具体操作:
假设待考察的网页数目为n。我们用G=(V,E)来表示S的有向链接图。V是网页集,E是有向边集。我们用L来表示图的邻接矩阵。
每张网页i的权威分值被表示为a(i),中心分值被表示为h(i)。两种分值的相互增益关系为:
将它们写成矩阵形式,用a表示所有权威分值的列向量,,
用h表示所有中心分值的列向量,,
计算权威分值和中心分值采用幂迭代方法。迭代公式如下:
初始情况如下:
在每次迭代后,数据要进行归一化处理。满足:
当时,停止迭代。
4 HITS算法和PageRank算法比较
相同:
两种算法那都利用了特征向量作为理论基础和收敛基础。这也是超链接环境下此类算法的共同特征。
不同:
- 权值的传播角度:HITS算法是将权威网页的权值经过中心网页的传递进行传播;PageRank算法是将网页的权值直接从权威网页传递给权威网页。
- 算法思想角度:HITS算法的权威值只是相对于某个检索主题的权重;PageRank算法独立于搜索主题
- 处理的数据量及用户端的等待时间角度:HITS算法对所需排序的网页数量需求少,一般为1000到5000,但由于需要从基于内容分析的搜索引擎中提取根集并扩充基本集,耗时长;PageRank算法处理的数据远远多于HITS。
- 从两者处理的对象角度:HITS处理的对象是搜索引擎针对具体查询主题所返回的记过,从几百个页面到几千个页面;PageRank处理的对象是一个搜索引擎上当前搜索下来的所有网页,一般在几千万以上。
- 从具体应用的角度:THIS一般用于全文本所有引擎的客户端,对于宽主题的所有相当有效,可以用于自动编撰万维网分类目录或者元搜索引擎的网页排序;PageRank一般用于搜索引擎的服务端,直接用于标题查询并获得较好的结果。
参考文献:
[1] [1]常庆,周明全,耿国华. 基于PageRank和HITS的Web搜索[J]. 计算机技术与发展,2008,(07):77-79.
[2] http://blog.csdn.net/androidlushangderen/article/details/43311943
HITS的更多相关文章
- yourphp读取不到hits
源代码 <YP:list name="Article" order="id desc" catid="37" limit=" ...
- EnCase v7 search hits in compound files?
I used to conduct raw search in EnCase v6, and I'd like to see if EnCase v7 raw search could hit key ...
- Hits算法
HITS(HITS(Hyperlink - Induced Topic Search) ) 算法是由康奈尔大学( Cornell University ) 的Jon Kleinberg 博士于1997 ...
- 链接分析算法之:HITS算法
链接分析算法之:HITS算法 HITS(HITS(Hyperlink - Induced Topic Search) ) 算法是由康奈尔大学( Cornell University ) 的Jo ...
- Jmeter Dash Report(HTML Report)删除Hits Per Second graph的方法
通过命令行 Non GUI的方式执行jmeter的jmx脚本可以生成HTML Report(Dash Report). 这个report默认自带了很多种图表报告,比如statistics,Over t ...
- HITS算法--从原理到实现
本文介绍HITS算法的相关内容. 1.算法来源 2.算法原理 3.算法证明 4.算法实现 4.1 基于迭代法的简单实现 4.2 MapReduce实现 5.HITS算法的缺点 6.写在最后 参考资料 ...
- kibana提示"[illegal_argument_exception] mapper [hits] cannot be changed from type [long] to [integer]"
=============================================== 2019/1/30_第1次修改 ccb_warlock == ...
- windchill StatementCache: wt.util.Cache%828007782 [size=50, count=4, hits=36, misses=4, aged=0]
StatementCache: wt.util.Cache%828007782 [size=50, count=4, hits=36, misses=4, aged=0] 方法: EXEC sys.s ...
- LoadRunner hits per second 深入理解
Hits per Second Graph The Hits per Second graph shows the number of HTTP requests made by Vusers to ...
随机推荐
- Eclipse设置Courier New字体
使用Eclipse我们会发现在字体设置里找不到钟爱的Courier New字体.其实这个字体不是没有,只是没有显示而已,它其实隐藏起来了,只需几步便可让其现原形—— 1.找到Eclipse设置字体的地 ...
- Linux共享对象之编译参数fPIC(转)
最近在看Linux编程的基础知识,打算对一些比较有趣的知识做一些汇总备忘,本文围绕fPIC展开,学习参考见文末. 在Linux系统中,动态链接文件称为动态共享对象(DSO,Dynamic Shared ...
- RK3288 device descriptor read/64, error -32
CPU:RK3288 系统:Android 5.1 主板有两个USB接口,一个接USB摄像头,一个接身份证模块. 插入摄像头可以正常打开,再插入身份证模块时,摄像头就会卡主,而且身份证模块无法识别,内 ...
- SpringCloud初体验:前言
体验了一天 SpringCloud 后发现,人们所讲的微服务架构不是一门技术,而是一种风格. 感觉确实可以这么认同,因为一套 SpringCloud 玩下来(未深入.未完整「链路追踪.动态刷新配置…… ...
- 智能家居入门DIY——【三、GP2Y10之颗粒物传感器】
这个传感器接线算比较简单的,程序也不麻烦.不过这东西是颗粒物传感器吧,不是神马PM2.5(总悬浮颗粒物),不是神马PM10(可吸入颗粒物).插个螺丝刀进去度数也是变的,不是说的很清楚原理是反光嘛……… ...
- java web 程序---javabean实例--登陆界面并显示用户名和密码
重点:注意大小写,不注意细节,这点小事,还需要请教 发现一个问题,也是老师当时写的时候,发现代码没错,但是就是运行问题. 大家看,那个java类,我们要求是所有属性均为私有变量,但是方法为公有的,如果 ...
- C++实现大正整数及其相关运算(长期更新)
/** 只考虑正数[1, +∞); “-”运算只允许大数减小数; 小端存储: */ typedef struct BigInteger0 { vector<int> v; BigInteg ...
- 5月24日上课笔记-js操作DOM
解析properpties配置文件 类加载器 ResourceBundle 一.jquery操作DOM 1.jquery操作css css("",""); cs ...
- 第5课 Qt Creator工程介绍
1. QT Creator工程管理(一个工程包含不同类型的文件) (1).pro项目文件 (2).pro.user用户配置描述文件 (3).h头文件 (4).cpp源文件 (5).ui界面描述文件 ( ...
- 详解jenkins几个有用的插件如何使用(emma,findbugs)
原文:http://myeyeofjava.iteye.com/blog/1765552 findbugs使用方式: 目的:进行代码走查的自动化,能够提示垃圾代码或者提供代码优化的建议 1.首先下载f ...