自己训练的聊天机器人

文章正文
发布时间:2025-02-06 06:38

本帖最后由 ConstantinChiae 于 2020-4-4 18:56 编辑

最新动态:一直没什么时间,版本稍有完善,连带一个模型都在github上,跑不通我直播吃键盘(前提你自己把环境都弄好)。

欢迎交流学习!

完全开源:
github: https://github.com/jiayiwang5/Chinese-ChatBot (直接在这里下载就好)

这是什么?
答 : 一个聊天机器人。 它好像自认为是女生,所以你大可调戏她,或是闲得无聊时候找它唠两句。

它”智能“么?
答:个人能力有限,我找不到百万级及以上高质量的对话数据,也没有足够的算力资源支撑,暂且不能做到 ”智能“。实际对话中,仍会存在大量的无意义回复,请见谅。

什么原理呢?
答: 严谨的说叫 ”基于深度学习的开放域生成对话模型“,框架为Keras(Tensorflow的高层包装),方案为主流的RNN(循环神经网络)的变种LSTM(长短期记忆网络)+seq2seq(序列到序列模型),外加算法Attention Mechanism(注意力机制),分词工具为jieba,UI为Tkinter,基于”青云“语料(10万+闲聊对话)训练。

”必要“是什么意思?
答:程序分为数据清洗,模型训练与模型预测三个部分,以及大量固化的二进制文件等。但你运行它只需要其中一小部分,包括预测程序、部分二进制文件和一个训练好的模型。

我该怎么运行它?
答: 没配置环境的先安装环境,我写了bat脚本,双击START.bat安装就好。因为没有打包exe,所以你直接运行main.py就好了。 python .\main.py

自己训练的话需要多久?
答:首先建议你有一张性能好的显卡。我在Google Colaboratory用GPU + 12GRAM(中途会爆内存1~2次)训练大概200个epoch,单次350s(不采用注意力机制的话为500s),中途大概两次降低学习率。

需要联网么?
答: 可以在联网状态下查某地天气,不过比较无脑(调用别人的api),所以我就去掉了。现在纯单机即可运行。

需要的运行环境是什么?
答:python3.6以上,Tensorflow(上面提到我用的keras了),pandas,numpy,jieba。

我会python,这个好写么?
答:模型预测程序main.py运行时控制台会显示模型参数表,接触过深度学习的人自然一眼看明白,完全可以自己写出模型的训练部分;不懂深度学习的人请知道这不仅仅是python那么简单,即使给出全部代码你也无法凭借以往的编程经验看懂,你需要不排斥繁杂的数学推倒,且系统的接触传统机器学习和深度学习,特别是RNN(循环神经网络)。

想入门深度学习,有没有推荐的学习资料?
答:入门条件:对高等数学(尤指微积分),线性代数,概率论有较深入了解;有python编程基础;有一定英文水平,能实时看懂英文字幕,能大致看懂英文论文、期刊。满足入门条件后,可以在Coursera上跟着吴恩达(Andrew Ng)老师入门,他的课有课后作业和编程作业,教学视频大部分只有英文字幕。

后续还更新么?
答:看大家反馈喽。另有几个算法我暂时还没有实现,我也听说通过强化学习令情感奖励最大化或许能让模型具有感情色彩,这都是未来可以改进的方向。

补充:
@陌路无人  是的,这是单论对话模型。
@qrp127  听上去很简单,但我没接触过qq机器人这块,有空我会尝试的。

热心的朋友们送萌新我进影视区看看啊,蛮好奇的,谢谢


 

 

TIM图片20190527171052.png (23.5 KB, 下载次数: 26)

下载附件

2019-5-27 17:18 上传

弹窗

弹窗

 
 

TIM图片20190525220602.png (46.66 KB, 下载次数: 19)

下载附件

2019-5-25 22:06 上传

聊天界面

聊天界面

 
 

TIM图片20190527172102.png (46.67 KB, 下载次数: 19)

下载附件

2019-5-27 17:22 上传

压缩包内容

压缩包内容

 

免费评分 参与人数 29吾爱币 +31 热心值 +27 理由

sharokku4869
    + 1   谢谢@Thanks!  

一人之下123456
    + 1   谢谢@Thanks!  

qianxue
  + 1   + 1   感谢发布原创作品,吾爱破解论坛因你更精彩!  

lk311
  + 1   + 1   学习了  

空白的悲伤
  + 1   + 1   我很赞同!  

公子语凉
  + 1   + 1   我很赞同!  

-松叶萧-
  + 1   + 1   谢谢@Thanks!  

且随疾风前行
  + 1   + 1   热心回复!  

考拉熊
  + 1   + 1   热心回复!  

mikeee
  + 1   + 1   谢谢@Thanks!  

mark1001
  + 1   + 1   我很赞同!  

咚鼕鼕
  + 1   + 1   热心回复!  

小白的哥哥
    + 1   用心讨论,共获提升!  

魔影W
    + 1   我很赞同!  

caeloncc
  + 1   + 1   我很赞同!  

邓大侠
  + 1   + 1   我很赞同!  

troy919
  + 1   + 1   虽然我看不懂,但是我觉得很厉害  

xiaohei11
  + 1   + 1   热心回复!  

mengmeng
  + 1   + 1   谢谢@Thanks!  

Tsing_52
  + 1     我很赞同!  

44018723
  + 2   + 1   膜拜!最近也在学着做,搞不懂,头疼!  

时空之外
  + 1   + 1   吾爱果然卧虎藏龙~  

苏紫方璇
  + 5   + 1   感谢发布原创作品,吾爱破解论坛因你更精彩!  

ft7882886
  + 1   + 1   谢谢@Thanks!  

lendone
  + 1     谢谢@Thanks!  

qrp127
  + 1   + 1   可否调用qq的接口 当成qq机器人一样的聊天呀  

锋逸520
  + 1   + 1   用心讨论,共获提升!  

陌路无人
  + 2   + 1   应该没有上下文联系吧  

拔剑不知谁为雄
  + 1   + 1   这也太棒了吧。。  

查看全部评分