【发布时间】:2017-09-05 05:02:13
【问题描述】:
几个月来,我们一直在使用 Azure 搜索作为我们的生产搜索服务,我们的客户开始对排名和评分的灵活性表示担忧 - TF-IDF 比率对他们来说毫无意义(我可以理解) 并且他们习惯于从之前的供应商处看到 百分比 匹配项。
请务必了解,我们的客户主要查询人名。这些人的姓名存在于我们的记录中,既存在于他们自己的字段中,也存在于非结构化文本的附加字段中。例如,当他们查询 John Anderson 时,他们正在寻找与姓名 John Anderson 具有一定百分比匹配的记录。他们不太关心约翰·安德森在文档中出现了多少次。
他们想要的是能够自定义他们的结果,例如,只返回与查询名称“90% 匹配或更高”的结果。我们不知道从哪里开始,因为我们看到 Azure 搜索提供给我们的唯一东西是 TF-IDF 评分。我们如何才能将我们对结果的理解转换为我们真正不关心的百分比匹配与词频? Azure 搜索可以处理这个问题吗?如果我们在选择它作为我们的生产搜索服务方面已经走了这么远,并且我们不能以他们离开的供应商所习惯的方式向我们的客户展示结果,他们就会离开我们,不幸的是我会输我的工作......
MS Azure 搜索人员...请帮忙!
【问题讨论】:
-
您能否更具体地说明您想要如何得分? “90% 匹配”是什么意思?无法禁用基于 TF/IDF 的评分,但在某些情况下,可能有一些方法可以模拟您想要提升事物的方式。如果你能分享你对计算商店的想法,我们可以看看我们如何近似它。
-
嗨@PabloCastro 以一个高级简单示例开始:客户搜索“John Anderson”。任何具有确切短语“John Anderson”的文档都将被视为 100% 匹配。我们不在乎它在记录中出现了多少次。如果我们有“John A. Anderson”或“John G. Anderson”的记录,我们会按照 98% 的匹配度来称呼它,基于这两个术语出现的事实,是接近的,但是是分开的一个字符,因此损失 2%。然后,如果我们有一个“凯文·约翰·安德森”的结果,那么根据现有的额外工作,匹配率会更高,大约为 80-90%
-
确切的规则可以由我们的开发来定义,但我们仍然需要关于如何实施它们的指导。谢谢。
-
@Stpete111 听起来您的匹配百分比与编辑距离一致...这是一个公平的评估吗?
-
@BruceJohnston 我对此并不积极。在我上面关于凯文·约翰·安德森的例子中,“约翰”和“安德森”的距离与普通约翰·安德森的距离相同,但我们肯定希望凯文·约翰·安德森的记录中的匹配百分比低于记录中的匹配率与约翰安德森。编辑距离是否考虑其他类似的词,还是只考虑查询词之间的距离?