正则表达式在旅游突发事件信息抽取中的应用Word下载.docx

上传人:b****6 文档编号:16632310 上传时间:2022-11-24 格式:DOCX 页数:5 大小:19.92KB
下载 相关 举报
正则表达式在旅游突发事件信息抽取中的应用Word下载.docx_第1页
第1页 / 共5页
正则表达式在旅游突发事件信息抽取中的应用Word下载.docx_第2页
第2页 / 共5页
正则表达式在旅游突发事件信息抽取中的应用Word下载.docx_第3页
第3页 / 共5页
正则表达式在旅游突发事件信息抽取中的应用Word下载.docx_第4页
第4页 / 共5页
正则表达式在旅游突发事件信息抽取中的应用Word下载.docx_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

正则表达式在旅游突发事件信息抽取中的应用Word下载.docx

《正则表达式在旅游突发事件信息抽取中的应用Word下载.docx》由会员分享,可在线阅读,更多相关《正则表达式在旅游突发事件信息抽取中的应用Word下载.docx(5页珍藏版)》请在冰豆网上搜索。

正则表达式在旅游突发事件信息抽取中的应用Word下载.docx

  文献标识码:

A

  DOI:

10.3969/j.issn.1003-6970.2015.11.005

  0引言

  随着我国经济的发展,旅游行业出现前所未有的发展势头,由于各种原因,旅游突发事件时有发生。

事件一旦发生就会在互联网上迅速传播,真实消息和虚假消息在网络上混杂蔓延。

快速、准确地从海量的网络信息从抽取旅游突发事件信息是旅游突发事件应急处理的关键所在,有助于旅游管理部门把握事态的发展趋势。

旅游突发事件信息会出现旅游事故相关的特征词汇,如“踩踏”、“溺水”、“事故”、“伤亡”。

除了这些的事故相关的特征词汇外,还有与事件主题相关的词汇:

一是在文体中会产生事件主题专有的新词、网络词汇,如“天价虾”、“酒托”、“零团费”、“影子团友”、“刀客”;

二是事件所涉及的时间、地点、人物、组织机构等命名实体,如“善德活海鲜烧烤”、“大研古城”、“朝阳旅行社”。

这些新词、网络词汇、命名实体在中文分词处理阶段往往属于未登录词汇的范围,难以切分出来,但是这些词汇具有很强的关联性和稳定性,在判断网页信息是否属于旅游突发事件的过程中有特殊的作用。

在从网页中抽取旅游突发事件信息的过程中,为了对新词、网络词汇、命名实体等未登录词进行有效的利用,本文提出利用正则表达式从网页抽取旅游突发事件的方法。

  1网页信息抽取

  信息抽取(InformationExtraction)是指从一段文本中抽取指定的一类信息(例如事件、事实)并将其(形成结构化的数据)填入一个数据库中供用户查询和使用的过程。

以因特网作为信息源,从Web网页中抽取信息的过程称为Web信息抽取。

Web信息抽取的目标是从Web页面中抽取用户感兴趣的信息并过滤掉不相关的信息,将分散在半结构化Web页面中的信息提取出来,并以结构化、语义更为清晰的模式表示。

在Web网页源码中含有大量与正文内容无关的代码,如网页文档类型,网页注释、javascript代码、CSS代码、导航超链,这些无用的信息被称为网页噪声。

网页信息抽取的核心问题是从网页源码中剔除网页噪声,保留网页正文内容。

随着数据挖掘的深入应用,网页信息抽取技术也在快速发展,目前已经出现了多种网页信息抽取方法,各种方法的技术原理也各不相同。

根据各种信息抽取工具所采用的原理,现有的工具可分为5类:

基于自然语言处理(NaturalLanguageProcessing,NLP)方式的信息抽取、包装器(Wrapper)归纳方式的信息抽取、基于本体(ontology)方式的信息抽取、基于HTML结构的信息抽取和基于Web查询的信息抽取。

由于Web网页基本上都是采用HTML语言编写的,基于HTML结构的信息抽取成为目前使用最广泛的一种抽取方式。

HTML文本属于半结构化的文本,经过处理就能转化成一个结构化的DOM树(DocumentObjectModel),在DOM树的基础上再结合其它技术衍生出了很多种信息抽取方法。

李效东等把DOM树中的路径作为信息提取的“坐标”,并设计了一种归纳学习算法来半自动地生成用于包装器提取信息的提取规则。

张昕等提出一种利用视觉特征的页面分割算法,结合DOM树,从网页中提取出正文的方法。

HTML是一种标记语言,通过标记符号标记要在浏览器中显示的各部分网页内容,每个HTML标记符号有特定的语义。

网页文档类型,网页注释、javascript代码、CSS代码、导航超链这些网页噪声是通过特定的HTML标记符号标记出来的,因此利用正则表达式中的匹配功能可以识别网页噪声,再利用正则表达式的替换功能实现剔除网页噪声,保留网页中有用信息。

  2正则表达式

  正则表达式(RegularExpressions)是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。

正规表达式最初出现于理论计算机科学的自动控制理论和形式语言理论中,以后其它一些领域尤其是数学上对它进行了扩展研究,数学上使用正则集合的数学符号来描述此模型。

目前大多数高级程序设计语言支持正则表达式,例如C++、Java,C#、PHP语言都有内置的正则表达式功能。

在程序设计语言中,正则表达式是一种可以用于模式匹配和替换的模板,一个正则表达式就是由普通的字符以及特殊字符组成的字符模式,将某个字符模式与所搜索的字符串进行匹配、替换、提取子串。

  正则表达的三种基本功能是:

匹配、替换和提取。

匹配功能,可以把用特殊字符串表达的匹配模式与数据文件、程序输入或者WEB页面的表单输入等目标对象进行比较,利用机器自动验证数据格式是否规范。

替换文本功能,用于在文档中使用匹配模式来标识特定文字,然后将其删除或进行替换。

提取功能,用于根据模式匹配,从字符串提取子字符串。

正则表达式在高级程序设计语言中通常用来处理一系列复杂字符串的查找、替换和提取等工作,表现出来的性能优良。

正则表达式快速匹配文本的特点可以用于信息抽取。

  HTML文档本身就是一系列字符组成的字符串,在信息抽取的过程中完全符合正则表达式的功能特点。

采用基于正则表达式抽取网页信息,首先把网页源码作为字符串处理,由用户根据HTML标记符号的语义,编写出一组正则表达式来匹配用户想查找的网页噪声。

利用正则表达式的替换功能,将网页噪声替换成空白字符,从而达到网页去噪的目的。

  3基于正则表达式的旅游突发事件信息抽取  利用正则表达式抽取旅游突发事件信息,从网页源码到成功抽取目标信息需要经过四步处理。

第一步,从互联网上采集网页,由于互联网上网页数量巨大,通常使用网络爬虫采集网页。

第二步,网页清洗,编写正则表达式,利用正则表达式的匹配替换功能剔除网页噪声,生成原始文档。

第三步,抽取网页正文,通过合适的算法定位正文部分。

第四步,判断是否属于旅游突发事件。

经过第四步的判断后,如果属于旅游突发事件,则网页URL、网页标题、网页正文内容存入本地数据库,否则丢弃上述信息。

  3.1网页采集

  网络爬虫是一种自动下载网页的程序,采集网页就是利用网络爬虫工具下载网页到本地机器。

网络爬虫基本工作原理是从1个或若干初始网页的URL开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽取新的URL放入队列。

通常的网页URL有固定的模式,基本都是以http:

//开头,匹配URL的正则表达式为:

  http:

//f[\w-]+\.)+[\w-]+(/[\w-./?

%&

=]*)?

(1)

  根据正则表达式

(1),网络爬虫从网页源码中能准确提取到URL。

  在采集特定信息网页时,使用主题爬虫较好,主题爬虫只采集与特定主题相关的网页。

与综合性搜索引擎所用的通用爬虫相比,主题爬虫最明显的特点是需要对爬取的网页内容进行主题相似性分析、确定爬行路径,从而大大减少了爬取的网页数量、降低系统开销、提高了网页质量。

  3.2网页清洗

  剔除网页噪声的过程也称为网页清洗。

通过分析网页源码,网页噪声是由有限的几个HTML标记符号标记的。

HTML语言中每个标记符号都有特定的语义,因此,利用正则表达式中匹配功能,通过HTML语言中的标记符号可以找到网页源码中的网页噪声,再利用正则表达式中的替换功能将匹配项替换成空白字符就实现噪声剔除。

例如,javascript代码被封闭在标记符号之间,可以用高级语言内置的正则表达式将javascript代码剔除掉。

以Java语言为例,调用String类的实例方法replaceAll("

(?

is).*?

"

,"

)卖现剔除javascript代码。

网页清洗过程中要用到的正则表达式如表1所示,在高级程序设计语言中应用表1中正则表达式时,要启用单行和不区分大小写模式匹配,或在正则表达式中使用内嵌标志(?

is)。

网页清洗步骤如下:

  1.抽取标题。

网页标题既可以在标记块抽取,也可以在标记块中标记块中抽取;

  2.抽取标记块中的内容。

网页正文内容和标题都在网页源码的标记块中,直接抽取标记块中内容,作为余下步骤的输入;

  3.剔除javascript代码;

  4.剔除CSS代码;

  5.剔除超链;

  6.剔除HTML符号实体,将文本中空白符号和其它特殊符号移除;

  7.剔除HTML标记符号,清除文本中残余标记符号。

  3.3抽取网页正文

  网页源码经过清洗步骤后,去掉网页噪声,留下的文档我们称为原始文档,从原始文档中准确地抽取正文内容是网页信息抽取的最终目的,这需要合适的算法确定原始文档中正文块的位置。

我们从互联网随机抓取了20篇新闻网页,用软件清洗网页后得到原始文档,观察这些原始文档,我们发现,原始文档中不再含HTML标记符号,原始文档中包括网页正文内容和一些无用的信息,无用信息包括大量空白行、孤立的1行文字、每行字数很少的连续两三行的文字快,这些无用信息都是由于剔除HTML标记产生的;

在原始文档中同一段落的正文内容基本是一行一行地紧密排在一起的,正文内容不同段落之间存在1行空白。

根据直观分析的结果,我们设计了一个定位正文块的简单算法,算法步骤如下:

  1.计算每行的非空白字符数,转步骤2;

  2.如果连续2行的文字数大于15,则标记为正文的起始行,转步骤3,否则转步骤1;

  3.计算剩余行的非空白字符数;

  4.如果连续3行字数为0或到文件尾,则标记为文本结束行,转步骤5,否则转步骤3;

  5.根据起始行和结束行,提取起始行和结束行之间的文本内容。

  3.4判断旅游突发事件

  从原始文档抽取到正文内容后,还需判断抽取到正文内容是否属于旅游突发事件。

考察互联网上旅游突发事件网页信息,其文体具有一些特征词汇,我们把这些特征词分成三类。

第一类属于突发事件主体对象,如:

“驴友”,“白驾游”,“游客”,“旅游”,“观光”,“旅行”,“旅行社”,“导游”,“景区”,“景点”。

第二类属于突发事件热词,如:

,“网友爆料”,“天价”,“酒托”,“零团费”、“影子团友”、“刀客”。

第三类体现突发事件过程,如:

“报警”,“坠落”,“失联”,“失踪”,“事故”,“死”,“迷路”,“殴打”,“营救”,“被困”,“挤踏”,“踩踏”,“救援”,“幸存”,“溺亡”,“遇难”,“伤”,“失火”,“暴雨”,“迷路”,“摔伤”,“中毒”,“探险”,“劫持”,“地震”,“海啸”,“困住”等。

利用这些特征词,我们制定一个简单的判断策略,如果正文内容出现第一类特征词,且正文内容出现过第二类特征词或第三类特征词,就认为正文内容属于旅游突发事件。

上述判断策略,利用正则表达式很容易实现。

  当某个旅游突发事件形成热点,在网上迅速扩散时,就会产生由该事件形成的新词,如“天价虾”,与事件有关的地点、机构单位等命名实体也会成为热门词语,用正则表达式匹配这些旅游突发事件而产生的新词、机构单位等命名实体更加高效地判断网页正文内容是否属于需要提取的目标信息。

  4试验结果

  本文用JAVA语言实现了上述方法,选取了300篇网页源码作为测试数据,其中包含20篇旅游突发事件网页。

结果统计过程中,抽取正文内容不完整,或抽取到不属于正文的内容,都统计为错误抽取。

试验结果如表2所示:

  对正文内容抽取错误的网页进行分析,主要有3种情况:

  1.网页前两行内容太短,被当成噪声忽略掉,内容提取不完整;

  2.网页嵌套表格,内容提取不完整;

  3.网页正文后紧跟字符数较多的广告,提取了不该提取的内容。

  由于我们采集到的旅游突发事件网页数量较少,只有20篇,而且300篇网页中内容属于旅游方面,但不属于旅游突发事件的网页数量也少。

因此,在测试数据中旅游突发事件网页存在样本量小,干扰项少的缺点,所以旅游突发事件判断正确率还需要采集规模更大的更复杂的数据集进行测试。

  5结束语

  利用HTML的标记符号的语义特点和正则表达式匹配替换的功能,实现网页清洗,剔除了网页中大量的与正文内容无关的代码,生成原始文档,根据原始文档中正文的文字密集出现的特性,能有效的提取正文内容。

该方法与传统基于HTML结构抽取网页信息的方法相比,简单易行,不需要构建DOM树,也能高效地提取网页正文内容。

本文所提JLH方法可以应用于提取不同领域的目标信息,其关键点在于根据具体领域特点制定判断策略来判断所提取到正文是否属于目标信息。

本文在抽取旅游突发事件信息的过程利用特征词匹配的策略,对于复杂的领域,可以采用机器学习的技术建立判断策略。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 可爱清新

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1