RNN

词向量:使用word2vec的思想,就是文本中离得相近的词语相似度越高。CBOW使用上下文词,来预测。下面使用热度图来表述词向量。

RNN_第1张图片
比如今天打你,今天为x1,打为x2,你为x3。然后将x1,x3随机初始化为50维的向量。将他们放入下面的神经网络中,x1、x3作为输入,然后把输出做分类,最后看看能不能把x2的id预测出来 。在反向传播中除了更新权值,还要更新输入参数。通常情况下词向量是通用的,不用专门训练。
RNN_第2张图片负采样:比如在一个3w的语料库中,今天打你‘,’打‘就是一个标签,而比如其他词:简直,扇…,剩下的2999都均为负样本,这样负样本太多了,在负样本做一个采样,选取9个,现在就是一个十分类任务。
hard-native:比如:有一个朋友发射火箭。火箭就是一个正样本,而负样本假如选取篮球,桌子之类的,这样就非常容易选择出来,我们可以选择一些与火箭类似的词,比如:导弹等,这样才可以让模型真正学习到东西。

首先Embedding,将词转为词向量。将x0隐层的特征,传到第二个与x1一起进行计算,再将x1的隐层特征,传到第三个与x2一起计算。通常情况下,选择最后一个序列输出结果作为输出。RNN缺点:如果序列太长,会导致在反向传播的时候出现问题,假如其中一层梯度消失,会导致整个序列不能反向传播。以下只是一层网络。

RNN_第3张图片这个为两层网络
RNN_第4张图片由于RNN记得太多,LSTM加控制单元,一个信息,一个词来之后,哪些该记,哪些不该记。RNN中句子长度必须固定。词向量的维度也需要固定。
RNN_第5张图片
以下条件的情况下,计算输入:首先是batch,每个batch均是句子,句子由长度一百的词组成,每一个词由300维的向量组成,也就是64100300
RNN_第6张图片

你可能感兴趣的:(深度学习,rnn,深度学习,神经网络)