马卡洛克-皮次模型
将神经元工作理解为函数
从单细胞生物“小蓝”来理解直觉
小蓝的食物有毒,毒性与大小成比例,自然是一个一次函数
人们对世界的认知也是与函数息息相关
神经元上有权值w来给不同的输入赋值,同时还有一个偏置项b组成一个一元一次函数经过激励函数最后得到结果,但是不能智能的改变权值,于是出现了
Rosenblat 感知器
让w加上实际结果和预测结果的误差 因为实际问题中可能会出现输入是负数的情况,所以在此基础上,单纯的加上误差并不能实际符合问题(输入负数,预测值小,此时应该减小w的值),解决办法是w加上误差乘上输入x的值;然后为了防止w调整震荡过大,再乘上一个学习率 (学习率过大过小都不好)
评判一个函数曲线预测的好不好,单纯用误差不能准确来判断,如果一个结果大于,一个效果小于,他们的平均值误差会减小,用绝对值不方便计算实现(反码补码),可以用平方来判断
单个误差如上,一组误差同理
代入xy,得到代价函数
xy是现实生活中的客观数据 我们的目标是预测出一个准确的w来符合客观规律 显而易见,误差最准确的时候是抛物线的最低点, 形如y=ax^2+bx+c,最低点是-b/2a,将上面的"a""b"带入其中得到
这种一次性得到最优解的方式叫做“正规方程”,这种看似一步到位很好,但是在实际问题中并不可行,在海量数据上时候,输入如果是多维向量,对计算机的资源花费过大 ,从而呈现梯度下降
梯度下降
用斜率来调整,在最低点左边是负数,在右边是正数
相比每次调整一个固定的值,我们更希望它能在距离最低点最远的时候能调整的幅度大一些,靠近最低点的时候,幅度能小一点,可以通过将当前的w与当前的斜率相减来实现,同时这样也需要一个学习率来防止震荡
单个样本进行梯度下降的时候,因为收敛具有随机性,称为 随机梯度下降,用总样本的代价函数来梯度下降固然可以得到全局最优,但是同时这样的计算和正规方程来说也没有什么区别,但是单个样本来一次次计算,又速度过慢,不能并行计算,折中情况就是批量梯度下降,每次一百个两百个的来进行梯度下
上述的函数预测只适合食物排列过原点,那么在不过原点的时候应该怎么预测呢?
答案是加上一个偏置值b,则坐标系上从二维变成了三维,给b留一个维度
在图像上,b的间隔足够小的时候就会是一个曲面,像一个碗
b和e的关系也是一个一元二次函数,根据此时的斜率来调整b,所以同时调整w和b则可以与上面同理得到最好的结果。
求w和b的偏导数,看为两个向量,则沿着他们的合向量的方向去调整梯度则可以最快的调整,(合向量在数学上称为梯度,所以称为梯度下降)
这种将输入送到预测函数进行预测的过程称为前向传播,根据方差代价函数来去梯度下降调整预测的w和b的过程称为反向传播
激励函数
在现实生活中,一般对问题的结果趋向与分类而不是具体的函数(比如判断一只小狗可不可爱,这顿饭吃没有吃饱) 上述的小蓝更可能把食物分为有毒和无毒
我们更想让结果只出现0-1两种情况
用logistic作为激励函数,与常听到的sigmoid函数区别如下:
现在将预测函数的结果送给激励函数 就可以了 因为我们需要它的斜率来进行梯度下降来调整,所以两段式的函数不可用
激励函数的加入可以让神经网络做更多的事情,脱离线性的限制,推动深度学习发展。
第一篇结束,后面的会放到一个合集里面。仅仅是听课个人做的笔记有错误请在评论区指出 谢谢大家