【超详细】深度学习原理与算法第1篇---前馈神经网络,感知机,BP神经网络

前馈神经网络(FNN)

前馈神经网路是一种单向多层的网络结构,信息从输入层开始,逐层向一个方向传递,即单向传递,一直到输出层结束。前馈的意思就是指传播方向指的是前向。前馈神经网络由三部分组成:输入层(第0层),输出层(最后一层),中间部分称为隐藏层,隐藏层可以是一层,也可以是多层 。FNN如下图所示,其中圆圈是神经元。
在这里插入图片描述

学习神经网络前向传播与反向传播推导过程必须了解,这是许多网络的基础,推荐下面的up主视频,用案例来讲解底层传播与机理,并做出了推导,跟着推一遍,理解会更深刻,不然后面学习就可能一知半解了
地址如下:https://space.bilibili.com/49109393/channel/detail?cid=36482

FNN举例:如果要机器判断某人信用卡是否会透支?x1,x2,…,xn表示的就是造成透支的可能因素,包括年龄,家庭人数,性别,家庭住址,生活开销等,这个作为输入,然后经过一系列训练计算,最后到输出层输出透支,还是不透支

感知机(感知器)

感知机是一种最简单的前馈神经网络,只有一个神经元,不同权值w1,w2,… ,wn表示不同特征xi的权重,即不同特征xi影响结果的重要程度不同,如图

在这里插入图片描述

补充:感知机只能做十分简单的分类问题,如去解决and-与,or-或问题,这两个都是线性问题,都能用直线分开类别,但是异或问题,感知机就解决不了,因为是非线性问题,而BP神经网络就能很好解决非线性问题,我们生活中问题绝大部分都是非线性问题,所以最早的感知机十分局限,但它的出现在当时意义巨大。
在这里插入图片描述

BP神经网络

BP神经网络是前馈神经网络的一种,是指用反向传播算法(BP算法)进行训练的多层前馈神经网络,它包括信号的前向传播和误差的反向传播两个过程,即计算误差输出时(预测与真实的误差)按从输入到输出的方向进行,而调整权值w和偏置b,则从输出到输入的方向进行(在输出层不能得到期望的输出或者说与真实差别较大,才转入反向传播进行调整)。通过不断的前向计算误差输出,再反向调整权值w和偏置b,让它预测出新的输出y’,不断迭代重复,最终能得到误差十分小的输出,如误差为0.01、0.001,与真实的值十分接近。如图所示
在这里插入图片描述

注:BP算法基本思想是梯度下降(求偏导,每次找到梯度下降最快的方向),上面推荐up主视频推导部分,权值w - 学习率α*偏导数,可以理解成调整的过程,偏导数指每次梯度下降多少,学习率α大小能决定要下降多少次才能逼近最小误差,所以实际开发中学习率太大,每次迭代下降(减去的数)就很快,太小下降就慢。好比人走路去商场,步子跨的小,走的步数多,步子跨的大,走的步数就少。如图,每次找梯度下降最快的方向下降,最终到最低点,也是误差最小点

在这里插入图片描述

总结

神经网络就是训练出一个模型,能将输入进入模型后输出一个和真实需要的输出十分接近的输出,只要输入一个x,输出的y’与真实想得到的y十分接近,这也叫函数拟合的十分成功,拟合就是模拟出与真实想要输出十分接近的预测输出,这样预测的输出就可以代替真实的输出。我们可以通过大量数据训练出模型,用于预测未知情况走势,如从前几年的房价变化预测未来房价变化。
在这里插入图片描述