我是靠谱客的博主 感性冥王星,最近开发中收集的这篇文章主要介绍【听说你还不会?】多层神经网络原理详细推导1 结构2 正向过程3 loss4 反向传播,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1 结构

在这里插入图片描述

第0层是输入层,输入为X,维度为 ( n [ 0 ] , m ) (n^{[0]},m) (n[0],m),其中 n [ 0 ] n^{[0]} n[0]表示第0层含有的节点,也是X的特征数。 m m m表示样本数。

以此类推,第1层的节点数 n [ 1 ] n^{[1]} n[1],第2层的节点数 n [ 2 ] n^{[2]} n[2],…,第L层的节点数 n [ L ] n^{[L]} n[L]

2 正向过程

第0层输入层数据 X X X,维度 ( n [ 0 ] , m ) (n^{[0]},m) (n[0],m) n [ 0 ] n^{[0]} n[0]表示第0层含有的节点,也是X的特征数。 m m m表示样本数。

第1层: Z [ 1 ] = W [ 1 ] X + b [ 1 ] Z^{[1]}=W^{[1]}X+b^{[1]} Z[1]=W[1]X+b[1] A [ 1 ] = g [ 1 ] ( Z [ 1 ] ) A^{[1]}=g^{[1]}(Z^{[1]}) A[1]=g[1](Z[1]) W [ 1 ] W^{[1]} W[1]表示第1层权值,维度 ( n [ 1 ] , n [ 0 ] ) (n^{[1]},n^{[0]}) (n[1],n[0]) b [ 1 ] b^{[1]} b[1]表示第1层偏置,维度 ( n [ 1 ] , 1 ) (n^{[1]},1) (n[1],1),这里的加号“+”,使用了广播方式,会将 b [ 1 ] b^{[1]} b[1]按列复制成维度 ( n [ 1 ] , m ) (n^{[1]},m) (n[1],m),从而与前面的 W [ 1 ] X W^{[1]}X W[1]X相加。 Z [ 1 ] Z^{[1]} Z[1]是第1层线性处理后的值,维度 ( n [ 1 ] , m ) (n^{[1]},m) (n[1],m) g [ 1 ] g^{[1]} g[1]表示第1层的激活函数, A [ 1 ] A^{[1]} A[1]表示第1层的输出,维度 ( n [ 1 ] , m ) (n^{[1]},m) (n[1],m)

第2层: Z [ 2 ] = W [ 2 ] A [ 1 ] + b [ 2 ] Z^{[2]}=W^{[2]}A^{[1]}+b^{[2]} Z[2]=W[2]A[1]+b[2] A [ 2 ] = g [ 2 ] ( Z [ 2 ] ) A^{[2]}=g^{[2]}(Z^{[2]}) A[2]=g[2](Z[2]) W [ 2 ] W^{[2]} W[2]表示第2层权值,维度 ( n [ 2 ] , n [ 1 ] ) (n^{[2]},n^{[1]}) (n[2],n[1]) b [ 2 ] b^{[2]} b[2]表示第2层偏置,维度 ( n [ 2 ] , 1 ) (n^{[2]},1) (n[2],1) Z [ 2 ] Z^{[2]} Z[2]是第2层线性处理后的值,维度 ( n [ 2 ] , m ) (n^{[2]},m) (n[2],m) g [ 2 ] g^{[2]} g[2]表示第2层的激活函数, A [ 2 ] A^{[2]} A[2]表示第2层的输出,维度 ( n [ 2 ] , m ) (n^{[2]},m) (n[2],m)

第L层: Z [ L ] = W [ L ] A [ L − 1 ] + b [ L ] Z^{[L]}=W^{[L]}A^{[L-1]}+b^{[L]} Z[L]=W[L]A[L1]+b[L] A [ L ] = g [ L ] ( Z [ L ] ) A^{[L]}=g^{[L]}(Z^{[L]}) A[L]=g[L](Z[L]) W [ L ] W^{[L]} W[L]表示第L层权值,维度 ( n [ L ] , n [ L − 1 ] ) (n^{[L]},n^{[L-1]}) (n[L],n[L1]) b [ L ] b^{[L]} b[L]表示第L层偏置,维度 ( n [ L ] , 1 ) (n^{[L]},1) (n[L],1) Z [ L ] Z^{[L]} Z[L]是第L层线性处理后的值,维度 ( n [ L ] , m ) (n^{[L]},m) (n[L],m) g [ L ] g^{[L]} g[L]表示第L层的激活函数, A [ L ] A^{[L]} A[L]表示第L层的输出,维度 ( n [ L ] , m ) (n^{[L]},m) (n[L],m) A [ L ] A^{[L]} A[L]就是网络的输出。

写在一起就是:

在这里插入图片描述

3 loss

损失函数可以有很多,如交叉熵,MSE等等

E = l o s s ( A [ L ] ) E=loss(A^{[L]}) E=loss(A[L])

4 反向传播

在这里插入图片描述

后续的,以此类推即可完成所有层的反向传播。

最后

以上就是感性冥王星为你收集整理的【听说你还不会?】多层神经网络原理详细推导1 结构2 正向过程3 loss4 反向传播的全部内容,希望文章能够帮你解决【听说你还不会?】多层神经网络原理详细推导1 结构2 正向过程3 loss4 反向传播所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(34)

评论列表共有 0 条评论

立即
投稿
返回
顶部