(七)神经网络基本结构

2018-07-18  本文已影响0人  躺在稻田里的小白菜

一. 为什么需要神经网络

目前为止,我们已经学习了2个机器学习模型。线性回归一般用来处理线性问题,逻辑回归用来处理2分类问题。虽然逻辑回归也可以处理非线性的分类问题,但是当我们有非常多的特征时,例如大于100个变量,将会有数量非常惊人的特征组合。这对于一般的逻辑回归来说需要计算的特征太多了,负荷太大。而神经网络既可以解决复杂的非线性分类问题,又可以避免庞大的计算量。

二. 神经网络的基本结构

人工神经网络是由很多神经元(激活单元)构成的,神经元是神经网络的基本元素。

1. 神经元
神经网络的基本逻辑单元(又称激活单元)如下图所示:

实际上,可以这样理解神经元工作过程,当将输入送进神经元后,神经元将输入与权值线性组合(实际上就是θ TX)输出一个线性表达式,再将这个表达式送入激活函数中,便得到了神经元的真实输出。

2. 神经网络

神经网络由好多个激活单元构成,如下图所示:


3. 用数学描述神经网络
4. 更好的理解神经网络

为了更好的理解神经网络,我们可以把输入层遮住。假设我们的激活函数是sigmoid函数,其实神经网络就是逻辑回归,只不过我们把输入从x1,x2,x3....换成了中间层的a1,a2,a3.....。
从本质上讲,在普通的逻辑回归中,我们被限制为使用数据中的原始特征x1,x2,x3......。我们虽然可以使用一些二项式项来组合这些特征,但是我们仍然受到这些原始特征的限制。在神经网络中,原始特征只是输入层,在我们上面三层的神经网络例子中,第三层也就是输出层做出的预测利用的是第二层的特征,而非输入层中的原始特征,我们可以认为第二层中的特征是神经网络通过学习后自己得出的一系列用于预测输出变量的高级的新特征。这就是神经网络相比于逻辑回归和线性回归的优势。
5. 激活函数的种类

激活函数的选择是构建神经网络过程中的重要环节,下面简要介绍常用的激活函数。

(1) 线性函数( Liner Function )


(2) 斜面函数( Ramp Function )**


(3) 阈值函数( Threshold Function )**



以上3个激活函数都属于线性函数,下面介绍两个常用的非线性激活函数。
(4) S形函数( Sigmoid Function )



(5) 双极S形函数

  S形函数与双极S形函数的图像如下:

双极S形函数与S形函数主要区别在于函数的值域,双极S形函数值域是(-1,1),而S形函数值域是(0,1)。由于S形函数与双极S形函数都是可导的(导函数是连续函数),因此适合用在BP神经网络中。(BP算法要求激活函数可导)

人工神经网络中,最常用的激活函数就是sigmoid函数

三. 神经网络的类型

神经网络是由大量的神经元互联而构成的网络。根据网络中神经元的互联方式,常见网络结构主要可以分为下面3类:

1. 前馈神经网络

前馈网络也称前向网络,是最常见的神经网络,前文提到的都是前馈网络。称之为前馈是因为它在输出和模型本身之间没有反馈,数据只能向前传送,直到到达输出层,层间没有向后的反馈信号。

2. 反馈神经网络

反馈型神经网络是一种从输出到输入具有反馈连接的神经网络,其结构比前馈网络要复杂得多。

3. 自组织网络

自组织神经网络是一种无监督学习网络。它通过自动寻找样本中的内在规律和本质属性,自组织、自适应地改变网络参数与结构。


上一篇 下一篇

猜你喜欢

热点阅读