深度学习-感知器(感知机)

一、深度学习

1.基本定义

在现在的人工智能领域,数据挖掘类的算法大致可以分为两类,第一种是机器学习算法,第二种是深度学习算法。深度学习算法,可以叫做深度神经网络算法。神经网络的结构可以如下图所示:
avatar
上图中每个圆圈都是一个神经元,每条线叫神经元的链接
上图中神经元可以分为三层,层与层直接有神经元连接,层内无神经元连接。最左边的层叫输入层。最右边的层叫输出层。输入层和输出层直接的叫隐藏层
深度神经网络:隐藏层大于2的神经网络。

深度网络和宽度网络的区别:
(1)一个仅有一个隐藏层的神经网络就能拟合任何一个函数,但是它需要很多很多的神经元。
(2)而深层网络用少得多的神经元就能拟合同样的函数。也就是为了拟合一个函数,要么使用一个浅而宽的网络,要么使用一个深而窄的网络。而后者往往更节约资源。

二、感知器(也叫感知机)

1.感知器的基本定义

感知器: 也叫感知机,也叫神经元,神经网络的基本组成单元。
感知器的定义:
avatar
可以看到,一个感知器有如下组成部分:

  • 输入权值: 一个感知器可以接收多个输入 ( x 1 , x 2 , . . . , x n ) (x_1,x_2,...,x_n) ,每个输入上有一个权值,此外还有一个偏置项 b b ,就是上图中的 w 0 w_0
  • 激活函数: 感知器的激活函数可以有很多选择,比如我们可以选择下面这个阶跃函数来作为激活函数
    f ( x ) = { 1 z>0 0 otherwise f(x)= \begin{cases} 1& \text{z>0}\\ 0& \text{otherwise} \end{cases}
  • 输出: 感知器的输出由下面的公式来计算
    y = f ( w x + b ) y =f(w*x +b)
2.感知器的训练

前面的权重项和偏置项的值是如何获得的呢?这就要用到感知器训练算法:将权重项和偏置项初始化为0,然后,利用下面的感知器规则迭代的修改 w i w_i b b ,直到训练完成。
w i = w i + w i w_i = w_i + \nabla w_i (公式1)
b = b + b b = b+\nabla b (公式2)

其中:
w i = α ( t y ) x i \nabla w_i = \alpha(t-y)x_i
b = α ( t y ) \nabla b= \alpha(t-y)

w i w_i 是输入 x i x_i 对应的权重项
b b 偏置项
t t 是训练样本的实际值,也就是label。
y y 是感知器的输出值
α \alpha 是学习率的常数。