【问题标题】:How to employ Learning-to-rank models (CNN, LSTM) in short-pair ranking?如何在短对排序中使用学习排序模型(CNN、LSTM)?
【发布时间】:2017-11-20 00:06:12
【问题描述】:
在常见的应用学习排序任务中,输入通常是语义的并且具有良好的句法结构,例如问答排序任务。在这种情况下,CNN 或 LSTM 是捕获 QA 对的潜在信息(本地或长依赖)的良好结构。
但实际上,有时我们只有短对和离散的单词。在这种情况下,CNN 或 LSTM 仍然是一个公平的选择?或者有没有更合适的方法可以处理这个问题?
【问题讨论】:
标签:
neural-network
nlp
conv-neural-network
information-retrieval
recurrent-neural-network
【解决方案1】:
更大的问题是您拥有多少训练数据。有很多有趣的工作,但深度神经网络方法倾向于使用 QA 排序任务的原因是因为这些任务通常具有数十万或数百万个训练示例。
当您有较短的查询时,即标题或网络查询,您可能需要更多的数据来学习,因为每个训练实例将使用较少的网络。这是可能的,但您选择的方法通常应基于您可用的训练数据,而不是查询的大小。
- [0-50 个查询] -> 手动调整、经过时间检验的模型,例如 Query Likelihood、BM25,(或者如果您想要更好的结果,可以使用 Ngram 模型,例如 SDM)(如果您想要更多的召回率,伪相关性-反馈模型,例如 RM3)。
- [50-1000 个查询] -> 线性或基于树的学习排序方法
- [1000-millions] -> 深度方法,或者可能仍在学习排名。我不确定是否有任何深度论文真正主导了最先进的梯度提升回归树设置。
我的一个实验室同事最近的一篇论文使用了pseudo-labels from BM25 to bootstrap a DNN。他们取得了不错的成绩(比 BM25 更好),但实际上他们必须是 Google(在训练时间方面)才能取得成功。