我开发了一个工具,可以根据用户键入的内容从数据库中检索最接近的表达式。(使用词嵌入 - 在数据库中的每个表达式和用户输入之间进行比较)
n-result 被检索,但最接近的表达式不一定是最相关的。
例如,通过键入:医院机器
排名靠前的结果将是“透析机”、“医疗机”……但我也会找到诸如“建筑机器”、“办公机器”之类的表达方式
用户很可能会选择与药物相关的机器。
有没有办法根据用户输入优化我的排名系统,同时保持表达式向量之间的这种相似性?
我开发了一个工具,可以根据用户键入的内容从数据库中检索最接近的表达式。(使用词嵌入 - 在数据库中的每个表达式和用户输入之间进行比较)
n-result 被检索,但最接近的表达式不一定是最相关的。
例如,通过键入:医院机器
排名靠前的结果将是“透析机”、“医疗机”……但我也会找到诸如“建筑机器”、“办公机器”之类的表达方式
用户很可能会选择与药物相关的机器。
有没有办法根据用户输入优化我的排名系统,同时保持表达式向量之间的这种相似性?
理解两个短语之间的相似性有两个方面
要回答 1,您可以使用向量相似度,它可以为含义相似的标记提供高相似度。要回答 2,您应该考虑为标记赋予重要性/权重。您可以使用tf-idf 之类的度量。在比较hospital machine 和 building machine时,machine作为您语料库中的常用词应该得到较低的分数,因此对整体相似性的贡献较小。然后,大多数相似性将由医院和建筑物之间的相似性决定,这将解决您的问题。