神经网络是什么
- 神经网络可以指向两种,一个是生物神经网络,一个是人工神经网络。
- 人工神经网络(Artificial Neural Networks,简写为ANNs)也简称为神经网络(NNs)或称作连接模型(Connection Model),它是一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。这种网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。
- 人工神经网络:是一种应用类似于大脑神经突触联接的结构进行信息处理的数学模型。在工程与学术界也常直接简称为“神经网络”或类神经网络。
神经网络在做什么
我们可以看出,该神经网络包含了:输入层、隐含层、输出层。
接下来我们重点理解从输入层到隐含层,这个阶段里,神经网络到底干了什么?
输入层 x 权重 + 偏置 = 下一层
输入层与权重相乘的数学意义是什么呢?
我们去了偏置后,我们直接看相乘的结果,输入是1,2,经过网络以后,结果变成了7,10 。
这个计算在数学上什么意思呢?
[ 1 3 2 4 ] [ 1 2 ] T = [ 7 10 ] T \left[ \begin{array}{ccc} 1 & 3 \\ 2& 4 \end{array} \right] \left[ \begin{array}{ccc} 1 & 2 \end{array} \right] ^ \mathrm{ T }= \left[ \begin{array}{ccc} 7 & 10 \end{array} \right] ^ \mathrm{ T } [1234][12]T=[710]T
我们可以看出:
- 输入层其实是一个向量;
- 权重其实是一个矩阵;
- 输出层也是一个向量;
- 神经网络的传递,其实就是【在同一个基下的】对输入层的向量进行变形;
- 这次变形改变的是向量的方向和长度;
我们知道:
- 矩阵是一种线性变换,或者也可以理解为运动,而运动则具有方向和速度两个属性;
- 矩阵和向量的相乘,则是让该向量运动;
- 运动的结果则是让向量的方向和长度发生了变化;
如图:
所以,我们可以得出什么结论呢?
- 神经网络不过就是对样本的变形,从一个点变到另外一个点,或者从一个维度的点变到另外一个维度的点;
- 或者说神经网络则是在初始点已知,终点也已知的情况下,建立一条通道,使得原始数据,可以映射到标签数据,而神经网络则是扮演了一个路径的角色,而这种路径,我们可以简单的理解为一种运动,一种映射。
延伸:
1.理解了简单的神经网络的作用,那么其中激活函数的作用又是什么呢?
可以参考我的另外一个篇文章
https://blog.csdn.net/weixin_42057852/article/details/84644348
2.卷积神经网络(CNN)和循环神经网络(RNN)又有什么不同呢?
以后再说