数据挖掘 - 挖掘文本数据


文本数据库由大量文档组成。他们从新闻文章、书籍、数字图书馆、电子邮件、网页等多种来源收集这些信息。由于信息量的增加,文本数据库正在迅速增长。在许多文本数据库中,数据是半结构化的。

例如,文档可能包含一些结构化字段,例如标题、作者、出版日期等。但是,除了结构数据之外,文档还包含非结构化文本组件,例如摘要和内容。如果不知道文档中可能包含什么,就很难制定有效的查询来分析数据并从数据中提取有用的信息。用户需要工具来比较文档并对它们的重要性和相关性进行排名。因此,文本挖掘已变得流行并成为数据挖掘的一个重要主题。

信息检索

信息检索涉及从大量基于文本的文档中检索信息。一些数据库系统通常不存在于信息检索系统中,因为两者处理不同类型的数据。信息检索系统的例子包括 -

  • 在线图书馆目录系统
  • 在线文档管理系统
  • 网络搜索系统等

注意- 信息检索系统中的主要问题是根据用户的查询在文档集合中查找相关文档。这种用户的查询由一些描述信息需求的关键字组成。

在此类搜索问题中,用户主动从集合中提取相关信息。当用户有临时信息需求,即短期需求时,这是合适的。但如果用户有长期的信息需求,那么检索系统也可以主动将任何新到达的信息项推送给用户。

这种对信息的访问称为信息过滤。相应的系统称为过滤系统或推荐系统。

文本检索的基本措施

当系统根据用户输入检索大量文档时,我们需要检查系统的准确性。让与查询相关的文档集表示为{Relevant},将检索到的文档集表示为{Retrieved}。相关且检索到的文档集可以表示为{相关}∩{检索}。这可以以维恩图的形式显示如下 -

措施

评估文本检索质量有三个基本措施 -

  • 精确
  • 记起
  • F分数

精确

精度是检索到的文档中与查询实际相关的百分比。精度可以定义为 -

Precision= |{Relevant} ∩ {Retrieved}| /  |{Retrieved}|

记起

召回率是与查询相关并且实际上被检索到的文档的百分比。召回率定义为 -

Recall = |{Relevant} ∩ {Retrieved}| /  |{Relevant}|

F分数

F-score 是常用的权衡。信息检索系统通常需要在精度之间进行权衡,反之亦然。F 分数定义为召回率或精度的调和平均值,如下 -

F-score = recall x precision / (recall + precision) / 2