2.1.1 什么是搜索引擎及搜索系统
信息检索(Information Retrieval,IR)是从文档集合中返回满足用户需求的相关信息的过程。它是一门研究信息获取(Acquisition)、表示(Representation)、存储(Storage)、组织(Organization)和访问(Access)的学科。检索来自Retrieval,有些人把它翻译成获取,本义是获得与输入要求相匹配的输出。而搜索来自Search,指带有目的性地寻找。信息检索不仅仅是指搜索,信息检索系统(IR System)也不仅仅是搜索引擎。从狭义上讲,信息检索就是指信息搜索(Information Search);从广义上讲,信息检索包含搜索引擎(Search Engine)、问答系统(Question Answering)、信息抽取(Information Extraction)、信息过滤(Information Filtering)、信息推荐(Information Recommending)等。
搜索引擎
图2-1 搜索引擎架构示意图
搜索系统的概念可以从如下两方面解释。
1)系统角度。从系统角度来看,搜索系统是一个更广泛的概念,包括搜索引擎。具有相关性计算和分析的系统都可以归为搜索系统。除了我们常说的搜索引擎外,搜索系统还应该包括外部支持的业务场景和应用领域等特征。
2)用户角度。从用户角度来看,搜索系统的输出是对用户需求的投射,因此我们在设计搜索系统时需要观察用户对检索结果的反应,除此之外,还得考虑相应的应用场景以及搜索工程。
本书所谈的搜索系统和信息检索在概念上是一致的。而信息检索在狭义上和搜索引擎也是一致的。
[1] 简单搜索引擎代码实现示例地址:https://github.com/michaelliu03/Search-Recommend-InAction/blob/master/chapter2/search/search_engine.py.