Mindspore框架循环神经网络RNN模型实现情感分类
Mindspore框架循环神经网络RNN模型实现情感分类|(一)IMDB影评数据集准备
Mindspore框架循环神经网络RNN模型实现情感分类|(二)预训练词向量
Mindspore框架循环神经网络RNN模型实现情感分类|(三)RNN模型构建
Mindspore框架循环神经网络RNN模型实现情感分类|(四)损失函数与优化器
Mindspore框架循环神经网络RNN模型实现情感分类|(五)模型训练
Mindspore框架循环神经网络RNN模型实现情感分类|(六)模型加载和推理(情感分类模型资源下载)
Mindspore框架循环神经网络RNN模型实现情感分类|(七)模型导出ONNX与应用部署
一、关于预训练词向量
在IMDB影评数据集的准备中提到词向量的预训练加载。
词向量(Word embedding),即把词语表示成实数向量。能体现词语直接的相近关系。词向量已经被证明可以提高NLP任务的性能,例如语法分析和情感分析。
词向量利用分布式假设,即相似的单词在上下文中出现的方式相似,因此可以使用向量空间模型将它们映射到低维向量表示。常见的词向量算法包括Word2Vec、GloVe
等。本项目用nn.embedding方法,计算词与词之间的语义距离,并结合词袋模型获取句子的语义表示。
在前面提到“I like the movie!” = 词向量[9 37 10 16 28],这是每个单词在词字典中的索引,这是映射。并没有词的含义,只有位置。即,第一步
:将每个单词或标记符号映射到一个唯一的整数ID。
第二步
:初始化一个随机的词向量矩阵,其中每行表示一个单词或标记的向量。
第三步
:通过最小化损失函数来训练词向量矩阵,以便使相似含义的单词具有相似的向量表示。常见的损失函数包括Skip-gram、CBOW和GloVe等。
第四步
:在训练完成后,使用训练出的词向量矩阵来表示新的文本数据,例如,可以将每个句子中的单词向量平均值作为句子的向量表示。
第五步
:可以使用这些词向量在各种自然语言处理任务中进行特征提取,例如文本分类、命名实体识别、情感分析等。
预训练的词向量,指提前训练好这种词向量,它是在极大样本上训练的结果,有很好的通用性,无论什么任务都可以直接拿来用。
当一个人读