DL01-1:神经网络与感知器
摘要:
1、神经网络来自大脑的神经生理结构,感知器来自于神经元;
2、根据神经元抽象建模,形成感知器数学模型,并形成复杂的神经网络数学模型;
3、理解感知器,激活函数与神经网络模型。
1、神经网络的生理基础
神经网络来自对人类大脑的模拟,实际是对人脑的一个数学建模。通过下图可以简单了解大脑的神经结构。
人类大脑的神经元生理结构人脑就是一个神经网络,神经网络由多个神经元连接而成。
2、神经元的数学模型(感知器)
感知器数学模型神经元的本质是:输入信号,处理信号,并过滤处理无关信号后,输出给下一个神经元处理。
感知器的模型是:输入特征,处理特征,并通过激活函数处理后,输送给下一个感知器处理。
数学模型的描述:就是数学运算过程。
感知器数学模型描述数据处理的数学方式:加权求和。这个运算是神经网络的核心计算之一。加权求和的方式可以有多种变化。
下面是感知器模型的运算描述示意图:
感知器的运算描述注意:
(1)一个感知器就是一个复合函数运算。其中的激活函数可以根据需要选择不同的函数。
(2)如果把感知器看做一个数据,则可以把输入的一个数据看成一个感知器。
(3)加权求和的方式的变化形成不同类型的感知器
(4)激活函数的选择也决定感知器的输出(效果)
3、神经网络数学模型
由多个感知器(特征数据)形成神经网络。每个感知器看成一个数据,每个数据对应到一个感知器(或者感知器处理)
神经网络数学模型初始特征(初始感知器)作为第一层(输入层),经过感知器运算,产生第二层特征(隐藏层),然后以此类推,产生多层处理,直到产生最终特征(输出层),最后的特征可以用来分类识别,也可以用来预测数据。
说明一:一个神经网络是一个比感知器要复杂的函数。
(1)感知器本质是一个线性运算函数(对一个感知器来讲,没有下一层感知器,激活函数对下层没有没有影响,激活函数仅仅作为分类与预测处理,不影响感知器的线本质)。
(2)如果激活函数本身也是线性的,则多层神经网络本质也是线性函数。
(3)线性函数只能对线性可分样本进行分类,所以为了保证神经网络有良好的分类效果(尤其不可线性分类的特征),一般激活函数选择非线性函数,这样神经网络表示的函数也是非线性的。
说明二:多个感知器形成神经网络不是杂乱无序的,是按照一定规则形成层,有一些基本规则如下:
(1)感知器只能不同层之间产生输入/输出关系,同层之间不产生输入/输出关系。
(2)上一层的感知器输出未必作为下一层感知器的输入。如果上一层感知器输出,作为下一层所有感知器的输入,则称为全连接层。这样的神经网络称为全链接神经网络。根据感知器与链接方式的不同,会形成各种用途的神经网络(卷积神经网络,循环神经网络等)。
(3)一个神经网络至少有一个输出层与输出层,隐藏层可以没有,如果有2个以上隐藏层的神经网络成为深度神经网络。
4、激活函数
激活函数有两个用途:
激活函数的用途比如:可以把感知器的输出通过激活函数转换成一个0-1之间的类似概率的值,用来做最终的分类。
跟多的时候,还是用来控制感知器的输出在下一层的数据归一化处理,或者控制在下一层感知器中参与运算的重要性(如果是0,则基本上对下层运算没有作用,用来控制数据是否在下一层使用),这也是激活函数名字来源的根据。
随着后面数学计算的展开,对激活函数的要求就会呈现出来,主要体现在数学特性的要求上面。根据数学特性的要求,目前常用的激活函数一共大约26种。激活函数的寻找一般满足如下数学特性:
【非线性】
【连续可微的】
【范围】
【单调】
【平滑性】
【原点附近近似identity(f(x)≈x)】
现在看起来这些数学特性难以理解,随着神经网络的数学推导,上面这些特性的数学意义就非常明显。
5、感知器类型,层与神经网络
(1)感知器的计算方式与链接方式不同,形成很多类型的感知器。
感知器类型感知器,我们有时候也称神经元。
(2)感知器形成神经网络
相同的感知器,可以按照处理顺序,形成感知器层。每层中的感知器与其他层中的感知器链接形成神经网络。同层感知器之间不链接。