文本挖掘

 

1.      文本挖掘

1.1.    什么是文本挖掘

文本挖掘指的是从文本数据中获取有价值的信息和知识,它是数据挖掘中的一种方法。文本挖掘中最重要最基本的应用是实现文本的分类和聚类,前者是有监督的挖掘算法,后者是无监督的挖掘算法。

文本挖掘是一个多学科混杂的领域,涵盖了多种技术,包括数据挖掘技术、信息抽取、信息检索,机器学习、自然语言处理、计算语言学、统计数据分析、线性几何、概率理论甚至还有图论。

 

1.2.    文本挖掘有什么用

1、文本分类

文本分类是一种典型的机器学习方法,一般分为训练和分类两个阶段。文本分类一般采用统计方法或机器学习来实现。

 

2、文本聚类

文本聚类是一种典型的无监督式机器学习方法,聚类方法的选择取决于数据类型。

首先,文档聚类可以发现与某文档相似的一批文档,帮助知识工作者发现相关知识;其次,文档聚类可以将一类文档聚类成若干个类,提供一种组织文档集合的方法;再次,文档聚类还可以生成分类器以对文档进行分类。

文本挖掘中的聚类可用于:提供大规模文档内容总括;识别隐藏的文档间的相似度;减轻浏览相关、相似信息的过程。

 

3、信息检索

主要是利用计算机系统的快速计算能力,从海量文档中寻找用户需要的相关文档。

 

4、信息抽取

信息抽取是把文本里包含的信息进行结构化处理,变成表格一样的组织形式。输入信息抽取系统的是原始文本,输出的是固定格式的信息。

 

5、自动文摘

利用计算机自动的从原始文档中提取出文档的主要内容。互联网上的文本信息、机构内部的文档及数据库的内容都在成指数级的速度增长,用户在检索信息的时候,可以得到成千上万篇的返回结果,其中许多是与其信息需求无关或关系不大的,如果要剔除这些文档,则必须阅读完全文,这要求用户付出很多劳动,而且效果不好。

自动文摘能够生成简短的关于文档内容的指示性信息,将文档的主要内容呈现给用户,以决定是否要阅读文档的原文,这样能够节省大量的浏览时间。简单地说自动文摘就是利用计算机自动地从原始文档中提取全面准确地反映该文档中心内容的简单连贯的短文。

自动文摘具有以下特点:

(1)自动文摘应能将原文的主题思想或中心内容自动提取出来。

(2)文摘应具有概况性、客观性、可理解性和可读性。

(3)可适用于任意领域。

按照生成文摘的句子来源,自动文摘方法可以分成两类,一类是完全使用原文中的句子来生成文摘,另一类是可以自动生成句子来表达文档的内容。后者的功能更强大,但在实现的时候,自动生成句子是一个比较复杂的问题,经常出现产生的新句子不能被理解的情况,因此目前大多用的是抽取生成法。

 

6、自动问答

自动问答是指对于用户提出的问题,计算机可以自动的从相关资料中求解答案并作出相应的回答。自动问答系统一般包括 3 个组成部分:问题分析、信息检索和答案抽取。

 

7、机器翻译

利用计算机将一种源语言转变为另一种源语言的过程。

 

8、信息过滤

指计算机系统可以自动的进行过滤操作,将满足条件的信息保留,将不满足条件的文档过滤掉。信息过滤技术主要用于信息安全领域。

 

9、自动语音识别

自动语音识别就是将输入计算机的自然语言转换成文本表示的书面语。

 

1.3.    文本挖掘操作步骤

1、获取文本

现有数据导入,或者爬虫获取网络文本。

 

2、文本预处理

指剔除噪声文档以改进挖掘精度,或者在文档数量过多时仅选取一部分样本以提高挖掘效率。

例如网页中存在很多不必要的信息,比如说一些广告,导航栏,html、js代码,注释等等并不需要的信息,可以删除掉。如果是需要正文提取,可以利用标签用途、标签密度判定、数据挖掘思想、视觉网页块分析技术等等策略抽取出正文。

 

3、文本的语言学处理

(1)分词

接下来的步骤就是分词。

(2)词性标注

同时也可以使用词性标注。通过很多分词工具分出来的出会出现一个词,外加该词的词性。比如说啊是语气助词。

 

(3)去除停用词

比如说句号、是、的等词,没有什么实际的意义。然而这些词在所有的文章中都大量存在,并不能反应出文本的意思,可以处理掉。当然针对不同的应用还有很多其他词性也是可以去掉的,比如形容词等。

 

4、文本的数学处理-特征提取

我们希望获取到的词汇,既能保留文本的信息,同时又能反映它们的相对重要性。如果对所有词语都保留,维度会特别高,矩阵将会变得特别稀疏,严重影响到挖掘结果。所以这就需要特征提取。

特征选取的方式有4种:

(1)用映射或变换的方法把原始特征变换为较少的新特征;

(2)从原始特征中挑选出一些最具代表性的特征;

(3)根据专家的知识挑选最有影响的特征;

(4)用数学的方法进行选取,找出最具分类信息的特征,这种方法是一种比较精确的方法,人为因素的干扰较少,尤其适合于文本自动分类挖掘系统的应用。

 

5、分类聚类

经过上面的步骤之后,我们就可以把文本集转化成一个矩阵。我们能够利用各种算法进行挖掘,比如说如果要对文本集进行分类,分类常用的方法有:简单贝叶斯分类法,矩阵变换法、K-最近邻参照分类算法以及支持向量机分类方法等。

 

聚类方法通常有:层次聚类法、平面划分法、简单贝叶斯聚类法、K-最近邻聚类法、分级聚类法等。

6、数据可视化

最后一步当然就是数据结构的可视化展示,通过合适的可视化图形生动形象展示,让读者听众更容易理解你所要表达的信息。

文本可视化最常用的图形就是词云。

 

四、文本挖掘工具

1、python语言jieba、gensim、sklearn、WordCloud和matplotlib包

2、R语言jieba、tm、tmcn、Rwordseg和wordcloud包

3、SAS text miner

4、SPSS Text Mining

 

日拱一卒无有尽,功不唐捐终入海