Keras深度学习实战(34)——构建聊天机器人
0. 前言
随着自然语言处理技术的飞速发展以及互联网上对话语料的不断积累,聊天机器人取得了迅速的发展,得到了学术界的广泛关注,并且在现实世界中也得到了一定的应用。当前,聊天机器人可以分为检索式聊天机器人和生成式聊天机器人,而检索式聊天机器人由于其生成的回复流畅且计算资源消耗小,仍然是目前实际应用中聊天机器人的主要实现手段。本节中,我们将学习检索式聊天机器人的基本原理,并实现其中的关键核心技术。
1. 模型与数据集分析
通常我们可以利用聊天机器人执行一些常见的查询 (query
),在实际场景中,尤其是可以从数据库中查找结果或利用查询 API
获得查询结果时非常有用。鉴于此,可以使用两种方式设计聊天机器人:
- 将非结构化用户查询转换为结构化形式,根据转换后的结构从数据库中查询,即检索式聊天机器人
- 根据输入文本生成响应数据,即生成式聊天机器人
在本节中,我们将采用第一种方法,因为使用此方法,我们可以在将预测结果传递给用户之前,对其进行进一步的调整。将用户查询转换为结构化格式需要以下两个步骤:
- 识别查询单词中的命名实体 (
various entities
)