非监督版bp网络

简介

非监督版bp网络: 梯度下降 + 链式求偏导

介绍

信息前向传播, 误差反向传播

推导

忽略delta规则.

以包含一层隐藏层的bp网络为例, 设输入层为 x⃗  , 隐藏层为 y⃗  , 输出层为 z⃗  .
其中, 隐藏层中第i个神经元的输出为:

yi=sigmoid(j=0Vijpj)

输出层中第k个神经元的输出为:

zk=sigmoid(i=0Wkiyi)

对于非监督版而言, 输入为 x⃗  , 输出结果的期望也为 x⃗  ,
那么对于交叉熵误差:

E(V,W)=1n(xkln(zk)+(1xk)ln(1zk))

训练过程中需要使用随机梯度下降的方式, 不断优化矩阵 V 额矩阵 W 中的值.

Vj+1=VjαE1

其中, α 为学习速率, E1 为梯度.

Wj+1=WjβE2

其中, β 为学习速率, E2 为梯度.

对于隐藏层到输出层的梯度:

Ewki=Ezkzkwki

等号左边的式子可以转变为求解等号右边的式子.
其中, Ezk 是对公式(3)对 zk 求偏导,
zkwki 是公式(2)对 wki 求偏导.

对于输入层到隐藏的梯度:

Evij=Ezkzkyiyivij

需要计算等号左边的值, 只需要计算等号右边的式子即可.
式子 Ezk 为公式(3)对 zk 求偏导,
式子 zkyi 为公式(2)对 yi 求偏导,
式子 yivij 为公式(1)对 vij 求偏导.

接着上面求偏导的过程就成为一个链.

代码

后补

你可能感兴趣的:(BP,非监督)