A quick overview of neural network of Andrew Ng

A quick overview of neural network of Andrew Ng

什么鬼这都无法显示
图1.简单的概览

\[对于[1],我们有\\ \rightarrow z^{[1]}=W^{[1]}x+b^{[1]} \rightarrow a^{[1]}=\sigma(z^{[1]})\\ 对于[2],我们有\\ \rightarrow z^{[2]}=W^{[2]}a^{[1]}+b^{[2]}\rightarrow a^{[2]}=\sigma(z^{[2]})\;(\hat{y}=a^{[2]})\\ \rightarrow\mathcal{L} (a^{[2]},y) \]

什么鬼这都无法显示
图2.上面这幅图代表了很多东西,得花时间理解。

我们分析网络中的第一层第一个节点:

\[z^{[1]}_1=w^{[1]T}_1x+b^{[1]}_1\\ a^{[1]}_1=\sigma(z^{[1]}_1)\\ \quad(上标[^{\;[1]}]代表的是这些变量只和第一个隐层有关,下标[_{\;1}]表示第1个节点) \]

image-20220331134144229
类似地,我们分析其它节点,不难得出 $$ z^{[1]}_1=w^{[1]T}_1x+b^{[1]}_1\quad a^{[1]}_1=\sigma(z^{[1]}_1)\\ z^{[1]}_2=w^{[1]T}_2x+b^{[1]}_2\quad a^{[1]}_2=\sigma(z^{[1]}_1)\\ z^{[1]}_3=w^{[1]T}_3x+b^{[1]}_3\quad a^{[1]}_3=\sigma(z^{[1]}_1)\\ z^{[1]}_4=w^{[1]T}_4x+b^{[1]}_4\quad a^{[1]}_4=\sigma(z^{[1]}_1)\\ (注:w^{[1]T}_1表示的是(w^{[1]}_1)^T) $$ 由[这章的知识](https://www.cnblogs.com/Linkdom/p/16068238.html)我们知道了向量化所带来的方便之大;
什么鬼这都无法显示
图3.这个矩阵显然是4×3的矩阵

这样我们也容易理解图二中w下方的(4,3)所代表的意思了,即W是一个4×3的矩阵,同理b是一个4×1,所以下面标着(4,1)。

\[我们知道w^{[1]}_i本来是一个3×1的向量,\\把w^{[1]}_i向量化(且转置)之后成为了一个1×3的向量,(所以横着放),\\这样我们容易有\\ \begin{bmatrix} w^{[1]T}_1 \\ w^{[1]T}_2 \\ w^{[1]T}_3 \\ w^{[1]T}_4 \end{bmatrix} \cdot \begin{bmatrix} x_1\\ x_2\\ x_3 \end{bmatrix}+\begin{bmatrix} b^{[1]}_1\\ b^{[1]}_2\\ b^{[1]}_3\\ b^{[1]}_4 \end{bmatrix} =\begin{bmatrix} w^{[1]T}_1 X+b^{[1]}_1\\ w^{[1]T}_2 X+b^{[1]}_2\\ w^{[1]T}_3 X+b^{[1]}_3\\ w^{[1]T}_4 X+b^{[1]}_4 \end{bmatrix} =\begin{bmatrix} z^{[1]}_1\\ z^{[1]}_2\\ z^{[1]}_3\\ z^{[1]}_4 \end{bmatrix} =Z^{[1]} \]

需要注意的是我们总习惯把变量定义为列向量(如果不加说明就默认是列向量),比如里面的X是一个3×1的向量,后面的Z是一个4×1的向量;

\[X=\begin{bmatrix} x_1&x_2&x_3 \end{bmatrix}^T \]

再得到a,

\[a^{[1]}= \begin{bmatrix} a^{[1]}_1\\ \vdots \\ a^{[1]}_4 \end{bmatrix} =\sigma(z^{[1]}) \]

\[So\; given\; input:\;x\\ \begin{align} \mathop{z^{[1]}}\limits_{(4,1)} &=\mathop{W^{[1]}}\limits_{(4,3)} \mathop{x}\limits_{(3,1)} +\mathop{b^{[1]}}\limits_{(4,1)}\\ \rightarrow \mathop{a^{[1]}}\limits_{(4,1)} &=\sigma(\mathop{z^{[1]}}\limits_{(4,1)})\\ \rightarrow \mathop{z^{[2]}}\limits_{(1,1)} &=\mathop{W^{[2]}}\limits_{(1,4)} \mathop{a^{[1]}}\limits_{(4,1)} +\mathop{b^{[2]}}\limits_{(1,1)}\\ \rightarrow \mathop{a^{[2]}}\limits_{(1,1)} &=\sigma(\mathop{z^{[2]}}\limits_{(1,1)})\\ \end{align} \]

观察上面式子的底标我们可以发现里面的规律挺有意思的,另外x也可以被当成第零层的数据而写成:

\[x=a^{[0]} \]

另外这里的W不同于我们上面的w,应该是这样

\[W^{[1]}=w^{[1]T}\\ W^{[2]}=w^{[2]T} \]

回到我们最开始的

\[z=w^Tx+b\\ \hat{y}=a=\sigma{(z)} \]

我们实现the output of logistic regression同样只需要上面那四行代码即可,

至此我们完成了一个样本的output,下面我们学习多样本的向量化。
所用画图工具:🥀

posted @ 2022-03-29 23:41  Link_kingdom  阅读(27)  评论(0编辑  收藏  举报