文本挖掘系列之文本信息抽取
来源:互联网 发布:js中或者怎么表示 编辑:程序博客网 时间:2024/05/22 12:57
文本数据挖掘的定义
文本数据挖掘是一种利用计算机处理技术从文本数据中抽取有价值的信息和知识的应用驱动型学科。文本数据挖掘处理的数据类型是文本数据,属于数据挖据的一个分支,与机器学习、自然语言处理、数理统计等学科具有紧密联系。文本挖掘在很多应用中都扮演重要角色,例如智能商务(例如客户关系管理)、信息检索(例如互联网搜索)等。
文本数据挖掘需要从三个层面进行理解。其一,底层技术,文本挖掘作为数据挖掘的一个分支学科,其底层技术包括机器学习、数理统计、自然语言处理等领域的的技术方法。其二,进阶技术,也即是文本挖掘的基本技术,面向不同的应用,分为五大类:信息抽取、文本分类、文本聚类、文本数据压缩、文本数据处理。其三,应用领域,文本挖掘最终的目的如其定义中所描述的,信息访问与知识发现,信息访问包括信息检索、信息浏览、信息过滤和信息报告,知识发现包括数据分析和数据预测。
文本数据挖掘的基本技术之文本信息抽取
文本信息抽取
文本信息抽取是从文本数据中抽取特定信息的一种技术。文本数据是由一些具体的单位构成的,例如句子、段落、篇章,文本信息正是由一些小的具体的单位构成的,例如字、词、词组、句子、段落或是这些具体的单位的组合。抽取文本数据中的名词短语、人名、地名等都是文本信息抽取,当然,文本信息抽取技术所抽取的信息可以是各种类型的信息。
技术介绍
下面我们从机器学习的角度介绍一下文本信息抽取这种的文本挖掘技术。我们将文本信息抽取视为一个标注问题,即将其作为一个监督学习的具体应用。文本信息抽取可以分为两个阶段:学习阶段和抽取阶段。其过程如下图所示:
在学习阶段,首先有一些带标注的数据集,每一个样本包含文字单元序列和标注序列组成,如下所示,
表示第i个样本,其中前面x部分表示第i个样本的文字单元序列,后面y部分表示第i个样本的标注序列。机器学子系统基于已有的标注构建一个学习模型,并用一个条件概率分布进行表示。信息抽取系统则是根据得到的条件概率分布模型,对新的样本进行标注,即找到一个标注序列最大化下面这个目标函数:
文字单元在具体的实现中可以是一个文本、一个句子、一个词语,甚至还可以是中文的一个字,标注可能是表示信息抽取对象的开始、结束以及其他。抽取的信息将从开始到标注为结束的文字序列。例如,输入一段英文语句,要抽取这段语句的名词短语,则输入样本为英文句子,文字单元是单词,标注是名词短语的开始、结束或其他。
常用模型
文本信息抽取常用的模型有:隐马尔科夫模型、最大熵马尔科夫模型、条件随机场、表决感知机模型。这些模型是上述一般文本信息抽取的具体实现。
首先,将每一个标注看作是独立于序列以及序列的其它标注的,如下式所示,这样,对于每一个文字单元序列及其标注,可以得到这样一个条件概率分布:
由上式可以发现,这样的一个条件概率分布实际上是一个分类器模型,得到样本序列的各单元序列的最佳标注。
在上式的基础上,我们利用不同的模型作为分类器,可以得到不同的文本信息抽取方法。
例如,对于上面的式子,用最大熵模型作为分类器,并且我们假设不同的标注之间具有一阶马尔可夫性,即上式可以写为:
每一个条件概率分布又是一个新的分类器模型,但是这个分类器是基于前一个标注确定的条件下的分类器,此时模型就成为最大熵马尔科夫模型。
需要注意的是,最大熵马尔科夫模型是一个局部模型,因为标注之间具有一阶马尔可夫性,用局部数据进行训练,而在抽取全局信息时,效果可能不会很好,会产生标注偏差问题。因此可以用一些复杂的全局模型来解决标注偏差问题。其中, 最常用的全局模型就是条件随机场。条件概率分布式中的各个标注会依赖除自身之外的其他标注,条件随机场可以精确的描述全局的标注情况,在精度上由于最大熵马尔科夫模型,但是训练时间也更多。
以上就是以词性标注问题来理解文本信息抽取的一些简单介绍,对于一些复杂信息的抽取问题,还可以将其看做句法分析问题来理解。
- 文本挖掘系列之文本信息抽取
- 文本数据挖掘之文本信息抽取
- 文本挖掘系列之文本分类
- 【文本分类】 特征抽取之信息增益
- NLTK学习之四:文本信息抽取
- 文本挖掘之文本表示
- 文本挖掘之文本分类
- R之文本挖掘
- 文本挖掘之降维之特征抽取之主成分分析(PCA)
- 文本挖掘之降维技术之特征抽取之非负矩阵分解(NMF)
- 非结构文本如何进行信息抽取?
- R文本挖掘之四文本分类
- R语言之文本挖掘
- 数据挖掘 NLP 之 文本挖掘 文本处理 通用流程
- 文本挖掘
- 文本挖掘
- 文本挖掘
- 文本挖掘
- selenium java测试web客户端实例
- 0001 程序时间
- 类的继承与派生
- 采用 AI 技术的医疗创业公司大量涌现
- Spring MVC 简述
- 文本挖掘系列之文本信息抽取
- <javascript>Lesson1.初识javascript
- 线程同步与互斥
- Linux----线程初识
- 详解设计模式六大原则
- 安装Anaconda
- 东莞市2014年市队选拔赛 分组 构造二分图最小覆盖方案
- Java+Selenium3.0基础篇1-环境搭建
- 【洛谷】3379 【模板】最近公共祖先(LCA)