Skip to main content

了解语义搜索功能

分类:  Azure搜索 标签:  #Azure #Search #认知搜索 发布于: 2023-06-12 20:09:18

需要注意的是目前语义搜索功能通过public preview的形式提供给用户,因此如果用户如果想开通这项服务,必须通过特定的步骤:

  • 检查区域支持和定价层的要求
  • 注册preview program, 一般情况下需要两个工作日来处理。
  • 创建和修改查询以返回语义描述和重点的内容。
  • 调用拼写检查,最大限度的提高精准率和召回率。

语义搜索是用于提高搜索结果质量的功能集合。当启用该服务时,它通过两种方式来扩展查询:

  • 在初始结果集的基础上添加二次排名,将和语义最接近的结果提升到列表顶部。
  • 提取并返回相应结果中的描述和答案,可以供用户在页面上呈现,提升用户体验。

语义排名的说明

语义排名查找词语之间的上下文和相关性,从而提高使查询更有意义的匹配度。 通过语言理解在内容中找到摘要或sub title以及答案,并将它们包括在响应中,然后,这些内容可以呈现在搜索结果页面上,以获得更高效的搜索体验 。

预训练模型被用于汇总和排名。 为了保持用户预期的搜索速度,语义汇总和排名仅适用于根据默认相似性评分算法评分的前 50 个结果。 将这些结果用作文档语料库,语义排名会根据匹配项的语义强度对这些结果重新评分。

这项功能的基础技术来自必应和 Microsoft Research,并作为附加功能集成到认知搜索基础结构。 有关用于支持语义搜索的研究和 AI 投入的详细信息,请参阅必应的 AI 功能如何为 Azure 认知搜索提供支持(Microsoft Research 博客):https://www.microsoft.com/research/blog/the-science-behind-semantic-search-how-ai-from-bing-is-powering-azure-cognitive-search/

语义搜索提供如下的功能:

  • 拼写检查
  • 语义排名
  • 语义标题和高亮显示
  • 语义答案

语音功能和限制

语义搜索是一项较新的技术,因此,对于它能够和无法实现的效果,必须设定预期。 它通过两种方式来提高搜索结果的质量:

首先,它会提升语义更接近原始查询意图的匹配项。

其次,通过它可以实现在页面上呈现描述和可能的答案,使结果更易于使用。

语义搜索并不适用于每种场景,在继续之前,请确保拥有可以利用语义搜索功能的内容。 语义搜索中的语言模型最适用于信息丰富并且为散文结构的可搜索内容。 例如,在评估内容以获取答案时,模型会扫描并提取看起来像答案的逐字字符串,但不会将新字符串作为查询的答案或作为匹配文档的描述。 若要回答“什么汽车的油耗最低”这个问题,索引应该包含“混合动力汽车是市场上油耗最低的汽车”等短语。

语义搜索无法关联或推断来自文档或文档语料库中不同内容片段的信息。 例如,如果“沙漠中的度假酒店”查询缺少地理输入,则引擎将不会生成亚利桑那或内华达的酒店的匹配项,虽然这两个州都有沙漠。 同样,如果查询包含子句“过去 5 年中”,则引擎不会根据要返回的当前日期计算时间间隔。 在认知搜索中,对上述情形可能有帮助的机制包括同义词映射或日期筛选器,前者可用于在表面上不同的术语间生成关联,后者可指定为 OData 表达式。

语义搜索就介绍到这里了。