一、AI教程学习笔记 | 神经网络基础知识(一)
目录
1、如何将数据输入到神经网络中
此例中,待输入的数据是一张图像。为了存储图像,计算机要存储三个独立的矩阵,如果图像的大小是64 * 64个像素,一般把上面那3个矩阵转化成1个向量x(向量可以理解成1 * n或n * 1的数组,前者为行向量,后者为列向量,向量也会在后面的文章专门讲解)。那么这个向量x的总维数就是64 * 64 * 3,结果是12288。
2、神经网络是如何进行预测的
预测的过程其实只是基于一个简单的公式:z = dot(w,x) + b。
x代表着输入特征向量,假设只有3个特征,那么x就可以用(x1,x2,x3)来表示。如下图所示。w表示权重,它对应于每个输入特征,代表了每个特征的重要程度。b表示阈值[yù zhí],用来影响预测结果。z就是预测结果。公式中的dot()函数表示将w和x进行向量相乘。公式展开后就变成了z = (x1 * w1 + x2 * w2 + x3 * w3) + b。
神经网络到底是如何利用这个公式来进行预测的呢?
假设周末即将到来,你听说在你的城市将会有一个音乐节。我们要预测你是否会决定去参加。音乐节离地铁挺远,而且你女朋友想让你陪她宅在家里搞事情,但是天气预报说音乐节那天天气特别好。也就是说有3个因素会影响你的决定,这3个因素就可以看作是3个输入特征。那你到底会不会去呢?你的个人喜好——你对上面3个因素的重视程度——会影响你的决定。这3个重视程度就是3个权重。
如果你觉得地铁远近无所谓,并且已经精力衰竭不太想搞事情了,而且你很喜欢蓝天白云,那么我们将预测你会去音乐节。这个预测过程可以用我们的公式来表示。我们假设结果z大于0的话就表示会去,小于0表示不去。又设阈值b是-5。又设3个特征(x1,x2,x3)为(0,0,1),最后一个是1,它代表了好天气。又设三个权重(w1,w2,w3)是(2,2,7),最后一个是7表示你很喜欢好天气。那么就有z = (x1 * w1 + x2 * w2 + x3 * w3) + b = (0 * 2 + 0 * 2 + 1 * 7) + (-5) = 2。预测结果z是2,2大于0,所以预测你会去音乐节。
上面那个用于预测的公式我们业界称之为逻辑回归
在实际的神经网络中,我们不能直接用逻辑回归。必须要在逻辑回归外面再套上一个函数。这个函数我们就称它为**函数。**函数非常非常重要,如果没有它,那么神经网络的智商永远高不起来。
3、神经网络如何判断自己预测得是否准确
实践中上述形式的损失函数不常用,常用形式如下:
成本函数
4、神经网络是如何进行学习的
神经网络预测的是否准确,只要取决于 w 和 b ,所以,主要问题是如何找到合适的 w 和 b,通过一个梯度下降(gradient descent)的算法可以达到这个目的,梯度下降会一步一步的更新 w 和 b 的值,新的值会使损失函数的值越来越小。
5、计算图
6、如何计算逻辑回归的偏导数
前向传播
反向传播