谁/为什么关注基于检索模型的机器人?

在本系列的上一篇博客中说到,基于检索模型的机器人有一个的回答集(repository),包含了预先定义的若干回答。与该模型相对应的产生式模型则是在不借助任何回答集的情况下产生一个全新的回答。

让我们更正式地定义基于检索模型的机器人:模型的输入为上下文(context)$c$和回答(response)$r$。模型会根据上下文为回答评分,评分最高的回答将被选择作为模型的输出。

你一定想问,在能够搭建一个产生式模型的情况下,为什么我们更想搭建一个基于检索的模型?诚然,产生式模型看起来更灵活,并且不需要预先定义的回答集。原因很简单:当下的产生式模型在实践中表现不佳。因为他们太灵活了,以至于他们非常容易犯语法错误、产生和问题不相关的回答、产生万金油式的回答或是与前文不一致的回答(我们在(上篇)中对这些问题有过简略讨论)。此外,产生式模型需要大量的训练数据。现今,工业界主流的系统大多仍是基于检索模型的,或是两种模型的结合。产生式模型是一个活跃的研究领域,但是我们才刚刚起步。如果现在的你想搭建一个聊天机器人,基于检索的模型应该能让你更有成就感 :)