机器学习自动写诗-学习笔记

 

要先将字编码成向量

 

要对之前的信息有记忆

相同的输入,写诗,可能有不同的输出。

可以发现,输入不止与当前输入有关,还和之前的输入有关。要有记忆!

将隐藏层的激活值利用

 

循环神经网络

a0=0,初始值=0

上次输入的不同,记忆值不同,使得现在相同的输入可以得到不同的输出。


 

缺点:梯度爆炸和梯度消失

记忆值不断相乘累加。w^n

梯度爆炸和梯度消失:wn(w>1和w<1)。

w'=w-a*Δ

 

需要一个模型,能够记忆久远输入和近期遗忘。


 

LSTM::long short-term memory长短期记忆网络

加入输入门、输出门和遗忘门。使用sigmod函数。

sigmod函数:0-1之间。中点0.5

 

LSTM:

f:遗忘门,forget gate

 

 

循环神经网络分类概述:

many to many:

  • 有多少输入,就多少输出
  • 输入输出数目不等

many to one

 

情感分析,差评还是好评。

one to many

看图说话,写诗就是这个模型。

 

双向循环网络:

不止和之前输入有关,还和之后的输入相关。

 

深度循环神经网络:

很多隐藏层

 作诗用的是lstm:只输入第一个字,一个一个输出接着作诗。

 

 

 L1+L2+...+Ln

再求梯度。

 

代码:

 

 

posted @ 2018-12-07 21:25  ostartech  阅读(1722)  评论(1编辑  收藏  举报