什么是信息检索?
信息检索 (IR) 是一个与数据库系统并行发展多年的领域。与专注于结构化数据查询和事务处理的数据库系统领域不同,信息检索关注的是从多个基于文本的文档中组织和检索数据。
由于信息检索和数据库系统分别处理不同类型的数据,因此数据库系统中的一些问题通常不会出现在信息检索系统中,例如并发控制、恢复、事务管理和更新。还有一些常见的信息检索问题通常不会在传统的数据库系统中遇到,例如非结构化文档、基于关键词的近似搜索以及相关性的概念。
由于文本数据的丰富性,信息检索发现了许多应用。存在多个信息检索系统,包括在线图书馆目录系统、在线记录管理系统以及目前发展起来的网络搜索引擎。
一个一般的数据检索问题是根据用户的查询在文档集中定位相关的文档,查询通常是一些定义信息需求的关键词,但也可能是相关记录的示例。
当用户有一些临时(即短期)的数据需求时,这是最合适的,包括查找购买二手车的数据。当用户有长期数据需求(例如研究人员的兴趣)时,检索系统还可以主动向用户“推送”任何新到达的数据元素,如果该元素被判断为与用户的数据需求相关。
评估文本检索质量有两个基本指标,如下所示:
**精确率** - 这是实际与查询相关的检索数据的百分比(即“正确”响应)。其形式表示为
$$precision=\frac{|\left\{ Relevant \right\}\cap\left\{ Retrieved \right\}|}{|\left\{ Retrieved \right\}|}$$
**召回率** - 这是与查询相关且实际检索到的记录的百分比。其形式表示为
$$recall=\frac{|\left\{ Relevant \right\}\cap\left\{ Retrieved \right\}|}{|\left\{ Relevant \right\}|}$$
信息检索系统通常需要在召回率和精确率之间进行权衡。一个常用的权衡方法是F-分数,表示为召回率和精确率的调和平均值:
$$F\underline{}score=\frac{recall \times precision }{(recall+precision)^{2}}$$
调和平均值会影响过度牺牲一项指标来换取另一项指标的系统。精确率、召回率和F-分数是检索到的记录集合的基本度量。这三个度量通常不适用于比较两个排序的文件列表,因为它们对检索集中文档的内部排序不敏感。