TensorFlow练习13: 制作一个简单的聊天机器人

现在很多卖货公司都使用聊天机器人充当客服人员,许多科技巨头也纷纷推出各自的聊天助手,如苹果Siri、Google Now、Amazon Alexa、微软小冰等等。前不久有一个视频比较了Google Now和Siri哪个更智能,貌似Google Now更智能。

本帖使用TensorFlow制作一个简单的聊天机器人。这个聊天机器人使用中文对话数据集进行训练(使用什么数据集训练决定了对话类型)。使用的模型为RNN(seq2seq),和前文的《RNN生成古诗词》《RNN生成音乐》类似。

相关博文:

数据集

我使用现成的影视对白数据集,跪谢作者分享数据。

下载数据集:

数据预处理:

创建词汇表,然后把对话转为向量形式,参看练习1和7:

生成的train_encode.vec和train_decode.vec用于训练,对应的词汇表是train_encode_vocabulary和train_decode_vocabulary。

训练

需要很长时间训练,这还是小数据集,如果用百GB级的数据,没10天半个月也训练不完。

使用的模型:seq2seq_model.py

代码:

 

聊天机器人

使用训练好的模型:

 

测试

TensorFlow练习13: 制作一个简单的聊天机器人

额,好差劲。

上面的实现并没有用到任何自然语言的特性(分词、语法等等),只是单纯的使用数据强行提高它的“智商”。

后续练习:中文语音识别、文本转语音

 

http://blog.topspeedsnail.com/archives/10735

 

使用谷歌开源的TensorFlow进行一系列的训练实践 https://www.urlteam.org

tensorflow

使用谷歌开源的TensorFlow进行一系列的训练实践

2017.9.10 重启项目

项目列表

前三篇主要学习自熊猫的博客:http://blog.topspeedsnail.com/

1:Cnn_Captcha

用卷积神经网络识别复杂字符验证码

用4层Cnn网络,识别破解python自生成的复杂扭曲验证码,

项目实践说明:https://zhuanlan.zhihu.com/p/25779608

2:Forecast

用CNN根据名字判断性别

3.Rnn_Create_Poetry

用RNN生成古诗词

4.Object_Detection,目标检测

本项目是使用tensorflow的Object Detection API,进行目标检测。

完成的是数据预处理脚本,如何用自己的数据生成可以训练的record文件。

目标检测的项目实践:https://www.urlteam.org/2017/09/%E7%9B%AE%E6%A0%87%E6%A3%80%E6%B5%8B%E7%AC%94%E8%AE%B0%E4%BA%8C%EF%BC%9Atensorflow%E5%B0%8F%E7%99%BD%E5%AE%9E%E8%B7%B5/

 https://github.com/luyishisi/tensorflow

 

posted @ 2018-01-08 18:50  沧海一滴  阅读(2626)  评论(0编辑  收藏  举报