发明内容
有鉴于此,本发明的主要目的在于提供一种网页锚文本去噪系统及方法,能为用户提供更高质量的网页锚文本数据,进而提高用户的网页搜索效率。
为达到上述目的,本发明的技术方案是这样实现的:
本发明提供了一种网页锚文本去噪系统,包括语料爬虫系统、原始网页数据库、原始正文数据库,关键在于,该网页锚文本去噪系统还包括语料自动训练单元、锚文本去噪单元、锚文本数据库以及基本词表和中心词表;其中,
语料自动训练单元,用于根据基本词表对语料爬虫系统或原始网页数据库提供的原始网页数据进行迭代训练,分析出网页包含的中心词,并利用得到的中心词更新基本词表和中心词表;所述迭代训练为:选择并下载一定数量的网页作为初始语料;对下载的网页进行正文提取,并将提取的正文存入语料库;对语料库中的语料进行分词,并对经过正文提取和分词处理得到的词信息进行相关性计算,得到每个词的权值;再将得到权值的词与基本词表中的词进行比较,找出与基本词表最相关的词,更新基本词表;其中,所述与基本词表最相关的词为所述权值大于所述权值阀值的词;
锚文本去噪单元,根据语料自动训练单元更新的中心词表或基本词表、以及原始正文数据库提供的原始正文数据,对原始网页锚文本进行去噪处理,得到过滤后的网页锚文本;
锚文本数据库,用于存储原始网页锚文本以及锚文本去噪单元过滤后的网页锚文本。
上述方案中,所述锚文本数据库进一步包括原始锚文本数据库和更新锚文本数据库,分别存储去噪前的原始网页锚文本和去噪后的更新网页锚文本。
上述方案中,所述语料自动训练单元进一步包括语料库、网页正文提取系统、分词系统、相关性计算模块以及比较模块,其中,
语料库,用于存储下载的网页作为语料;网页正文提取系统,用于对下载的网页进行网页正文提取,并将提取的正文存入语料库;分词系统,用于对语料库中的语料进行分词;相关性计算模块,用于对经过正文提取和分词处理得到的词信息进行相关性计算,得到每个词的权值;比较模块,将得到权值的词的权值与设置的权值阀值比较,并比较得到权值的词与基本词表中的词,得到与基本词表最相关的词更新基本词表。
本发明还提供了一种网页锚文本去噪方法,包括设置初始基本词表,该方法还包括:
A、下载需要的网页,利用基本词表对下载的网页进行迭代训练,得到下载网页的中心词,更新中心词表和基本词表;
B、根据最新的中心词表或基本词表,分析原始网页正文和原始网页锚文本,去除与网页正文不相关的网页锚文本;
步骤A中所述迭代训练包括:
A1、选择并下载一定数量的网页作为初始语料;对下载的网页进行正文提取,并将提取的正文存入语料库;
A2、对语料库中的语料进行分词,并对经过正文提取和分词处理得到的词信息进行相关性计算,得到每个词的权值;之后将得到权值的词与基本词表中的词进行比较,找出与基本词表最相关的词,更新基本词表;
其中,所述权值大于所述权值阀值的词为与基本词表最相关的词。
其中,步骤B之后进一步包括:存储去噪后的网页锚文本。
该方法还包括:预先设置权值的阀值,所述权值的阀值每次迭代时可变。
上述方案中还包括:重复执行步骤A2一次以上,每次迭代的更新基本词表作为下一次的基本词表,得到迭代训练后最新的基本词表。
本发明所提供的网页锚文本去噪系统及方法,利用基本词表对大量原始网页数据进行迭代训练得到网页包含的中心词,再利用得到的中心词表或更新的基本词表对原始锚文本和原始正文进行分析,去除与网页正文不相关的锚文本,这样,即可去除网页锚文本中的垃圾数据,减少网页锚文本的索引数据,从而减少磁盘和内存的使用;并且,为网页搜索提供更高质量的网页锚文本数据。
当用户进行网页搜索时,就从更新网页锚文本中给出包含用户输入关键词的网页锚文本,如此,由于去除了网页锚文本中的垃圾数据,保留了更加相关的数据和网页,增强了网页搜索结果的相关性,大大提高了网页搜索结果的质量和网页搜索效率,能为用户提供更好的搜索体验。
具体实施方式
本发明的基本思想是:利用基本词表对原始网页数据通过迭代训练分析出网页包含的中心词,再利用得到的中心词表或更新的基本词表对原始锚文本和原始正文进行分析,去除与网页正文不相关的锚文本,得到过滤后的更新网页锚文本。进一步的,在用户进行网页搜索时,从更新网页锚文本中提供包含用户输入关键词的网页锚文本,供用户选择相应链接。
这里,所述基本词表、中心词表也可以称为基本词库和中心词库,其中,初始基本词表可由人工设置,后续的基本词表、中心词表根据迭代训练结果不断更新。
图1为本发明网页锚文本去噪系统及搜索系统的组成结构示意图,图1中虚线上方是本发明网页锚文本去噪系统,虚线下方是网页搜索系统部分。如图1所示,本发明的网页锚文本去噪系统包括语料爬虫系统、原始网页数据库、原始正文数据库,关键在于,该系统还包括语料自动训练单元、锚文本去噪单元、锚文本数据库以及基本词表和中心词表,锚文本数据库进一步包括原始锚文本数据库和更新锚文本数据库。
其中,语料爬虫系统通常由爬虫服务器实现,负责从互联网上下载需要的网页,放入原始网页数据库中存储;同时,将下载的网页作为训练语料送入语料自动训练单元进行后续的迭代训练,该爬虫系统属于锚文本去噪系统的相关辅助部分。原始网页数据库主要用于保存由语料爬虫系统从互联网上下载的网页,并在需要时为语料自动训练单元提供原始网页数据进行迭代训练。原始正文数据库用于存储网页正文,并将网页正文提供给锚文本去噪单元进行分析。
所述语料自动训练单元,用于根据基本词表对原始网页进行迭代训练,分析出网页包含的中心词,并利用得到的中心词更新基本词表和中心词表。该语料自动训练单元进一步包括语料库、网页正文提取系统、分词系统、相关性计算模块以及比较模块,其中,语料库,用于存储下载的网页作为语料;网页正文提取系统,用于对下载的网页进行网页正文提取,并将提取的正文存入语料库;分词系统,用于对语料库中的语料进行分词;相关性计算模块,用于对经过正文提取和分词处理得到的词信息进行相关性计算,得到每个词的权值;比较模块,将得到权值的词的权值与设置的权值阀值比较,并将得到权值的词与基本词表中的词进行比较,得到与基本词表最相关的词,更新基本词表。
锚文本去噪单元,利用更新的中心词表或基本词表结合原始正文数据库中的原始正文数据,对原始锚文本数据库中的网页锚文本进行去噪处理,得到过滤后的网页锚文本,形成更新锚文本数据库。锚文本数据库用于存储网页锚文本,包括原始锚文本数据库和更新锚文本数据库两部分,分别存储去噪前的原始网页锚文本和去噪后的更新网页锚文本。
对网页锚文本去噪后,当用户进行网页搜索时,网络侧服务器会根据更新的网页锚文本为用户提供相关的链接。具体的,如图1所示,由索引服务器对网页正文和更新网页锚文本进行索引,得到的索引数据由索引服务器保存,根据得到的索引数据,检索服务器在用户进行浏览时为用户提供网页的检索。
基于图1给出的网页锚文本去噪系统,本发明的网页锚文本去噪方法如图2所示,包括以下步骤:
步骤201:设置初始基本词表。
对于初始基本词表一般可采用与现有过滤词表同样的方式预先设置。
步骤202:从互联网下载需要的网页,利用基本词表对下载的网页进行迭代训练,分析出下载网页中包含的中心词,更新中心词表和基本词表;下载的网页还可以同时放入原始网页数据库存储。
这里,所述下载需要的网页是指下载与训练语素相关的网页,网页链接从原始网页数据库中提取。具体如何下载属于现有技术,在此不再赘述。所述利用基本词表在第一次训练时是初始基本词表,之后就是上一次更新的基本词表;所述中心词表在第一次训练后由于之前没有中心词表,可创建一个中心词表,之后每次就更新已有中心词表的内容。
本步骤的关键是迭代训练,所述迭代训练具体包括以下步骤:
步骤202a:选择并下载一定数量的网页作为初始语料。
一般,在初始情况下,可下载大约1000万资讯方面的网页作为初始语料,之所以选择资讯方面的网页是因为资讯方面的网页质量比其它网页的质量高,当然也可以下载其它网页作为初始语料。并且,通过人工抽查内容比较好的网页。对于初始语料数据库不宜太大,也不宜太小,因为太大会使迭代训练收敛比较慢,而太小会使训练出的中心词分布不均匀。
步骤202b:对下载的网页进行正文提取,并将提取的正文存入语料库。
具体如何进行网页正文提取属于现有技术,在此不再详细描述。网页正文的提取具体由网页正文提取系统完成,网页正文提取系统将网页正文中特殊的词信息进行标识,如文字粗细、颜色等特殊文字,以便后面进行相关性计算。
步骤202c:对语料库中的语料进行分词。
一般,通过分词系统对语料进行分词处理,标出语料的词性、长度,统计相应语料在网页正文中出现的次数等信息,以便后续进行相关性计算。
步骤202d:对经过正文提取和分词处理得到的词信息进行相关性计算,得到每个词的权值。
这里,所述进行相关性计算是指:先根据预定的规则对每个词的不同特性参数赋值,例如:根据文字粗细、颜色、词性、长度赋值,字体粗特性参数值高;字体颜色不同于正文的颜色特性参数值高;名词的特性参数值高于其它词性的特性参数值;长度在4字节和8字节之间的特性参数值高,之后,将每个词的各个特性参数值相加再乘以一个权重系数,即可计算得到相应词的权值。其中,权重系数根据经验值设定,一般取值在0~1之间。
在实际应用中,对于不同的词在不同网页出现时,可能具有不同的特性,例如:“新闻”这个词在网页A中出现时具有文字粗细的特性,但不具有颜色特性,而在网页B中出现时可能没有文字粗细的特性,但具有颜色特性;或者,在不同网页颜色不同,都会使权值不同。
步骤202e:将步骤202d中得到权值的词与基本词表中的词进行比较分析,找出与基本词表最相关的词,增加到基本词表中更新基本词表。
这里,一般会预先设置权值的阀值,所述找出与基本词表最相关的词为:将步骤202d中计算出的每个词的权值与权值的阀值进行比较,权值越大的表示越相关,权值大于阀值的就是与基本词表最相关的词;之后,将权值大于阀值且基本词表中未包含的词追加到基本词表中。所设定的权值的阀值不是固定不变的,可根据当时的迭代效果进行修改,如:设定第一次迭代的阀值为8,第二次迭代的阀值为7,第三次迭代的阀值6等等。
举个例子来说,假设当前基本词表中只有一个词“软件”,经过网页正文提取和分词处理后得到的词有:“软件下载”、“办公软件”、“游戏软件”,通过相关性计算得到:“办公软件”权值最高,“游戏软件”权值其次,“软件下载”权值第三,但是,“办公软件”和“游戏软件”的权值都高于设定的权值阀值,而“软件下载”的权值低于设定的权值阀值,则将“办公软件”和“游戏软件”追加到基本词表,而“软件下载”暂时不加到基本词表。
之后,将每次更新后的基本词表作为下一次迭代的基本词表,重复执行步骤202c~202e进行迭代训练一次以上,得到本轮迭代训练最新的基本词表。这里,一般可以进行三至五次迭代训练,具体迭代训练的次数可通过人工抽查词表的质量进行控制,如果发现词表的相关性不是很好就可以终止训练。一轮迭代训练的时间周期与进行训练的机器配置的高低、需迭代次数、语料库的大小有关,没有具体时间范围。
首次迭代训练后的训练语料可以根据基本词表的扩大而扩大,根据下载网页的速度和网页的质量基本控制在10亿以内,一般超过1000万就需要分机器进行训练,但处理的基本思路是一样的。
这里,步骤202e每次迭代训练得到的、追加到基本词表中的词同时也作为中心词,更新中心词表。
步骤203:根据当前得到的、最新的中心词表或基本词表,分析原始的网页正文和原始的网页锚文本,去除与网页正文不相关的网页锚文本。
这里,最新的中心词表与基本词表的内容基本一致,用基本词表或中心词表完成网页锚文本去噪都是可以的。但由于基本词表和中心词表的更新周期不同,基本词表在不断更新,而中心词表一个周期才更新一次,所以基本词表通常在迭代训练时使用,而给网页锚文本去噪一般使用中心词表。
步骤204:将去噪后新的网页锚文本数据存储为新的网页锚文本数据库,在用户进行网页搜索时提供相应的网页锚文本。
在实际应用中,可以根据需要重复执行步骤202~204,及时更新网页锚文本数据库。
举个例子来说,假设设置的初始基本词表包括:“即时通讯”、“即时通讯网”、“IM”;当前指向链接WWW.qq.com的原始网页锚文本包括:“bt下载---IM聊天软件”、“即时通讯网-不错的网站”、“天空网下载-IM软件”。本例中,以更新后的基本词表为基准,完成网页锚文本的去噪处理。那么,网页锚文本的去噪方法为:
步骤a:从互联网抓取一批网页,根据基本词表对所抓取的网页进行迭代训练,分析出与基本词表相关的关键词,更新基本词表。
这里,第一次训练所采用的基本词表是初始基本词表,经过迭代分析出“IM聊天软件”、“IM软件”等新词,用新词更新基本词表,基本词表就更新为:“即时通讯”、“即时通讯网”、“IM”、“IM聊天软件”、“IM软件”。
步骤b:根据更新后的基本词表,对当前的原始网页锚文本进行去噪,去除一些不相关的文本文字。比如:去噪后的网页锚文本为“IM聊天软件”、“即时通讯网”、“IM软件”。
这样,当用户搜索“bt下载”、“天空网”等关键词时,就不会出现即时通讯网的页面,从而提高了网页搜索结果的相关性,提升了用户体验度。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。