文本数据挖掘的定义

文本数据挖掘是一种利用计算机处理技术从文本数据中抽取有价值的信息和知识的应用驱动型学科。文本数据挖掘处理的数据类型是文本数据,属于数据挖据的一个分支,与机器学习自然语言处理数理统计等学科具有紧密联系。文本挖掘在很多应用中都扮演重要角色,例如智能商务(例如客户关系管理)、信息检索(例如互联网搜索)等。
文本数据挖掘需要从三个层面进行理解。其一,底层技术,文本挖掘作为数据挖掘的一个分支学科,其底层技术包括机器学习、数理统计、自然语言处理等领域的的技术方法。其二,进阶技术,也即是文本挖掘的基本技术,面向不同的应用,分为五大类:信息抽取文本分类文本聚类文本数据压缩文本数据处理。其三,应用领域,文本挖掘最终的目的如其定义中所描述的,信息访问与知识发现,信息访问包括信息检索、信息浏览、信息过滤和信息报告,知识发现包括数据分析和数据预测。

文本数据挖掘的基本技术之文本信息抽取

文本信息抽取

文本信息抽取是从文本数据中抽取特定信息的一种技术。文本数据是由一些具体的单位构成的,例如句子、段落、篇章,文本信息正是由一些小的具体的单位构成的,例如字、词、词组、句子、段落或是这些具体的单位的组合。抽取文本数据中的名词短语、人名、地名等都是文本信息抽取,当然,文本信息抽取技术所抽取的信息可以是各种类型的信息。

技术介绍

下面我们从机器学习的角度介绍一下文本信息抽取这种的文本挖掘技术。我们将文本信息抽取视为一个标注问题,即将其作为一个监督学习的具体应用。文本信息抽取可以分为两个阶段:学习阶段和抽取阶段。其过程如下图所示:

在学习阶段,首先有一些带标注的数据集,每一个样本包含文字单元序列和标注序列组成,如下所示,

(x1,1,x1,2,...,x1,ny1,1,y1,2,...,y1,n)

\begin{gather*} \begin{pmatrix} x_{1,1},x_{1,2},...,x_{1,n} \\ y_{1,1},y_{1,2},...,y_{1,n} \end{pmatrix} \end{gather*}
表示第i个样本,其中前面x部分表示第i个样本的文字单元序列,后面y部分表示第i个样本的标注序列。机器学子系统基于已有的标注构建一个学习模型,并用一个条件概率分布进行表示。信息抽取系统则是根据得到的条件概率分布模型,对新的样本进行标注,即找到一个标注序列最大化下面这个目标函数:

(ynew,1,ynew,2,...,ynew,n)=argminP(ynew,1,ynew,2,...,ynew,n|xnew,1,xnew,2,...,xnew,n)

\begin{equation} \left( \begin{matrix} y_{new,1},y_{new,2},...,y_{new,n} \end{matrix} \right)=arg\min P(y_{new,1},y_{new,2},...,y_{new,n}|x_{new,1},x_{new,2},...,x_{new,n}) \end{equation}
文字单元在具体的实现中可以是一个文本、一个句子、一个词语,甚至还可以是中文的一个字,标注可能是表示信息抽取对象的开始、结束以及其他。抽取的信息将从开始到标注为结束的文字序列。例如,输入一段英文语句,要抽取这段语句的名词短语,则输入样本为英文句子,文字单元是单词,标注是名词短语的开始、结束或其他。

常用模型

文本信息抽取常用的模型有:隐马尔科夫模型、最大熵马尔科夫模型、条件随机场、表决感知机模型。这些模型是上述一般文本信息抽取的具体实现。
首先,将每一个标注看作是独立于序列以及序列的其它标注的,如下式所示,这样,对于每一个文字单元序列及其标注,可以得到这样一个条件概率分布:

P(ynew,1,ynew,2,...,ynew,n|xnew,1,xnew,2,...,xnew,n)=∏i=1nP(ynew,i|xnew,1,xnew,2,...,xnew,n)

P(y_{new,1},y_{new,2},...,y_{new,n}|x_{new,1},x_{new,2},...,x_{new,n})=\prod_{i=1}^n P(y_{new,i}|x_{new,1},x_{new,2},...,x_{new,n})
由上式可以发现,这样的一个条件概率分布实际上是一个分类器模型,得到样本序列的各单元序列的最佳标注。
在上式的基础上,我们利用不同的模型作为分类器,可以得到不同的文本信息抽取方法。
例如,对于上面的式子,用最大熵模型作为分类器,并且我们假设不同的标注之间具有一阶马尔可夫性,即上式可以写为:

P(ynew,1,ynew,2,...,ynew,n|xnew,1,xnew,2,...,xnew,n)=∏i=1nP(ynew,i|ynew,i−1,xnew,1,xnew,2,...,xnew,n)

P(y_{new,1},y_{new,2},...,y_{new,n}|x_{new,1},x_{new,2},...,x_{new,n})= \prod_{i=1}^n P(y_{new,i}|y_{new,i-1},x_{new,1},x_{new,2},...,x_{new,n})
每一个条件概率分布又是一个新的分类器模型,但是这个分类器是基于前一个标注确定的条件下的分类器,此时模型就成为最大熵马尔科夫模型。
需要注意的是,最大熵马尔科夫模型是一个局部模型,因为标注之间具有一阶马尔可夫性,用局部数据进行训练,而在抽取全局信息时,效果可能不会很好,会产生标注偏差问题。因此可以用一些复杂的全局模型来解决标注偏差问题。其中, 最常用的全局模型就是条件随机场。条件概率分布式中的各个标注会依赖除自身之外的其他标注,条件随机场可以精确的描述全局的标注情况,在精度上由于最大熵马尔科夫模型,但是训练时间也更多。
以上就是以词性标注问题来理解文本信息抽取的一些简单介绍,对于一些复杂信息的抽取问题,还可以将其看做句法分析问题来理解。

文本挖掘系列之文本信息抽取相关推荐

  1. 「文本信息抽取与结构化」详聊文本的结构化「下」

    2020-02-19 08:20:08 常常在想,自然语言处理到底在做的是一件什么样的事情?到目前为止,我所接触到的NLP其实都是在做一件事情,即将自然语言转化为一种计算机能够理解的形式.这一点在知识 ...

  2. 「文本信息抽取与结构化」目前NLP领域最有应用价值的子任务之一

    常常在想,自然语言处理到底在做的是一件什么样的事情?到目前为止,我所接触到的NLP其实都是在做一件事情,即将自然语言转化为一种计算机能够理解的形式.这一点在知识图谱.信息抽取.文本摘要这些任务中格外明 ...

  3. 【文本信息抽取与结构化】深入了解关系抽取你需要知道的东西

    常常在想,自然语言处理到底在做的是一件什么样的事情?到目前为止,我所接触到的NLP其实都是在做一件事情,即将自然语言转化为一种计算机能够理解的形式.这一点在知识图谱.信息抽取.文本摘要这些任务中格外明 ...

  4. 【文本信息抽取与结构化】目前NLP领域最有应用价值的子任务之一

    常常在想,自然语言处理到底在做的是一件什么样的事情?到目前为止,我所接触到的NLP其实都是在做一件事情,即将自然语言转化为一种计算机能够理解的形式.这一点在知识图谱.信息抽取.文本摘要这些任务中格外明 ...

  5. 公开课|智能文本信息抽取算法的进阶与应用

    一.什么是文本挖掘? 讨论文本挖掘之前,我们要先说一下数据挖掘的概念,因为文本挖掘是数据挖掘的一个分支.数据挖掘(Data Mining)指从大量的数据中通过算法搜索隐藏在其中信息的过程.而文本挖掘就 ...

  6. NLP专栏简介:数据增强、智能标注、意图识别算法|多分类算法、文本信息抽取、多模态信息抽取、可解释性分析、性能调优、模型压缩算法等

    NLP专栏简介:数据增强.智能标注.意图识别算法|多分类算法.文本信息抽取.多模态信息抽取.可解释性分析.性能调优.模型压缩算法等 专栏链接:NLP领域知识+项目+码源+方案设计 订阅本专栏你能获得什 ...

  7. 【文本信息抽取与结构化】详聊文本的结构化【上】

    常常在想,自然语言处理到底在做的是一件什么样的事情?到目前为止,我所接触到的NLP其实都是在做一件事情,即将自然语言转化为一种计算机能够理解的形式.这一点在知识图谱.信息抽取.文本摘要这些任务中格外明 ...

  8. 【文本信息抽取与结构化】详聊文本的结构化【下】

    常常在想,自然语言处理到底在做的是一件什么样的事情?到目前为止,我所接触到的NLP其实都是在做一件事情,即将自然语言转化为一种计算机能够理解的形式.这一点在知识图谱.信息抽取.文本摘要这些任务中格外明 ...

  9. 深度学习应用篇-自然语言处理[10]:N-Gram、SimCSE介绍,更多技术:数据增强、智能标注、多分类算法、文本信息抽取、多模态信息抽取、模型压缩算法等

    [深度学习入门到进阶]必看系列,含激活函数.优化策略.损失函数.模型调优.归一化算法.卷积模型.序列模型.预训练模型.对抗神经网络等 专栏详细介绍:[深度学习入门到进阶]必看系列,含激活函数.优化策略 ...

  10. 读《开放式文本信息抽取》赵军

    摘要 摘要中指出文章的写作目的:在回顾文本信息抽取研究历史基础上,重点介绍开放式实体抽取.实体消岐和关系抽取的任务.难点.方法.评测.技术水平,对文本信息抽取的发展方向以及在网络知识工程.问答系统中的 ...

最新文章

  1. 一些惹起热烈争议的PCB布线经验法则
  2. 使用Cygwin编译W600 sdk
  3. 税务计算机网络管理制度,税务系统电子数据处理管理办法(试行)
  4. java获取数组最大最小值
  5. Node — 第四天(Promise与路由)
  6. msdn中C#中常用词汇概念(转帖)
  7. Seafile 开源企业云盘部署
  8. 【牛客 - 331B】炫酷五子棋(STLset 或Hash,tricks,二维map标记)
  9. 如何模块化设计B端系统?
  10. 6 个珍藏已久 IDEA 小技巧,这一波全部分享给你!
  11. 理论基础 —— 二叉树 —— 树、森林、二叉树的转换
  12. python学习-练习题
  13. 理解Java的几张图
  14. 这才是真正的薪资水平
  15. 深度学习面试专用:深度学习500问;文字版吴恩达深度学习,机器学习
  16. 对于因果模型的常见评估函数:SHD 和 FDR
  17. 下载个PDF居然还要密码?想要密码就付费?这我能忍你!Python分分钟解密它!
  18. QT QGraphicsItem飞舞的蝴蝶
  19. Json代码实战演练
  20. 汽车芯片短缺潮“拐点”已至?下一波“网络安全”升级战悄然开始

热门文章

  1. 计算机用户原始密码是多少,administrator初始密码是多少
  2. java image 提取色彩通道_Java:从BufferedImage中提取Alpha通道
  3. 【解决】UnicodeDecodeError: ‘ascii‘ codec can‘t decode byte 0xef in position 0: ordinal not in range(128
  4. linux下动态域名的实践
  5. java中的字符串池
  6. 微信小程序实现二维码签到考勤
  7. 如何做一个简单的类似qq网页版等的聊天网页
  8. 网页版即时通讯聊天工具,支持主流浏览器,无需安装即可使用
  9. 求解字谜游戏问题-数据结构与算法分析-C语言描述 Mark Allen Weiss-第一章练习题
  10. LISnlogn写法