深度学习之学习笔记(四)—— 感知机——神经网络的雏形

感知机

感知机(Perceptron) 是神经网络的起源算法,由两层神经元组成,如下图所示,

  • 输入层接收外界输入信号后传递给输出层
  • 输出层是M-P神经元

深度学习之学习笔记(四)—— 感知机——神经网络的雏形_第1张图片

在两个输入的情况下,感知机可以简化为如下形式:

深度学习之学习笔记(四)—— 感知机——神经网络的雏形_第2张图片

y=\begin{cases} 0 & (b+w_1x_1+w_2x_2 \leqslant 0) & 1 &(b+w_1x_1+w_2x_2 > 0) \end{cases}

  • 其中b是被称为偏置的参数,用于控制神经元被激活的容易程度
  • w_1w_2是表示各个信号的权重的参数,用于控制各个信号的重要性

 

逻辑电路与感知机

我们考虑用感知机来表示逻辑电路。简单逻辑电路(与门、与非门、或门)的真值表如下:

深度学习之学习笔记(四)—— 感知机——神经网络的雏形_第3张图片

如果用两个输入的感知机来表示这三种简单逻辑电路的话,它们的权重偏置可以如下设置:

  • 与门、与非门、或门的感知机的构造是一样的
  • 3个门电路只是参数值(权重和偏置(阈值))不同
  • 参数可以有许多(无限)的取值
  • 这里决定感知机参数的并不是计算机,而是人。我们看着真值表这种“训练数据”,人工考虑了参数的值
  • 机器学习的课题就是将这个决定参数值的工作交由计算机自动执行。学习(训练)是确定合适的参数的过程
  • 而人要做的是思考感知机的构造(模型),并把训练数据交给计算机
     

感知机不仅仅能实现简单的布尔运算,还可以拟合任何的线性函数,任何线性分类线性回归问题都可以用感知机来解决。前面的布尔运算可以看作是二元分类问题,即给定一个输入,输出0(属于分类0)或1(属于分类1)。

深度学习之学习笔记(四)—— 感知机——神经网络的雏形_第4张图片
 

感知机的局限

感知机只有输出层神经元进行激活函数处理,即只拥有一层功能神经元,其学习能力非常有限。感知机只能解决线性可分问题,比如前面的与、或、与非问题。比如感知机就不能解决如下边所示的“异或 XOR”问题:


线性可分是指可以用一个线性函数把两类样本分开,比如二维空间中的直线、三维空间中的平面以及高维空间中的超平面


深度学习之学习笔记(四)—— 感知机——神经网络的雏形_第5张图片

 


要解决非线性可分问题,需要考虑使用多层功能神经元。例如下图这个简单的两层感知机就能解决异或问题:

深度学习之学习笔记(四)—— 感知机——神经网络的雏形_第6张图片

 

多层感知机——神经网络的雏形

常见的神经网络是形如下图所示的层级结构,输出层与输入居之间的增加一到两层神经元,被称为隐层或隐含层 (hidden layer)。隐含层和输出层神经元都是拥有激活函数的功能神经元。每层神经元与下层神经元全互连,神经元之间不存在同层连接,也不存在跨层连接。这样的神经网络结构通常称为“多层前馈神经网络” 。

所谓的前馈指的是,数据从输入节点到输出节点向前传递,没有输出的信息传递到输入层,即没有反馈,表现在图形上是有向图没有回路。


神经网络的学习过程,就是根据训练数据来调整神经元之间的“连接权重(connection weight) 以及每个功能神经元的阈值;换言之,神经网络“学”到的东西,蕴涵在连接权重阈值


下一章,我们来了解如何通过学习(训练)找到合适的权重阈值

 

你可能感兴趣的:(人工智能)