临近毕业季,又想起了做过的简易聊天机器人chartbot毕业设计,因为算是自己第一次接触这个智能问答领域吧,所以到现在还觉得特别有意思且难忘。我是个行动派,觉得有意思的东西,肯定就要记录下来了。下面我会简要叙述当时我的一些思路以及注意事项,希望对大家有所启示。
1. 解决的实际问题
本项目类似于知识问答系统,就是用户任意输入一段话,我们的系统会自动生成回复内容,并在界面中展示出来。废话不多说,先上图吧!
可以看到简单的对话功能是实现了,和Siri语音对话助手差不多,当然了,功能没那么强大哈!这个不能吹牛b。
2. 工作环境配置
配置环境是你写代码的第一步,也是最基础的一步。很多人会在配置环境这一块崩溃掉,绝对不包括我哈哈哈哈哈。
1) Python3.6 (虽然现在都到了3.7了,但我仍是觉得3.6是目前比较稳定的一个版本,2.7版本都要舍弃了,所以大家不要再使用这个版本了)
2) Pytorch1.4 (建议先装好Anaconda环境,再在pytorch官网用conda命令安装1.4版本的pytorch. 用pip安装总是报bug,亲身经历哈!最后,安装的时候如果网速奇差,反正我每次都是这样,建议直接下载.whl安装包,然后用pip命令在安装包目录下安装,不然你可能会崩溃掉的,相信我,10k的网速你不会同意的)
3) jieba (这是个分词包,版本没限制,好像没出什么问题)
4) torchnet (这个包也是一样的恶心,直接用pip或conda命令在dos界面安装的话,多半是安装到一半给你希望然后直接崩溃报错的,凡是碰到此类状况,听我的,什么也不要做,砸电脑就是了。哈哈哈哈哈哈开个玩笑哈,直接在网上搜torchnet安装包吧,离线下载了只能)
5) fire (这个包没什么限制,正常装上去即可)
最后,我还是想提下,pytorch版本分为CPU版和GPU版。CPU版就是普通的,只在你笔记本上跑,你也不用管什么。有钱的科研大佬自然就懂GPU版本的,比如像我咳咳咳,不要脸又来了哈哈哈。有条件的还是下载GPU版本的Pytorch吧,否则后面训练预料的话电脑基本上会卡住,当然想偷懒只下CPU版本的也行,我会提供一个训练好的模型给大家。
3. 数据预处理
由于我做的是中文聊天机器人,所以选用的训练语料也是中文的。中文的预料集也有很多种类的,大的语料集能有几个G以上的,迷你型的10M左右吧。大的语料集我说过你要是没有GPU这类的硬件