本文将会整合近几年来比较热门的一些文本匹配模型,并以QA_corpus
为测试基准,分别进行测试,代码均采用tensorflow进行实现,每个模型均会有理论讲解与代码实现。
项目代码与论文讲解都在持续更新中
https://blog.csdn.net/u012526436/article/details/90212287
https://blog.csdn.net/u012526436/article/details/90380840
https://blog.csdn.net/u012526436/article/details/90179481
https://blog.csdn.net/u012526436/article/details/88663975
https://blog.csdn.net/u012526436/article/details/90710925
https://blog.csdn.net/u012526436/article/details/90757018
数据集为QA_corpus,训练数据10w条,验证集和测试集均为1w条
其中对应模型文件夹下的args.py
文件是超参数
训练: python train.py
测试: python test.py
词向量:不同的模型输入不一样,有的模型的输入只有简单的字向量,有的模型换成了字向量+词向量,甚至还有静态词向量(训练过程中不进行更新)和 动态词向量(训练过程中更新词向量),所有不同形式的输入均以封装好,调用方法如下
静态词向量,请执行 python word2vec_gensim.py
,该版本是采用gensim来训练词向量
动态词向量,请执行 python word2vec.py
,该版本是采用tensorflow来训练词向量,训练完成后会保存embedding矩阵、词典和词向量在二维矩阵的相对位置的图片, 如果非win10环境,由于字体的原因图片可能保存失败
测试集结果对比: