"景先生毕设|www.jxszl.com

基于深度学习的新闻文本分类算法【字数:8068】

2024-02-25 13:32编辑: www.jxszl.com景先生毕设
本文使用tensorflow作为开发环境,python为编程语言,在ubuntu平台上研究、比较了卷积神经网络模型和循环神经网络模型在文本分类任务中的准确率。首先,对新闻文本进行预处理,将其转化为可以用作神经网络算法训练的训练数据。将原有的文本数据分别编码为one-hot编码和词向量,分别用于卷积神经网络和循环神经网络的训练。对于字符级的卷积神经网络,需要将新闻文本进行one-hot编码;对于循环神经网络算法,则需先将新闻文本使用skip-gram模型将分词后的数据训练为词向量。最后卷积神经网络模型在测试集上的准确率和召回率均为96%,循环神经网络在测试集上的准确率以及召回率均为94%。因此我们可以得出字符级别的卷积神经网络,更加适于处理文本分类问题这一结论。
目录
摘要 4
关键词 4
Abstract 4
Key words 5
引言 5
1 课题分析 5
1.1 国内外研究现状 5
1.2 本文所做工作 5
1.3 技术路线图 6
2 预备知识 6
2.1 中文分词方法 6
2.1.1 按字符串匹配的分词法 6
2.1.2 基于语义的分词法 7
2.1.3 统计规则分词法 7
2.2 文本特征提取算法 7
2.2.1 onehot编码 7
2.2.2 词向量 7
2.3 基于机器学习的文本分类方法 7
2.3.1 文本特征选择 7
2.3.2 基于决策树的分类算法 8
2.3.2 基于SVM的分类算法 8
2.4 深度学习模型 8
3 文本预处理与特征提取 9
3.1 文本数据介绍 9
3.2 文本预处理 9
3.2.1 onehot编码 9
3.2.2 转化为词向量 10
4 字符级别的卷积神经网络模型 10
4.1 卷积神经网络模型设计 10
4.2 参数设置及模型训练 11
4.2.1 实 *51今日免费论文网|www.jxszl.com +Q: ^351916072
验环境 11
4.2.2 模型参数设置 11
4.2.3 模型的训练 11
4.2.4 损失函数 11
4.3 实验结果 12
5 带有长短时记忆的循环神经网络 13
5.1 循环神经网络模型设计 13
5.2 参数设置及模型训练 13
5.2.1 实验环境 13
5.2.2 模型参数设置 13
5.2.3 模型参数优化方法 14
5.2.4 Dropout策略 14
5.3 实验结果 14
6 总结与展望 15
6.1 总结 15
6.2 展望 15
致谢 15
参考文献: 15
基于深度学习的新闻文本分类算法
引言
引言
1 课题分析
1.1 国内外研究现状
在文本表示方面,Collobert等人提出采用神经网络的方法,来将文本训练为词向量。[1]其语言学上的意义为,一个词所包含的意义应该由其本身和其周围的词所共同决定。在具体的训练算法上,Mikolov等人提出了两种不同的训练方法,一是使用周围词预测中间词概率的连续词袋模型(CBOW)。另一种是使用中间词预测周围词概率的Skipgram模型。
关于构建语言模型的研究,Lin C Y等人提出使用RNN算法来进行句法解析,并构建起深层结构。[11]相对具有相同参数数量的浅层RNN算法而言,深层结构的RNN算法具有更高的准确率。但是深层RNN结构在训练的过程中存在梯度爆炸和消失问题[2],这一特点使其无法处理较长的数据,如长文本。[2]长短时记忆神经网络LSTM( Long ShortTerm Memory)能够在训练时将深层的梯度值传到浅层,已解决梯度爆炸和消失的问题,适用于处理序列数据中,两个相互关联的数据相隔相对较长的情况。
然而,Xiang Zhang等人提出使用字符级别的卷积神经网络,首先对文本的字符进行onehot编码,然后再使用深层卷积神经网络对编码后的数据进行训练,相对于使用词向量的循环神经网络算法而言,可以达到更高的文本分类准确率。[10]在文本表示方面,大部分研究人员都使用word2vec算法对文本数据进行表示,已经形成初步共识;然而在语言模型的构建方面,仍存在大量的争议,尤其是在使用卷积神经网络还是使用循环神经网络这一问题上,仍需更多研究与探讨。
1.2 本文所做工作
本文通过比较卷积神经网络算法和循环神经网络算法在THUCNews数据集上进行分类的准确率,找出具有较高准确率的文本分类算法。首先,对新闻文本进行预处理,将其转化为可以用作神经网络算法训练的训练数据。由于字符级卷积神经网络算法和循环神经网络算法,所需的训练数据格式不同。所以需要将文本预处理分为两个部分。对于字符级的卷积神经网络,需要将新闻文本进行onehot编码;对于循环神经网络算法,则需先将新闻文本分词,然后使用skipgram模型将分词后的数据训练为词向量。
其次,分别编写卷积神经网络算法,和循环神经网络算法。并将数据集分为训练集和验证集,调整模型中的超参数,并使用十折交叉验证法对模型的准确性和泛化能力进行验证。最后,将准确率最高的模型与已有的文本分类算法作比较,验证模型的有效性。
1.3 技术路线图
/
图1 技术路线图
2 预备知识
2.1 中文分词方法
分词是指将一段文本数据根据文字中的语义,将其分为一个个单独的词语。换而言之,分词就是把连续的中文字序列按照语义,分割为不同的部分并组成新的序列。然而,由于有空格作为单词之间的自然分界符,英文文本数据并不需要分词操作。[3]而在中文文本数据中,字、句和段之间并没有明显的分界符来划分不同词语之间的边界,这使得中文文本数据相对于英文而言,更加难以将其转化为标准化数据;
2.1.1 按字符串匹配的分词法

原文链接:http://www.jxszl.com/jsj/jsjkxyjs/562889.html