基于卷积神经网络的问答方法研究

时间:2021-10-03 08:15:23
【文件属性】:

文件名称:基于卷积神经网络的问答方法研究

文件大小:101.13MB

文件格式:ZIP

更新时间:2021-10-03 08:15:23

Python 卷积神经网络 算法

1.环境配置: ubantu(16.04) python(3.5) tensorflow(0.12.0) export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.10.0-cp35-cp35m-linux_x86_64.whl sudo pip3 install --upgrade $TF_BINARY_URL 2.模型介绍: https://www.tensorflow.org/versions/r0.12/tutorials/seq2seq/ 本项目基于seq2seq模型: 问答对: 问题:你是谁?-->转为向量(20,9,10) 答案:我是你的机器人。-->转为向量(30,9,20,1,3,4,5) 将以上向量放入模型进行训练。 3.模型优化: layer_size = 256 # 每层大小 num_layers = 3 # 层数 增大layer_size的大小以扩大特征矩阵,调整隐层数量,调整学习率函数,提高训练次数。 4.模型使用: (1)首先在data文件夹里放置训练集文件,并命名为dgk_shooter_min.conv,数据格式请参考我发给你的实例文件,编码请使用utf-8 (2)运行read_data.py将初始数据转化为问答对,并分割数据成训练集和测试集,保存为: train_encode_file = 'data/train.enc' train_decode_file = 'data/train.dec' test_encode_file = 'data/test.enc' test_decode_file = 'data/test.dec' 然后程序会以测试集以及训练集中的问答对为输入生成词汇表(类似搜索引擎的索引库),接着基于以上生成的词汇表,把问答对转化为向量矩阵,以方便在模型中训练。 (3)运行cnnbrain_model.py读取训练集并且训练模型,注意如果不停止模型会一直不停的自动训练下去。并且模型会自动调整学习率。如果人为终止程序,在下次运行时程序会接着上次的模型继续进行训练。 (4)运行test.py进行模型测试


【文件预览】:
project_deepqa.rar

网友评论