我有一个使用 Seq2Seq 架构的问答系统。实际上它是一个变压器架构。当提出问题时,它会给出答案的开始位置和结束位置以及它们的逻辑。
答案是通过选择最佳 logits 跨度形成的,最终概率是通过对 start 和 end logits 求和来计算的。
现在的问题是,我有多个答案,而且很多时候好答案在第二或第三位(在对开始和结束概率之和的结果进行排序之后)。搜索引擎科学中是否有任何指标可以用来对最佳答案进行排名?
已尝试以下方法:
- 问题词和答案之间的余弦相似度 - 这工作很多次,但当问题语义复杂时失败
- TFIDF - 给出很好的分数,但当答案中有同义词而不是匹配词时失败。
- gensim 语义相似性 - 严重失败。
- BLUE score 和新的 BERTF1Score 也试过了
我听说过的术语很少,但我怀疑这些术语是否有效,例如平均倒数排名,我认为它给出了搜索质量而不是答案质量,并且计算 MRR 需要正确的响应(如果我错了,请更正)。或者在我的情况下无效的 PageRank 因为答案语义在 QnA 中而不是文档流行度中更受欢迎。
请建议搜索引擎通常用于对答案进行排名的其他指标。