聊天机器人-NLG模块

2019-10-16  本文已影响0人  魏鹏飞

自然语言生成部件的主要目的是根据系统的相应类型,生成自然语言回答。

一般来说这部分主要是套模板。

NLG模块的输入是DPL模块输出的系统动作a_n,输出是系统对用户输入X_n的回复Y_n

目前,NLG模块仍广泛采用传统的基于规则的方法,如下图定义。根据规则可以将各个系统动作映射成自然语言表达。

系统动作 系统回复
Ask Date() “请告诉我查询的时间”
Ask Location() “请告诉我查询的地点”
Answer(date=$date,location=$location,content=$weather) “$data, $location 的天气,$weather”

为了实现回复的多样性,各种基于深度神经网络的模型方法被提出并得到发展。一些使用如seq2seq模型等等产生的NLG方法。这些方法的出现一来是为了提高系统的鲁棒性,另一方面是希望系统说话更接近人类说话方式,最终提高用户体验。

参考文献

  1. 自然语言处理与实践
上一篇 下一篇

猜你喜欢

热点阅读