当前位置: 首页 > news >正文

这样做微信网站网页制作视频教程自学网

这样做微信网站,网页制作视频教程自学网,徐州建设网站价格,wordpress影视网站文章目录 前言1.sigmod函数2.sigmoid求导3.损失函数loss4.神经网络1.神经网络结构2.公式表示-正向传播3.梯度计算1.Loss 函数2.梯度1.反向传播第2-3层2.反向传播第1-2层 3.python代码4.MNIST 数据集 前言 本章主要推导一个简单的两层神经网络。 其中公式入口【入口】 1.sigmod… 文章目录 前言1.sigmod函数2.sigmoid求导3.损失函数loss4.神经网络1.神经网络结构2.公式表示-正向传播3.梯度计算1.Loss 函数2.梯度1.反向传播第2-3层2.反向传播第1-2层 3.python代码4.MNIST 数据集 前言 本章主要推导一个简单的两层神经网络。 其中公式入口【入口】 1.sigmod函数 激活函数我们选择sigmod其如下 f ( x ) 1 1 e − x f(x)\frac{1}{1e^{-x}} f(x)1e−x1​ 其图形为 可以用python表示 def sigmoid(x):return 1.0/(1.0np.exp(-x))2.sigmoid求导 先看一个复合函数求导 如果 y ( u ) f ( u ) , u ( x ) g ( x ) , 那么 d y d x d y d u ∗ d u d x 如果y(u)f(u),u(x)g(x), 那么\frac{dy}{dx}\frac{dy}{du} * \frac{du}{dx} 如果y(u)f(u),u(x)g(x),那么dxdy​dudy​∗dxdu​ 那么对于sigmoid函数求导 f ( x ) 1 1 e − x , 那么假设 g ( x ) 1 e − x , f ( x ) 1 g ( x ) f ( x ) ‘ − 1 g ( x ) 2 ∗ ( − e − x ) e − x ( 1 e − x ) 2 f ( x ) ∗ ( 1 − f ( x ) ) f(x)\frac{1}{1e^{-x}},\\ 那么假设g(x)1e^{-x}, \\ f(x)\frac{1}{g(x)}\\ f(x)^\frac{-1}{g(x)^2}*{(-e^{-x})}\frac{e^{-x}}{(1e^{-x})^{2}}f(x)*(1-f(x)) f(x)1e−x1​,那么假设g(x)1e−x,f(x)g(x)1​f(x)‘g(x)2−1​∗(−e−x)(1e−x)2e−x​f(x)∗(1−f(x)) 如果用python表达 def sigmoid_prime(x):sigmoid 函数的导数return sigmoid(x)*(1-sigmoid(x))3.损失函数loss L o s s 1 2 ∗ ( y ˘ − y ) 2 Loss\frac{1}{2}*{(\breve{y}-y)}^2 Loss21​∗(y˘​−y)2 它的导数 L o s s ‘ y ˘ − y Loss^\breve{y}-y Loss‘y˘​−y 4.神经网络 1.神经网络结构 本次我们采用如下神经网络 2.公式表示-正向传播 w 13 ∗ x 1 w 23 ∗ x 2 b 1 σ 3 , 那么 y 3 ˘ s i g m o i d ( σ 3 ) w 14 ∗ x 1 w 24 ∗ x 2 b 2 σ 4 , 那么 y 4 ˘ s i g m o i d ( σ 4 ) w 15 ∗ x 1 w 25 ∗ x 2 b 3 σ 5 , 那么 y 5 ˘ s i g m o i d ( σ 5 ) 同理可得 w 36 ∗ y 3 ˘ w 46 ∗ y 4 ˘ w 56 ∗ y 5 ˘ b 4 σ 6 , 那么 y 6 ˘ s i g m o i d ( σ 6 ) w_{13}*x_1w_{23}*x_2b_1\sigma_3, 那么\breve{y_3}sigmoid(\sigma_3)\\ w_{14}*x_1w_{24}*x_2b_2\sigma_4, 那么\breve{y_4}sigmoid(\sigma_4)\\ w_{15}*x_1w_{25}*x_2b_3\sigma_5, 那么\breve{y_5}sigmoid(\sigma_5)\\ 同理可得\\ w_{36}*\breve{y_3}w_{46}*\breve{y_4}w_{56}*\breve{y_5}b_4\sigma_6, 那么\breve{y_6}sigmoid(\sigma_6)\\ w13​∗x1​w23​∗x2​b1​σ3​,那么y3​˘​sigmoid(σ3​)w14​∗x1​w24​∗x2​b2​σ4​,那么y4​˘​sigmoid(σ4​)w15​∗x1​w25​∗x2​b3​σ5​,那么y5​˘​sigmoid(σ5​)同理可得w36​∗y3​˘​w46​∗y4​˘​w56​∗y5​˘​b4​σ6​,那么y6​˘​sigmoid(σ6​) 上面的公式我们用矩阵表示 [ x 1 x 2 ] ⋅ [ w 13 w 14 w 15 w 23 w 24 w 25 ] [ b 1 b 2 b 3 ] [ w 13 ∗ x 1 w 23 ∗ x 2 b 1 w 14 ∗ x 1 w 24 ∗ x 2 b 2 w 15 ∗ x 1 w 25 ∗ x 2 b 3 ] [ σ 3 σ 4 σ 5 ] 代入激活函数 [ s i g m o i d ( σ 3 ) s i g m o i d ( σ 4 ) s i g m o i d ( σ 5 ) ] [ y 3 ˘ y 4 ˘ y 5 ˘ ] [ y 3 ˘ y 4 ˘ y 5 ˘ ] ⋅ [ w 36 w 46 w 56 ] [ b 4 ] [ w 36 ∗ y 3 ˘ w 46 ∗ y 4 ˘ w 56 ∗ y 5 ˘ b 4 ] σ 6 , s i g m o i d ( σ 6 ) y ˘ 6 \left[\begin {array}{c} x_1 x_2 \\ \end{array}\right] \cdot \left[\begin {array}{c} w_{13} w_{14} w_{15} \\ w_{23} w_{24} w_{25} \\ \end{array}\right] \left[\begin {array}{c} b_{1} \\ b_{2} \\ b_{3} \\ \end{array}\right] \left[\begin {array}{c} w_{13}*x_1w_{23}*x_2b_1\\ w_{14}*x_1w_{24}*x_2b_2\\ w_{15}*x_1w_{25}*x_2b_3\\ \end{array}\right] \left[\begin {array}{c} \sigma_{3} \\ \sigma_{4} \\ \sigma_{5} \\ \end{array}\right]\\ 代入激活函数\\ \left[\begin {array}{c} sigmoid(\sigma_3) \\ sigmoid(\sigma_4) \\ sigmoid(\sigma_5) \\ \end{array}\right] \left[\begin {array}{c} \breve{y_3} \\ \breve{y_4}\\ \breve{y_5} \\ \end{array}\right]\\ \left[\begin {array}{c}\\ \breve{y_3} \breve{y_4} \breve{y_5} \\ \end{array}\right] \cdot \left[\begin {array}{c} w_{36} \\ w_{46} \\ w_{56} \\ \end{array}\right] \left[\begin {array}{c} b_{4} \\ \end{array}\right] \left[\begin {array}{c} w_{36}*\breve{y_3}w_{46}*\breve{y_4}w_{56}*\breve{y_5}b_4 \\ \end{array}\right]\sigma_6\\ ,\\ sigmoid(\sigma_6)\breve{y}_6 [x1​​x2​​]⋅[w13​w23​​w14​w24​​w15​w25​​] ​b1​b2​b3​​ ​ ​w13​∗x1​w23​∗x2​b1​w14​∗x1​w24​∗x2​b2​w15​∗x1​w25​∗x2​b3​​ ​ ​σ3​σ4​σ5​​ ​代入激活函数 ​sigmoid(σ3​)sigmoid(σ4​)sigmoid(σ5​)​ ​ ​y3​˘​y4​˘​y5​˘​​ ​[y3​˘​​y4​˘​​y5​˘​​]⋅ ​w36​w46​w56​​ ​[b4​​][w36​∗y3​˘​w46​∗y4​˘​w56​∗y5​˘​b4​​]σ6​,sigmoid(σ6​)y˘​6​ 3.梯度计算 1.Loss 函数 L o s s 1 2 ∗ ( y ˘ 6 − y 6 ) 2 Loss\frac{1}{2}*{(\breve{y}_6-y_6)}^2 Loss21​∗(y˘​6​−y6​)2 2.梯度 1.反向传播第2-3层 [ ∂ l ∂ w 36 ∂ l ∂ w 46 ∂ l ∂ w 56 ] [ ∂ l ∂ y ˘ 6 ∗ ∂ y ˘ 6 ∂ σ 6 ∗ ∂ σ 6 ∂ w 36 ∂ l ∂ y ˘ 6 ∗ ∂ y ˘ 6 ∂ σ 6 ∗ ∂ σ 6 ∂ w 46 ∂ l ∂ y ˘ 6 ∗ ∂ y ˘ 6 ∂ σ 6 ∗ ∂ σ 6 ∂ w 56 ] [ ( y ˘ 6 − y 6 ) ∗ S ( σ 6 ) ∗ ( 1 − S ( σ 6 ) ) ∗ y ˘ 3 ( y ˘ 6 − y 6 ) ∗ S ( σ 6 ) ∗ ( 1 − S ( σ 6 ) ) ∗ y ˘ 4 ( y ˘ 6 − y 6 ) ∗ S ( σ 6 ) ∗ ( 1 − S ( σ 6 ) ) ∗ y ˘ 5 ] \left[\begin {array}{c} \frac{\partial{l}}{\partial{w_{36}}} \\ \\ \frac{\partial{l}}{\partial{w_{46}}} \\ \\ \frac{\partial{l}}{\partial{w_{56}}} \\ \end{array}\right] \left[\begin {array}{c} \frac{\partial{l}}{\partial{\breve{y}_6}} * \frac{\partial{\breve{y}_6}}{\partial{\sigma_6}} * \frac{\partial{\sigma_6}}{\partial{w_{36}}} \\ \\ \frac{\partial{l}}{\partial{\breve{y}_6}} * \frac{\partial{\breve{y}_6}}{\partial{\sigma_6}} * \frac{\partial{\sigma_6}}{\partial{w_{46}}} \\ \\ \frac{\partial{l}}{\partial{\breve{y}_6}} * \frac{\partial{\breve{y}_6}}{\partial{\sigma_6}} * \frac{\partial{\sigma_6}}{\partial{w_{56}}} \\ \end{array}\right] \left[\begin {array}{c} (\breve{y}_6-y_6)*S(\sigma_6)*(1-S(\sigma_6))*\breve{y}_3\\ \\ (\breve{y}_6-y_6)*S(\sigma_6)*(1-S(\sigma_6))*\breve{y}_4\\ \\ (\breve{y}_6-y_6)*S(\sigma_6)*(1-S(\sigma_6))*\breve{y}_5\\ \end{array}\right] \\ ​∂w36​∂l​∂w46​∂l​∂w56​∂l​​ ​ ​∂y˘​6​∂l​∗∂σ6​∂y˘​6​​∗∂w36​∂σ6​​∂y˘​6​∂l​∗∂σ6​∂y˘​6​​∗∂w46​∂σ6​​∂y˘​6​∂l​∗∂σ6​∂y˘​6​​∗∂w56​∂σ6​​​ ​ ​(y˘​6​−y6​)∗S(σ6​)∗(1−S(σ6​))∗y˘​3​(y˘​6​−y6​)∗S(σ6​)∗(1−S(σ6​))∗y˘​4​(y˘​6​−y6​)∗S(σ6​)∗(1−S(σ6​))∗y˘​5​​ ​ 上面的式子中 S ( x ) 1 1 e − x S(x)\frac{1}{1e^{-x}} S(x)1e−x1​其中 σ 6 \sigma_6 σ6​通过正向传播可以计算出来具体细节看2式。 根据公式2我们已经知道 y ˘ 6 \breve{y}_6 y˘​6​和 y ˘ 3 \breve{y}_3 y˘​3​的值所以上面的权重偏导数就能计算出来了。 下面求bias的偏导数 ∂ l ∂ b 4 \frac{\partial{l}}{\partial{b_4}} ∂b4​∂l​. ∂ l ∂ b 4 ∂ l ∂ y ˘ 6 ∗ ∂ y ˘ 6 ∂ σ 6 ∗ ∂ σ 6 ∂ b 4 ( y ˘ 6 − y 6 ) ∗ S ( σ 6 ) ∗ ( 1 − S ( σ 6 ) ) \frac{\partial{l}}{\partial{b_4}} \frac{\partial{l}}{\partial{\breve{y}_6}} * \frac{\partial{\breve{y}_6}}{\partial{\sigma_6}} * \frac{\partial{\sigma_6}}{\partial{b_4}} (\breve{y}_6-y_6)* S(\sigma_6)*(1-S(\sigma_6)) ∂b4​∂l​∂y˘​6​∂l​∗∂σ6​∂y˘​6​​∗∂b4​∂σ6​​(y˘​6​−y6​)∗S(σ6​)∗(1−S(σ6​)) 2.反向传播第1-2层 权重 [ ∂ l ∂ w 13 ∂ l ∂ w 23 ∂ l ∂ w 14 ∂ l ∂ w 24 ∂ l ∂ w 15 ∂ l ∂ w 25 ] [ ∂ l ∂ y ˘ 6 ∗ ∂ y ˘ 6 ∂ σ 6 ∗ ∂ σ 6 ∂ y ˘ 3 ∗ ∂ y ˘ 3 ∂ σ 3 ∗ ∂ σ 3 ∂ w 13 ∂ l ∂ y ˘ 6 ∗ ∂ y ˘ 6 ∂ σ 6 ∗ ∂ σ 6 ∂ y ˘ 3 ∗ ∂ y ˘ 3 ∂ σ 3 ∗ ∂ σ 3 ∂ w 23 ∂ l ∂ y ˘ 6 ∗ ∂ y ˘ 6 ∂ σ 6 ∗ ∂ σ 6 ∂ y ˘ 4 ∗ ∂ y ˘ 4 ∂ σ 4 ∗ ∂ σ 4 ∂ w 14 ∂ l ∂ y ˘ 6 ∗ ∂ y ˘ 6 ∂ σ 6 ∗ ∂ σ 6 ∂ y ˘ 4 ∗ ∂ y ˘ 4 ∂ σ 4 ∗ ∂ σ 4 ∂ w 24 ∂ l ∂ y ˘ 6 ∗ ∂ y ˘ 6 ∂ σ 6 ∗ ∂ σ 6 ∂ y ˘ 5 ∗ ∂ y ˘ 5 ∂ σ 5 ∗ ∂ σ 5 ∂ w 15 ∂ l ∂ y ˘ 6 ∗ ∂ y ˘ 6 ∂ σ 6 ∗ ∂ σ 6 ∂ y ˘ 5 ∗ ∂ y ˘ 5 ∂ σ 5 ∗ ∂ σ 5 ∂ w 25 ] . . [ ( y ˘ 6 − y 6 ) ∗ S ( σ 6 ) ∗ ( 1 − S ( σ 6 ) ) ∗ w 36 ∗ S ( σ 3 ) ∗ ( 1 − S ( σ 3 ) ) ∗ x 1 ( y ˘ 6 − y 6 ) ∗ S ( σ 6 ) ∗ ( 1 − S ( σ 6 ) ) ∗ w 36 ∗ S ( σ 3 ) ∗ ( 1 − S ( σ 3 ) ) ∗ x 2 ( y ˘ 6 − y 6 ) ∗ S ( σ 6 ) ∗ ( 1 − S ( σ 6 ) ) ∗ w 46 ∗ S ( σ 4 ) ∗ ( 1 − S ( σ 4 ) ) ∗ x 1 ( y ˘ 6 − y 6 ) ∗ S ( σ 6 ) ∗ ( 1 − S ( σ 6 ) ) ∗ w 46 ∗ S ( σ 4 ) ∗ ( 1 − S ( σ 4 ) ) ∗ x 2 ( y ˘ 6 − y 6 ) ∗ S ( σ 6 ) ∗ ( 1 − S ( σ 6 ) ) ∗ w 56 ∗ S ( σ 5 ) ∗ ( 1 − S ( σ 5 ) ) ∗ x 1 ( y ˘ 6 − y 6 ) ∗ S ( σ 6 ) ∗ ( 1 − S ( σ 6 ) ) ∗ w 56 ∗ S ( σ 5 ) ∗ ( 1 − S ( σ 5 ) ) ∗ x 2 ] \left[\begin {array}{c} \frac{\partial{l}}{\partial{w_{13}}} \frac{\partial{l}}{\partial{w_{23}}} \\ \\ \frac{\partial{l}}{\partial{w_{14}}} \frac{\partial{l}}{\partial{w_{24}}}\\ \\ \frac{\partial{l}}{\partial{w_{15}}} \frac{\partial{l}}{\partial{w_{25}}}\\ \end{array}\right] \left[\begin {array}{c} \frac{\partial{l}}{\partial{\breve{y}_6}} * \frac{\partial{\breve{y}_6}}{\partial{\sigma_6}} * \frac{\partial{\sigma_6}}{\partial{\breve{y}_{3}}} * \frac{\partial{\breve{y}_3}}{\partial{\sigma_{3}}} * \frac{\partial{\sigma_3}}{\partial{w_{13}}} \frac{\partial{l}}{\partial{\breve{y}_6}} * \frac{\partial{\breve{y}_6}}{\partial{\sigma_6}} * \frac{\partial{\sigma_6}}{\partial{\breve{y}_{3}}} * \frac{\partial{\breve{y}_3}}{\partial{\sigma_{3}}} * \frac{\partial{\sigma_3}}{\partial{w_{23}}} \\ \\ \frac{\partial{l}}{\partial{\breve{y}_6}} * \frac{\partial{\breve{y}_6}}{\partial{\sigma_6}} * \frac{\partial{\sigma_6}}{\partial{\breve{y}_{4}}} * \frac{\partial{\breve{y}_4}}{\partial{\sigma_{4}}} * \frac{\partial{\sigma_4}}{\partial{w_{14}}} \frac{\partial{l}}{\partial{\breve{y}_6}} * \frac{\partial{\breve{y}_6}}{\partial{\sigma_6}} * \frac{\partial{\sigma_6}}{\partial{\breve{y}_{4}}} * \frac{\partial{\breve{y}_4}}{\partial{\sigma_{4}}} * \frac{\partial{\sigma_4}}{\partial{w_{24}}} \\ \\ \ \frac{\partial{l}}{\partial{\breve{y}_6}} * \frac{\partial{\breve{y}_6}}{\partial{\sigma_6}} * \frac{\partial{\sigma_6}}{\partial{\breve{y}_{5}}} * \frac{\partial{\breve{y}_5}}{\partial{\sigma_{5}}} * \frac{\partial{\sigma_5}}{\partial{w_{15}}} \frac{\partial{l}}{\partial{\breve{y}_6}} * \frac{\partial{\breve{y}_6}}{\partial{\sigma_6}} * \frac{\partial{\sigma_6}}{\partial{\breve{y}_{5}}} * \frac{\partial{\breve{y}_5}}{\partial{\sigma_{5}}} * \frac{\partial{\sigma_5}}{\partial{w_{25}}} \\ \end{array}\right]\\ .\\ .\\ \left[\begin {array}{c} (\breve{y}_6-y_6)*S(\sigma_6)*(1-S(\sigma_6))*w_{36}*S(\sigma_3)*(1-S(\sigma_3))*x_1 (\breve{y}_6-y_6)*S(\sigma_6)*(1-S(\sigma_6))*w_{36}*S(\sigma_3)*(1-S(\sigma_3))*x_2 \\ \\ (\breve{y}_6-y_6)*S(\sigma_6)*(1-S(\sigma_6))*w_{46}*S(\sigma_4)*(1-S(\sigma_4))*x_1 (\breve{y}_6-y_6)*S(\sigma_6)*(1-S(\sigma_6))*w_{46}*S(\sigma_4)*(1-S(\sigma_4))*x_2 \\ \\ (\breve{y}_6-y_6)*S(\sigma_6)*(1-S(\sigma_6))*w_{56}*S(\sigma_5)*(1-S(\sigma_5))*x_1 (\breve{y}_6-y_6)*S(\sigma_6)*(1-S(\sigma_6))*w_{56}*S(\sigma_5)*(1-S(\sigma_5))*x_2 \end{array}\right] \\ ​∂w13​∂l​∂w14​∂l​∂w15​∂l​​∂w23​∂l​∂w24​∂l​∂w25​∂l​​ ​ ​∂y˘​6​∂l​∗∂σ6​∂y˘​6​​∗∂y˘​3​∂σ6​​∗∂σ3​∂y˘​3​​∗∂w13​∂σ3​​∂y˘​6​∂l​∗∂σ6​∂y˘​6​​∗∂y˘​4​∂σ6​​∗∂σ4​∂y˘​4​​∗∂w14​∂σ4​​ ∂y˘​6​∂l​∗∂σ6​∂y˘​6​​∗∂y˘​5​∂σ6​​∗∂σ5​∂y˘​5​​∗∂w15​∂σ5​​​∂y˘​6​∂l​∗∂σ6​∂y˘​6​​∗∂y˘​3​∂σ6​​∗∂σ3​∂y˘​3​​∗∂w23​∂σ3​​∂y˘​6​∂l​∗∂σ6​∂y˘​6​​∗∂y˘​4​∂σ6​​∗∂σ4​∂y˘​4​​∗∂w24​∂σ4​​∂y˘​6​∂l​∗∂σ6​∂y˘​6​​∗∂y˘​5​∂σ6​​∗∂σ5​∂y˘​5​​∗∂w25​∂σ5​​​ ​.. ​(y˘​6​−y6​)∗S(σ6​)∗(1−S(σ6​))∗w36​∗S(σ3​)∗(1−S(σ3​))∗x1​(y˘​6​−y6​)∗S(σ6​)∗(1−S(σ6​))∗w46​∗S(σ4​)∗(1−S(σ4​))∗x1​(y˘​6​−y6​)∗S(σ6​)∗(1−S(σ6​))∗w56​∗S(σ5​)∗(1−S(σ5​))∗x1​​(y˘​6​−y6​)∗S(σ6​)∗(1−S(σ6​))∗w36​∗S(σ3​)∗(1−S(σ3​))∗x2​(y˘​6​−y6​)∗S(σ6​)∗(1−S(σ6​))∗w46​∗S(σ4​)∗(1−S(σ4​))∗x2​(y˘​6​−y6​)∗S(σ6​)∗(1−S(σ6​))∗w56​∗S(σ5​)∗(1−S(σ5​))∗x2​​ ​ 偏置 [ ∂ l ∂ b 1 ∂ l ∂ b 2 ∂ l ∂ b 3 ] [ ∂ l ∂ y ˘ 6 ∗ ∂ y ˘ 6 ∂ σ 6 ∗ ∂ σ 6 ∂ y ˘ 3 ∗ ∂ y ˘ 3 ∂ σ 3 ∗ ∂ σ 3 ∂ b 1 ∂ l ∂ y ˘ 6 ∗ ∂ y ˘ 6 ∂ σ 6 ∗ ∂ σ 6 ∂ y ˘ 4 ∗ ∂ y ˘ 4 ∂ σ 4 ∗ ∂ σ 4 ∂ b 2 ∂ l ∂ y ˘ 6 ∗ ∂ y ˘ 6 ∂ σ 6 ∗ ∂ σ 6 ∂ y ˘ 5 ∗ ∂ y ˘ 5 ∂ σ 5 ∗ ∂ σ 5 ∂ b 3 ] . [ ( y ˘ 6 − y 6 ) ∗ S ( σ 6 ) ∗ ( 1 − S ( σ 6 ) ) ∗ w 36 ∗ S ( σ 3 ) ∗ ( 1 − S ( σ 3 ) ) ( y ˘ 6 − y 6 ) ∗ S ( σ 6 ) ∗ ( 1 − S ( σ 6 ) ) ∗ w 46 ∗ S ( σ 4 ) ∗ ( 1 − S ( σ 4 ) ) ( y ˘ 6 − y 6 ) ∗ S ( σ 6 ) ∗ ( 1 − S ( σ 6 ) ) ∗ w 56 ∗ S ( σ 5 ) ∗ ( 1 − S ( σ 5 ) ) ] \left[\begin {array}{c} \frac{\partial{l}}{\partial{b_1}} \\ \\ \frac{\partial{l}}{\partial{b_2}} \\ \\ \frac{\partial{l}}{\partial{b_3}} \\ \end{array}\right] \left[\begin {array}{c} \frac{\partial{l}}{\partial{\breve{y}_6}} * \frac{\partial{\breve{y}_6}}{\partial{\sigma_6}} * \frac{\partial{\sigma_6}}{\partial{\breve{y}_{3}}} * \frac{\partial{\breve{y}_3}}{\partial{\sigma_{3}}} * \frac{\partial{\sigma_3}}{\partial{b_1}} \\ \\ \frac{\partial{l}}{\partial{\breve{y}_6}} * \frac{\partial{\breve{y}_6}}{\partial{\sigma_6}} * \frac{\partial{\sigma_6}}{\partial{\breve{y}_{4}}} * \frac{\partial{\breve{y}_4}}{\partial{\sigma_{4}}} * \frac{\partial{\sigma_4}}{\partial{b_2}} \\ \\ \ \frac{\partial{l}}{\partial{\breve{y}_6}} * \frac{\partial{\breve{y}_6}}{\partial{\sigma_6}} * \frac{\partial{\sigma_6}}{\partial{\breve{y}_{5}}} * \frac{\partial{\breve{y}_5}}{\partial{\sigma_{5}}} * \frac{\partial{\sigma_5}}{\partial{b_3}} \\ \end{array}\right]\\ .\\ \left[\begin {array}{c} (\breve{y}_6-y_6)*S(\sigma_6)*(1-S(\sigma_6))*w_{36}*S(\sigma_3)*(1-S(\sigma_3)) \\ \\ (\breve{y}_6-y_6)*S(\sigma_6)*(1-S(\sigma_6))*w_{46}*S(\sigma_4)*(1-S(\sigma_4)) \\ \\ (\breve{y}_6-y_6)*S(\sigma_6)*(1-S(\sigma_6))*w_{56}*S(\sigma_5)*(1-S(\sigma_5)) \end{array}\right] \\ ​∂b1​∂l​∂b2​∂l​∂b3​∂l​​ ​ ​∂y˘​6​∂l​∗∂σ6​∂y˘​6​​∗∂y˘​3​∂σ6​​∗∂σ3​∂y˘​3​​∗∂b1​∂σ3​​∂y˘​6​∂l​∗∂σ6​∂y˘​6​​∗∂y˘​4​∂σ6​​∗∂σ4​∂y˘​4​​∗∂b2​∂σ4​​ ∂y˘​6​∂l​∗∂σ6​∂y˘​6​​∗∂y˘​5​∂σ6​​∗∂σ5​∂y˘​5​​∗∂b3​∂σ5​​​ ​. ​(y˘​6​−y6​)∗S(σ6​)∗(1−S(σ6​))∗w36​∗S(σ3​)∗(1−S(σ3​))(y˘​6​−y6​)∗S(σ6​)∗(1−S(σ6​))∗w46​∗S(σ4​)∗(1−S(σ4​))(y˘​6​−y6​)∗S(σ6​)∗(1−S(σ6​))∗w56​∗S(σ5​)∗(1−S(σ5​))​ ​ 综上所述通过反向传播就可以计算出偏导数了。 3.python代码 根据上面的分析下面我们写一下python代码代码就很简单了 import numpy as np import random import os核心就是如何布局biases和weights这两个矩阵class Network(object):列表sizes包含对应层的神经元数目,如果列表是[2,3,1],那么就是指一个三层神经网络,第一层有2个神经元,第二层有3个神经元,第三次有1个神经元.def __init__(self, sizes):这里num_layers是3self.num_layerslen(sizes)self.sizessizes随机初始化偏差,初始化后如下[array([[-1.17963885],[ 0.41953645],[-0.88551629]]), array([[0.20600121]])]特别注意这里是3x1的一个矩阵self.biases[np.random.randn(y,1) for y in sizes[1:]]随机初始化权重[array([[-0.25009885, -0.33699188],[-0.53513364, -1.57623694],[ 1.89456316, 0.66985265]]), array([[-0.18411963, -0.08143799, 0.53533203]])]上面两个矩阵是3x2,1x3self.weights[np.random.randn(y,x) for x,y in zip(sizes[:-1],sizes[1:])]def feedforward(self,x):输入可以认为是一个2x1的向量,因为列才是向量比如下面的点积,[3x2]*[2*1] [3*1] [3*1]anp.array(x).reshape(len(x),1)for b, w in zip(self.biases,self.weights):asigmoid(np.dot(w,a)b)return adef SGD(self,training_data,epochs,mini_batch_size,eta,test_dataNone):使用小批量随机梯度下降算法训练神经网络,使用training_data是由训练输入和目标输出的元组(x,y)组成。if(test_data):n_testlen(test_data)nlen(training_data)for j in range(epochs):random.shuffle(training_data)mini_batchs[training_data[k:kmini_batch_size]for k in range(0,n,mini_batch_size)]for mini_batch in mini_batchs:self.update_mini_batch(mini_batch,eta)if test_data:print(Epoch {0}:{1}/{2}.format(j,self.evaluate(test_data),n_test))else:print(Epoch {0} complete..format(j))def update_mini_batch(self,mini_batch,eta):使用小批量应用梯度下降算法和反向传播算法来更新神经网络的权重和偏置。mini_batch是又若干元组组成的(x,y)组成的列表,eta为学习率。其中x为batch * 2 * 1nabla_b[np.zeros(b.shape) for b in self.biases]nablea_w[np.zeros(w.shape) for w in self.weights]for x,y in mini_batch:计算梯度delta_nabla_b,delta_nable_wself.backprob(x,y)nabla_b[nbdnb for nb,dnb in zip(nabla_b,delta_nabla_b)]nablea_w[nwdnw for nw,dnw in zip(nablea_w,nablea_w)]self.weights[w-(eta/len(mini_batch)) * nw for w,nw in zip(self.weights,nablea_w)]self.biases[b-(eta/len(mini_batch)) * nb for b,nb in zip(self.biases,nabla_b)]def backprob(self,a,b):nabla_b[np.zeros(b.shape) for b in self.biases]nabla_w[np.zeros(w.shape) for w in self.weights]xnp.array(a).reshape(len(a),1)ynp.array(b).reshape(len(b),1)activationxactivations[x]zs[]正向传播biases 是[3x1,1x1]weights是[3x2,1x3]第1-2层的计算[3x2] * [2*1] [3x1] [3x1]第2-3层的计算[1x3] * [3x1] [1x1] [1x1] for b,w in zip(self.biases,self.weights):znp.dot(w,activation) b未激活zs.append(z)激活函数activationsigmoid(z)activations.append(activation)反向传播,计算最后2层的梯度deltaself.cost_derivative(activations[-1],y) * sigmoid_prime(zs[-1])nabla_b[-1]deltanabla_w[-1]np.dot(delta,activations[-2].transpose())反向传播,计算其余层梯度for l in range(2,self.num_layers):zzs[-l]spsigmoid_prime(z)deltanp.dot(self.weights[-l1].transpose(),delta) * spnabla_b[-l] deltanabla_w[-l] np.dot(delta,activations[-l-1].transpose())return (nabla_b,nabla_w)def evaluate(self,test_data):argmax返回的是a中元素最大值所对应的索引值# test_results[(np.argmax(self.feedforward(x),y)) for x,y in test_data] test_results[(self.feedforward(x),y) for x,y in test_data] return sum(int(compare_float(x,y,0.001)) for x,y in test_results)def cost_derivative(self,output_activations,y):loss函数的导数 loss1/2 * (y^ - y)^2return (output_activations)def compare_float(a, b, precision):if abs(a - b) precision:return 1return 0def sigmoid(x):return 1.0/(1.0np.exp(-x))sigmoid的导数 def sigmoid_prime(x):return sigmoid(x)*(1-sigmoid(x)) 4.MNIST 数据集 写好代码后我们用测试集测试一下 链接: https://pan.baidu.com/s/1gSeRPwDODK4IeZLVsmPBfQ?pwd6zcp 提取码: 6zcp import MNIST.mnist as mnistif __name____main__:datasetmnist.load_mnist()training_datadataset[0][0]training_labeldataset[0][1]test_datadataset[1][0]test_labledataset[1][1]net Network([784,30,1])td[(np.array(x.copy()),[np.array(y.copy())]) for (x,y) in zip(training_data,training_label)]tt_d[(np.array(x.copy()),[np.array(y.copy())]) for (x,y) in zip(test_data,test_lable)]net.SGD(td,30,10,3.0,tt_d)结果如下可以看到最后精度稳定在98%还可以
http://www.sczhlp.com/news/206722/

相关文章:

  • 做网站的可行性分析公司网站 英文
  • 什么网站做一件代发做美陈网站
  • 招工网站服务杭州本地品牌网站建设收费
  • 在AI技术唾手可得的时代,挖掘新需求成为制胜关键——某知名视觉标记系统需求探索
  • 2025年10月洗碗机品牌推荐榜:以市占率增幅与专利表现为核心的系统评估
  • 2025年10月deepseek关键词排名优化推荐榜单:基于多维度实测与公开数据的对比分析
  • 网站平台开发多少钱wordpress 企业 下载地址
  • 建设项目环境影响评价验收网站泰安做网站建设的
  • 中小学网站建设排行2017网上注册营业执照
  • 无锡网站开发平台国内永久crm不需要下载app
  • 做单挣钱的网站网站的建设背景图片
  • 徐州云龙区建设局网站饰品做商城网站模式
  • 5免费网站建站北京网站设计公司排行榜
  • 做网站设计制作的公司cms仿站教程
  • 单位网站建设制作wordpress 谷歌登陆不了
  • 衡阳市住房和城乡建设部网站有没有免费的直播视频下载
  • 东营网站建设运营公司专门做萝莉视频网站
  • 网站健设推广产品多少钱西安网站开发建设
  • phpstudy 做网站谷歌浏览器网址
  • 自己做网站是否要买云主机软件技术职业生涯规划书
  • 淘宝客做连接网站吗有创意的宣传方式有哪些
  • 建设网站需要花费多少钱青岛建设集团招聘信息网站
  • 企业网站搜索优化网络推广深圳网络推广最新招聘
  • 企业网站 三合一二维码短链接生成器
  • 弋阳县建设工程网站有没有教做韩餐的网站
  • 上海专业做网站公司地址wordpress中文站cn
  • 公司做网站需要多少钱国内出名的设计网站有哪些
  • 公司网站建设一年多少钱网站建设栏目标语口号
  • iis新建网站不能访问建设网站教程全集
  • 大连模板网站制作哪家好广西桂林旅游攻略