[原]基于统计的中文网页正文抽取的研究

来源:互联网 发布:破解软件3687474扣 编辑:程序博客网 时间:2024/06/08 09:55

版权说明:本论文为原创性文章,已经公开发表在《电脑知识与技术》2008年01期。未经许可不可剽窃、抄袭、转载,违者责任自负。引用者请注明出处如下: 

赵文, 唐建雄, 高庆锋. 基于统计的中文网页正文抽取的研究[J]. 电脑知识与技术, 2008,Vol.1,No.1,P.120-123.

 


 

论文部分:

基于统计的中文网页正文抽取的研究

赵 文1 ,唐建雄2,高庆锋3

 (武汉理工大学 计算机科学与技术学院,湖北 武汉 430063)

  要:信息抽取技术是一种广泛运用于互联网的数据挖掘技术。其目的是从互联网海量数据中抽取有意义、有价值的数据和信息,从而能更好的利用互联网资源。文中采用一种统计网页特征的方法,将中文网页中的正文部分抽取出来。该方法首先将网页表示成基于XML的DOM树形式,利用统计的节点信息从树中过滤掉噪音数据节点,最后再选取正文节点。该方法相比传统的基于包装器的抽取方法,具有简单,实用的特点,试验结果表明,该抽取方法准确率达到90%以上,具有很好的实用价值。

关键词:中文信息处理;信息抽取;正文抽取

中图分类号:TP391           文献标识码:A
 

Content Extraction from Chinese Web Page
 Based on Statistics

ZHAO Wen1, TANG Jian-Xiong2,Gao Qing-Feng3
(1.Department of Computer Science and Technology, Wuhan University of Technology, Wuhan, Hubei 430063, China1; 2.Department of Computer Science and Technology, Wuhan University of Technology, Wuhan, Hubei 430063, China; 3.Department of Computer Science and Technology, Wuhan University of Technology, Wuhan, Hubei 430063, China)
 
Abstract: Information extraction is a kind of data mining technology which is widely used in Internet. The purpose is to extract meaningful and valuable information from the huge date of the Internet in order to make full use of the resource of the Internet. It extracts text content from Chinese web pages by a statistical approach in the article. The method uses a DOM tree based on XML to represent a web page according to HTML tags, and then deletes the noise node by statistical data of node, at last chooses the node which contains text content. In comparison with traditional methods based on wrappers, this method is more simple and useful. Experimental results show that the extraction precision is higher than 90%, and the method has good value of practice.

Key words: Chinese information processing; information extraction; content extraction
 

1.引言

随着互联网信息技术的不断发展,互联网的信息量也日益膨胀。近年来,全球因特网上的信息数据正以爆炸式的速度在增长。据IDC报告称,从现在到2010年,预计信息量将以每年57%的速度增长,在2010年信息总量将达到988EB (1EB=10亿GB),约为2006年的6倍,相当于有史以来所有书籍数字信息量的1800万倍。面对如此巨大的互联网信息库,如何快速、有效、经济地检索到某个主题的所有相关信息就成了当前一个十分热门的研究课题。这时,搜索引擎的出现无疑给人们带来了极大的方便。然而,随着互联网信息的不断巨增和搜索引擎所覆盖网页范围的不断扩大,人们发现,即使是借助搜索引擎的帮助,他们也越来越难有效和准确的找到自己所需要的信息资源。
        众所周知,互联网上的资源是个很复杂的信息数据源。因此,为了更好的利用互联网资源,为了帮助人们更快速,更有效,更便捷的搜索到自己所需要的信息,就要利用各种数据挖掘方法,对巨大的互联网信息数据进行搜索,提取,分析和整理。其中最关键的步骤之一就是对互联网信息的抽取。

2.网页文本信息抽取技术

2.1基于分装器的网页文本信息抽取技术

该方法属于传统的网页信息抽取方法。它使用分装器(wrapper)[1][2]来抽取网页中感兴趣的数据。分装器

(也称为:包装器)是一个程序,它根据一定的信息模式识别知识从特定的信息源中抽取相关内容,并以特定形式加以表示。由于网页结构的复杂性及不规范性,一个包装器的实现一般只能针对一个信息源。因此,对特定的数据源需要编写对应的分装器或抽取规则。如果待抽取的信息是来自很多信息源,就需要很多分装器,这样分装器的生成和维护就成了一件复杂的工作。对于网络上大量各类网页的正文信息抽取,都使用特定分装器来完成显然是不合算的,人们需要的是一个普遍适用的分装器。文献[3]、[4]、[5]均采用这类技术,并结合了模式匹配和归纳式学习等技术,取得一定的效果,但实现起来相对比较复杂。

2.2基于统计的网页正文抽取技术

文献[6]提出一种基于统计的正文抽取方法。该方法克服了传统的网页内容抽取方法需要针对不同的数据源构造不同的包装器的缺点,具有一定的普遍性。但该方法对网页正文信息的抽取依赖阈值P和T,阈值P决定了选择网页正文的文本块,P值过大,这就存在正文文本块的漏选;P值过小,抽取结果就可能存在难以去除的噪声。实验结果表明,该方法对正文较少和table单元混有噪声的网页不能进行正确的抽取。

2.3基于数据挖掘思想的网页正文抽取技术

这类方法把数据挖掘技术应用到对网页自由文本的处理中,大大提高对网页正文(文章)抽取的准确率,突破了数据挖掘技术在应用方面对结构化数据的依赖,是一种很好的正文抽取技术。但仍然有一些普遍性问题有待进一步改善。以下两种正文抽取技术均属于这类方法。

文献[7]提出一种基于双层决策的网页正文抽取技术。该方法将对网页正文范围的全局决策和对决策范围内具体段落是否确是正文的局部决策这两个层面的决策有机结合,同时引入特征向量提取和决策树等方法来实现上述两个层面的自动决策。这种分层的思想既符合人们判断正文的步骤,又很好的满足了机器学习从不同层面提取各自特征的需要。实验表明,上述基于双层决策的方法能够精确地抽取出绝大部分新闻网页的正文。但该方法需要预先收集一定的页面并对正文进行人工标注,作为训练的样本语料,工序较为繁琐,另外对于有评论的新闻网页,正文较少的新闻网页和多板块的新闻网页的抽取精度有待进一步提高。

文献[8]提出一种基于线性化的段落划分聚类的网页正文抽取技术。该方法突破了网页结构树形化的束缚,提出了网页结构线性化的思想,采用将网页代码线性化重构,利用网页自身特点及文本分类思想进行文本块过滤,利用段落聚类得到网页正文。具体步骤包括,网页源代码线性化重构,HTML 噪声标签过滤,原始数据集过滤划分,段落聚类生成网页正文脉络段落,吸收伪噪声生成正文。该抽取方法准确度高、鲁棒性好、响应时间快。但也有些不完善的地方,如处理网页前置噪声的能力较弱,聚类算法的时间复杂度较高。

3.基于统计的网页正文抽取

本文的基本思想是采用基于统计的网页正文抽取技术,并在该方法的具体实现上加以一定的改进。有关网页正文抽取的几点说明如下:

(1)过去对正文的界定常常仅局限于文本内容,正文范围内的一些非文本的内容:如画中画、内嵌广告、插图、部分超链接文字等等,均被排除。根据对大量网页页面的分析研究发现,正文范围内的插图大多与正文相关,尤其是新闻网页,部分超链接也与正文相关联,如果这些信息全部被过滤掉,实际上就是丢弃了网页的一些有用信息。因此,应该把这些信息也作为正文的一部分,一并抽取。
         (2)
对于正文范围内的广告、与正文无关的超链接图片或文字等噪声数据,往往出现在单独的<table><div>标签中,这部分数据,是噪声数据,应该过滤删除。
         
(3)对于正文的标题,默认获取<title>标签中的文本作为正文的标题。

基于统计的网页正文抽取方法分为网页的规范化、网页的预处理、网页的噪声过滤、网页的正文抽取,四个步骤。下面将对这四个步骤一一进行详细的介绍。

3.1网页的规范化
由于某些原因,目前互联网上的大量网页存在许多不规范的地方,这对的抽取工作带来极大的不便,因此首先需要对网页进行规范化处理,将其转换成格式良好的XML文档。主要的规范化要求如下:
(1)在网页的头部添加标准的XML声明。
如:<?xml version="1.0" encoding="UTF-8">
(2)统一网页的编码形式。将编码为GBKGB2312UTF-8等等的网页统一转换成UTF-8字符集编码形式。
(3)保证网页有一个根元素。默认以<html>为网页的根元素。
(4)替换可能引起错误的字符。除了标记中的字符以外,对于文本中出现的<”>&"5种字符将引起HTMLXML解析错误,必须用XML中的实体引用将其替换。
(5)起始标记和结束标记应当匹配。即每个开始标记<xxx>都必须对应一个结束标记</xxx>
(6)标记的大小写保持应一致。<table><Table>是完全不同的两个标记。默认所有标记字符均为小写字母。
(7)所有标记必须是正确嵌套的。如:<a><b></a></b>是不正确的嵌套。正套形式应该是<a><b></b></a>
(8)所有标记的属性值都必须放在引号中。如:<a href="www.w3c.org">
(9)元素中的属性不允许重复。
经过上面的处理,现在已经把一个网页由一个不规范的HTML文件转换成了标准的格式良好的XML文件。

3.2网页的预处理
经过规范化后的网页已经呈现一个树状结构,网页预处理的目的就是要对网页中无意义的标记进行过滤或转换,将网页进一步转换成一个只包含有意义信息的树状结构。
(1)删除网页中与正文抽取不相关的信息,如:注释、JavaScript代码等等。
(2)经过对大量网页的分析后,发现网页的正文部分往往位于某个<table><div><tbody>等此类标记中,因此,先将网页中所有的<html><table><div><body><tbody>等标记全部转换为<table>标记,以便下一步的提取工作。
(3)为了保持正文格式,对于网页中<p><br><tr>这类标记将其转换成换行符。 (4)删除网页中<style><textarea><object>这类与正文无任何关系的标记。
(5)删除网页中无内容的空白标记,去除冗余的嵌套标记。如:空白标记:<a></a>,冗余嵌套标记:<a><a>…</a></a>转换成<a>…</a>
现在已经得到的是一个以<table>节点块为主要节点的网页结构树。

3.3网页的噪声过滤
网页的噪声过滤,就是要从网页中过滤掉与正文无关的信息。经过对网页排版的研究发现,位于网页正文中的广告图片、无关链接等大多数的噪声信息一般都集中在某些<table>节点中,因此需要将这些<table>节点找出来,并将其从结构树中删除。
首先依次提取出全部的<table>节点,对每个<table>节点统计它的4样特征,即:普通中文字符数,链接字符数,链接数,标点符号数。有两种情况的<table>节点被判定为噪声信息:
(1)(普通中文字符数+标点符号数)== 0,而链接字符数>0,即:该节点包含的信息全部为链接形式信息。
(2)(普通中文字符数+标点符号数)!= 0,则:
链接字符数/(普通中文字符数+标点符号数)>P  时,即该节点包含的信息大部分为链接形式信息。这里的伐值P初步设定为0.8

3.4网页的正文抽取         
经过上面3步的处理,分析得知,现在网页的正文部分就在某个<table>节点中,下面只需要将包含中文字数和标点符号数最多的<table>节点和其子节点一并提取出来,就可以得到网页正文了。
对于每个<table>节点计算比值:(<table>的中文字符数+标点符号数)/(全部中文字符数+全部标点符号数),并选取该比值最大的<table>节点,将其提取出来。
对提取出来的<table>节点中的内容,基本就是网页的正文部分了。本方法由于先前采用了噪声过滤技术,因此即使对与正文文字较短(比如:只包含一两句话)的正文<table>节点一般情况下也能够很好的抽取出来。但由于现在的网页文章中也经常包含不相关的链接,因此还需要对该<table>中的不相关的链接加以过滤删除,保留相关的链接和文字。这里采用简单的对链接形式的分析来判断链接的相关性。一般来说,正文上下文中的链接都是与正文相关的,不相关的链接和<table>节点已经在第3步被过滤掉,但不排除部分网页正文中仍然有少量的与正文无关的链接。这类链接往往以首页或导航类页面为主,如:http://www.163.com/http://news.163.com/http://photo.163.com/index.html等。将这类链接删除掉,最后将正文按一定的格式保存为XML文件方便以后的处理。例如:图1即为页面文件http://tech.qq.com/a/20070928/000063.htm 抽取正文后保存的XML文件。

 
1 抽取正文并保存后的XML文件
 

4.试验测试及结果分析

为了考察该方法的实际可行性,本文采用Java语言编写了程序对该方法进行试验测试。本文从不同的网站中随机选取了一些网页做为测试数据,试验的结果证明该方法表现出较好的鲁棒性,具有一定实用价值。试验测试结果如表1所示:


1 试验测试结果

测试网页数据来源
网页总数(个)
正确抽取数(个)
错误抽取数(个)
准确率(%)
http://www.qq.com/
64
61
3
95.3
http://www.tom.com/
60
57
3
95
http://www.163.com/
60
59
1
98.3
http://www.sina.com.cn/
60
56
4
93.3
http://cn.yahoo.com/
62
58
4
93.5
http://www.xinhuanet.com/
60
57
3
95
http://www.china.com/
70
67
3
95.7
合 计
436
415
21
95.2

 
该程序从7个不同网站一共抽取了436个的网页,大部分为包含正文的新闻类页面,抽取的平均准确率达到95.2%。我们对抽取出错的网页进行了分析,发现抽取错误的主要因素为以下几点:
(1)正文段落中包含表格,导致表格抽取后文字显示排版混乱。
(2)正文中包含过多的词语或关键字的无用链接,由于这类文字本身属于正文的一部分,不能删除,而链接却没太多的价值。
(3)论坛页面,包含多个含有正文文字的table,往往导致抽取正文部分不完整,或抽取的正文非正文主要部分。
 

5.未来的工作

该方法利用统计特性对网页的正文进行抽取具有简单,有效的特点。目前,网页的形式日趋多样化,各类标签,广告也层出不穷,网页正文中也经常的出现各种关键字和词语的相关链接,这些都对抽取工作带来很大的障碍,个别网页的正文抽取还存在一些问题。下一步的研究工作主要包括:对现有抽取系统相关问题的改进,进一步提高通用性和准确性;另外,我们还准备从语义的角度考察网页正文中的链接文字,以及一些可能为噪声的短文字段,利用词语、句子、段落的相关度计算方法来更好的过滤掉这些噪声信息,从而能实现高精度的网页正文抽取。
 
献:
[1] 朱明. 《数据挖掘》[M]. 合肥:中国科学技术大学出版社, 2002.
[2] 李保利, 陈玉忠, 俞士汶. 信息抽取研究综述[J]. 计算机工程与应用. 2003.10.
         [3] C-H. Hsu. Initial Results on Wrapping Semistructured Web Pages with Finite-State Transducers and Contextual Rules[C]. Workshop on AI and Information Integration, in conjunction with the 15'th National Conference on Artificial Intelligence (AAAI-98), Madison, Wisconsin, July 1998.
         [4] I. Muslea, S. Minton, C. Knoblock. STALKER: Learning Extraction Rules for Semistructured, Web-based Information Sources[C]. Workshop on AI and Information Integration, in conjunction with the 15'th National Conference on Artificial Intelligence (AAAI-98), Madison, Wisconsin, July 1998.

         [5] 朱永盛, 武港山. 基于Web的新闻信息抽取[J]. 计算机工程. 2006,32(10):74-76.

         [6] 孙承杰, 关毅. 基于统计的网页正文信息抽取方法的研究[J]. 中文信息学报. 2004,18(5):17-22.

         [7] 胡国平,张巍,王仁华. 基于双层决策的新闻网页正文精确抽取[J]. 中文信息学报. 2006,20(6):1-9.

         [8] 蒲宇达, 关毅, 王强. 基于数据挖掘思想的网页正文抽取方法的研究[C]. 第三届学生计算语言学研讨会论文集. 沈阳, 2006:246-250.

 
作者简介:赵文(1979-),男,硕士研究生,湖北武汉人,主要研究方向:信息抽取、文本分类、网页分类; 唐建雄(1958-),男,副教授,湖北武汉人,主要研究方向:多媒体视频、宽带网络;高庆锋(1979-),男,硕士研究生,湖北黄冈人,主要研究方向:网格计算、分布式计算。
原创粉丝点击