基于嵌入的搜索

问题描述 投票:0回答:1

我正在尝试在文档中创建基于嵌入的搜索,其中包括标题、标题和内容。

因此我们有了包含标题、标题和内容的数据框。

工作流程:

  1. 每个查询检索 k 个段落
  2. 对段落进行排名以选择最佳的

这里我的意思是我正在使用检索+排名策略与msmarco的顶级模型(查询+通道映射)。

但是我的指标中存在一个问题。我正在直接比较标题,如果一切正常,我们将更深入地比较标题和内容。但就标题而言,我只有 48% 的正确答案,而对于标题和内容来说,一切都很好(这意味着如果我们得到正确的标题,一切都会很好)。

我们正在寻找这样的嵌入内容: 标题 标题 内容

我已经尝试过:

  1. 使用模型向内容添加问题(指标更差)
  2. 在内容中添加摘要(标题 标题 内容 摘要)(指标改进)
  3. 释义(释义 标题 标题 内容)(指标改进)
  4. 在内容中添加摘要+释义(释义 标题 标题 内容 摘要)(目前最佳指标)

请向我提供任何可以改进这一点的提示或方法。查询 - 文本很短,而我们的内容很大,所以这是一种非对称搜索。

python nlp chatbot information-retrieval word-embedding
1个回答
0
投票

恭喜我的朋友,您走在正确的道路上,并且已经实施了一些好的策略来改进您的基于嵌入的搜索。

我对改进文档标题的嵌入和增强检索系统有一些建议:

一开始

标题丰富:我想你知道

尝试不同的嵌入模型:您使用的嵌入模型可能不是最适合您的特定用例。不同的模型可能在不同类型的文本数据上表现更好,因此值得尝试其他模型,例如 Sentence-BERTUniversal Sentence EncoderFacebook 的 InferSent

但是如果您有足够大的数据集(足够),您可以使用模型微调该模型可能会学习数据集中标题的更好表示

元标记:向您的标题添加元数据标签(如果适用)可以帮助改进搜索。元数据可以是作者姓名、出版年份、文档类别或任何其他可以为搜索引擎提供上下文的相关信息。

和最后的同义词/反义词扩展

将其视为最佳策略可能取决于您的任务和数据集的具体情况,并且可能有必要尝试这些策略的组合

要成功

© www.soinside.com 2019 - 2024. All rights reserved.