深度学习所需的数学基础part1
神经网络的思想
神经元工作的数学表示
这里先介绍一下神经元。
根据生物学的知识,神经元可以归纳具有以下三种性质:
- 来自其他多个神经元的信号之和成为神经元的输入
- 如果这个神经元之和超过神经元固有的阈值,则点火(即神经元做出反应)
- 神经元的输出信号可以用数字信号0和1来表示。即使有多个输出端,其值也是同一个
如果我们用数学方式表示神经元的点火结构,则无输入信号时x=0,有输入信号时x=1;无输出信号时y=0,有输出信号时y=1。
神经元的输入信号是考虑了权重的信号之和。假设相邻神经元1、2、3的输入信号分别为x1,x2,x3,则神经元的输入之和可以如下表式:w1x1+w2x2+w3x3
其中:w1,w2,w3 是输入信号x1,x2,x3对应的权重。
此外,利用单位阶跃函数u(z)(将在后续内容中介绍)可以得到一个点火的式子:
y = u(w1x1+w2x2+w3x3 - θ)
其中:z = w1x1+w2x2+w3x3 - θ 称为该神经元的加权输入,而θ为该神经元的阈值。
为了便于优化引入b = -θ ,该式子变为z = w1x1+w2x2+w3x3+b
其中b称为偏置。
**函数的定义
所谓**函数(Activation Function),就是在人工神经网络的神经元上运行的函数,负责将神经元的输入映射到输出端。通俗的说,即让生物神经元抽象出来的神经元一般化。如下所示:
y = a(w1x1+w2x2+w3x3 + b), 这里的函数a即为**函数。
什么是神经网络
神经网络可以指向两种,一个是生物神经网络,一个是人工神经网络。
生物神经网络:一般指生物的大脑神经元,细胞,触点等组成的网络,用于产生生物的意识,帮助生物进行思考和行动。
人工神经网络(Artificial Neural Networks,简写为ANNs)也简称为神经网络(NNs)或称作连接模型(Connection Model),它是一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。这种网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。
人工神经网络:是一种应用类似于大脑神经突触联接的结构进行信息处理的数学模型。在工程与学术界也常直接简称为“神经网络”或类神经网络。
通俗的来说即为各神经元连接成的网络状结构。而深度学习基于神经网络进行。
这里先介绍作为基础的阶层型神经网络。它按照层划分神经单元,通过这些神经单元处理信号,并从输出层得到结果。
通常由三层构成:输入层,隐藏层(也叫中间层),输出层。
网络自学习的神经网络
神经网络训练的训练:指对人工神经网络训练。
向网络输人足够多的样本,通过一定算法调整网络的结构(主要是调节权值),使网络的输出与预期值相符。训练数据通常也称学习数据。
神经网络的训练本质上是一个最优化问题。通常会使用回归分析的常规手段。
神经网络的参数确定方法分为有监督学习和无监督学习,这里目前先介绍有监督学习,无监督学习将在后续的学习中有所涉及。