量子位 机器学习人门贴送上,看完发现RNN原来是这样( 二 )


预处理
首先 , 我们要先进行一些预处理——将数据集转化为可用的格式 。 因为RNN暂且还不能识别单词 , 所以 , 我们需要构建一个所有单词的词汇表 , 并给它编号 。
在词汇表中 , 有18个单词 , 那就意味着每一个单词是一个x , 那么输入就是一个18维的向量 。
训练RNN
接下来 , 就是按照原始RNN所需的3个权重 , 与2个偏差开始 。
就是我们前面见过的公式 。
量子位 机器学习人门贴送上,看完发现RNN原来是这样
文章图片
就像此前训练CNN一样 , 训练RNN , 首先需要一个损失函数 。
此次将使用交叉熵损失与Softmax联合计算:
量子位 机器学习人门贴送上,看完发现RNN原来是这样
文章图片
(其中c表示某个文本标签 , 比如correct)
举个例子 , 如果一个肯定文本测试显示有90%的概率是肯定的 , 那么它的损失函数是:
量子位 机器学习人门贴送上,看完发现RNN原来是这样
文章图片
计算了损失函数以后 , 就要利用梯度下降的训练来减小损失 。
接下来 , 就涉及到多变量演算 , 计算思路跟之前的一样 , 只是具体计算公式有所不同 。 详情就戳下方链接 。
训练之后 , 别忘了 , 还需要进行一番测试哦~
好了 , 今天有关RNN介绍 , 就到这里了 。


推荐阅读