您的位置: turnitin查重官网> 计算机 >> 辅助设计 >谈述互联网互联网命名实体抽取与关联联系挖掘设计

谈述互联网互联网命名实体抽取与关联联系挖掘设计

收藏本文 2024-04-21 点赞:22587 浏览:97606 作者:网友投稿原创标记本站原创

摘 要:首先分析了互联网文本中命名实体分布特征;然后使用UIMA SDK构建一个文本分析引擎在文档中寻找命名实体,将结果写入抽取信息数据库EIDB中;最后对文本中包含的命名实体的强关联关系进行了关联分析。实验证明该框架非常有效。
关键词:UIMA; 命名实体; 抽取; 强关联关系; IMDB
16727800(2013)003013202
基金项目:湖北省教育厅科学技术研究项目(B20128604);武汉东湖学院大学生科研重点项目(2012)
作者简介:彭庆喜(1974-),男,硕士,武汉东湖学院计算机学院工程师,研究方向为数据挖掘与机器学习。
0 引言
随着互联网的发展,Web上数据的价值越来越受到研究人员的重视。从Web上获取信息成为深入研究的一个非常重要的基础手段。然而互联网上的信息基本上是非结构化信息。如何从这些非结构化的文本中获取我们需要的信息,是非常重要的工作。文章基于UIMA构建了一个互联网命名实体的抽取与分析系统。先使用UIMA SDK建立了一个文本分析引擎,然后将结果写入抽取信息数据库EIDB中,最后使用DB2 Intelligent Miner分析了互联网人名之间的强关联关系。实验证明该解决方案得到了满意的抽取和分析结果。

1 UIMA架构

UIMA(全称“Unstructured Information Management Architecture”,即“非结构化信息管理架构”)于2009年3月作为OASIS标准发布,它是一个组件化的软件架构,用于分析同终端用户相关联的大容量非结构化信息。这个框架的目的是为非结构化分析提供一个通用的平台,从而提供能够减少重复开发的可重用分析组件。UIMA 架构允许插入写作的分析组件,并将它们与其它组件合并。UIMA 应用程序不需要知道分析组件共同合作生成结果的细节,集成和组织多个分析组件是 UIMA 框架的工作。
UIMA 应用程序可能分析纯文本并识别人员、位置和组织;它也可能识别关系,比如为谁工作或在什么地方工作。应用程序通常可以拆分成组件,例如 “语言识别” => “特定于语言的部分” => “句子范围检测” => “实体检测”。这些组件之间存在依赖性,例如,“句子范围检测” 必须先于 “特定于语言的部分”。 每个组件都是自含的并且可以与其它组件组合。每个组件实现由其它框架定义的接口,并通过 XML 描述符文件提供自我描述元数据。UIMA 框架管理组件和在它们之间流动的数据。分析引擎、标注器和 Common Analysis Structure分析引擎是UIMA 中的构建块。分析引擎包含一个或多个标注器或其它分析引擎。每个标注器实现一个特定的文本分析功能。这种递归式打包允许通过简单的分析引擎构建复杂的分析引擎。每个标注器将其结果储存在具有类型的特征结构中,该结构仅是包含类型和一组属性/值对的数据结构。图1是包含用于命名实体识别、语法分析和关系探测的标注器文本分析引擎。
目前UIMA的实现主要有Apache UIMA和IBM UIMA。其中IBM UIMA是商业软件,而Apache UIMA是开源软件。本文为了利用DB2的智能挖掘软件,所以使用的是IBM UIMA,当然也可以迁移到Apache UIMA环境。

2 基于UIMA的文本分析

首先将Web数据存入数据库作为源数据,然后UIMA 组件从源数据中的非结构化数据字段中提取出结构化的数据。不同的组件从源数据库中读取文档、分析文档来寻找提到的人名以及将结果保存到一个数据库中。文档是由 SQLReader 从源数据库中读取的,这个组件实现了 UIMA 的 CollectionReader 接口,是使用 SDK 开发的。当 UIMA 框架调用 SQLReader 的初始化方法时,它使用JDBC连接到数据库并发出一个 SQL SELECT 语句,这个语句在 SQLReader 存储的 ResultSet 对象中返回需要的数据,比如文本字符串。然后,这个框架使用 CollectionReader 接口的迭代器类方法(比如 getNext())实际地获取每个文档的文本和元数据。这些数据在一个 UIMA 定义的数据对象中返回给框架,这个对象称为 Common Analysis Structure(CAS)。实际上,因为正在分析文本文档,所以这个数据对象是文本 CAS(TCAS)。当框架调用 getNext 时,它提供一个空的 CAS。SQLReader 用来自 ResultSet 中当前行的数据填充 CAS。SQLReader 还实现 hasNext() 方法(这里未显示)以便完成迭代器接口。使用一个 XML 描述符文件让 UIMA 框架接收 SQLReader。每个 UIMA 组件都有这样的文件,可以使用 SDK 中的工具或手工创建该文件。描述符指向组件的实现,在这种情况下是一个类文件,还包含组件需要的任何配置信息。对于 SQLReader,描述符包含源数据库的 URL 和登录所需的用户 id/等信息。在进行初始化时,使用 UIMA 提供的方法读取这些信息。

3 创建抽取信息数据库(EIDB)

为了在 NameReferenceAnnotator 从文档集合中发现的信息上进行文本挖掘,所有 CAS中提及的信息和文档实体信息必须写入一个结构化数据库。我们把这个数据库称为抽取信息数据库EIDB(Extracted Information Database)。这是在文档处理流程结束时进行的。在处理结束时接收每个 CAS 的组件称为 CAS 消费者,UIMA 为这个组件提供了 CasConsumer 接口。一个 UIMA 处理管道可以有多个 CAS 消费者,在从 Text Analysis Eng

源于:免费论文网站www.udooo.com

ine 退出时,这些 CAS 消费者依次接收每个 CAS。系统使用两个 CAS 消费者:一个称为 cas2jdbc,它将来自每个 CAS 的数据写到一个关系数据库(DB2)的表中;另一个称为 EidbManager,它忽略接收的 CAS,但是在每次运行开始时设置数据库,并在分析完所有文档之后对所有信息进行后期处理。如图2为抽取信息数据库 EIDB。

源于:毕业设计论文范文www.udooo.com

copyright 2003-2024 Copyright©2020 Powered by 网络信息技术有限公司 备案号: 粤2017400971号