课程地址:https://www.coursera.org/learn/neural-networks

老师主页:http://www.cs.toronto.edu/~hinton

备注:笔记内容和图片均参考老师课件。

Lecture2主要介绍了神经网络的几种主流类型以及感知机,下面回顾一下。

几种常见的神经网络

前馈神经网络(Feed-forward neural networks)

循环神经网络(Recurrent networks )

循环神经网络最大的特点是会返回之前访问过的节点。

对称连接神经网络(Symmetrically connected networks)

这种神经网络和循环神经网络类似,但是单元之间的连接是对称的(它们在两个方向上具有相同的重量),这种循环网络的优势在于训练起来相对容易,但是也有一定的能力限制,例如不能循环建模。没有隐藏层的对称连接神经网络称为”Hopfield nets”,有隐藏层的对称连接神经网络称为”Boltzmann machines”。

下面看下感知机

感知机

首先看下什么是感知机

有了模型之后肯定要训练模型,下面看下如何训练。

训练过程

感知机的训练过程如下,$w$为权重矢量。

  • 如果输出单元正确,pass。
  • 如果输出单元错误地输出0,则让权重矢量加上输入矢量。
  • 如果输出单元错误地输出1,则让权重矢量减去输入矢量。

感知机模型训练的过程可以理解为不断减少错误点距离$w$的距离,更具体的部分可以参考Learing from data一书。

感知机的限制

感知机是很简单的,从而能力也相对有限,考虑以下情形。

这种很简单的情形感知机是无法区分的,这里证明下。假设可以区分,那么存在权重$w=(w_1,w_2)$和阈值$\theta$使得

前两个式子相加可得

后两个式子相加可得

这就产生了矛盾,所以这种情形无法区分。

现在再考虑一个问题,感知机能否识别识n*1图片的不同模式?考虑如下图片,像素均为4

这个问题一开始没理解清楚,后来看了几遍才明白了,其实就是平移关系,超出部分左补。例如第二个pattern A是第一个pattern A右移2个单位,第三个pattern A是第二个pattern A右移7个单位,patternB同理,从而每个像素会被4次标记为黑色,那么unit在pattern A上的得分为4倍权重之和,同理那么unit在pattern B上的得分为4倍权重之和,所以就无法区分了。