神经网络学习笔记

https://www.cnblogs.com/charlotte77/p/5629865.html 

https://www.cnblogs.com/subconscious/p/5058741.html#fourth

下面三张图示神经元模型 

下图是单层神经网络,也叫作感知器(机),注意和上面的变化:在原来神经元MP模型的“输入”位置添加神经元节点,标志其为“输入单元”,其余不变。

 

在“感知器”中,有两个层次。分别是输入层和输出层。输入层里的“输入单元”只负责传输数据,不做计算。输出层里的“输出单元”则需要对前面一层的输入进行计算。

  我们把需要计算的层次称之为“计算层”,并把拥有一个计算层的网络称之为“单层神经网络”。有一些文献会按照网络拥有的层数来命名,例如把“感知器”称为两层神经网络。但在本文里,我们根据计算层的数量来命名。

下面三张图是有多个预测目标的单层神经网络

 

 

 用Wx,y来表达一个权值,下标中的x代表后一层神经元的序号,而y代表前一层神经元的序号(序号的顺序从上到下)。

ATTENTION:数学思维  输入向量与权值矩阵进行矩阵乘法运算

如果我们仔细看输出的计算公式,会发现这两个公式就是线性代数方程组。因此可以用矩阵乘法来表达这两个公式。

  例如,输入的变量是[a1,a2,a3]T(代表由a1,a2,a3组成的列向量),用向量a来表示。方程的左边是[z1,z2]T,用向量z来表示。

  系数则是矩阵W(2行3列的矩阵,排列形式与公式中的一样)。

  于是,输出公式可以改写成:            g(W * a) = z

  这个公式就是神经网络中从前一层计算后一层的矩阵运算。

下面3的不明白

3.效果

  与神经元模型不同,感知器中的权值是通过训练得到的。因此,根据以前的知识我们知道,感知器类似一个逻辑回归模型,可以做线性分类任务。

  我们可以用决策分界来形象的表达分类的效果。决策分界就是在二维的数据平面中划出一条直线,当数据的维度是3维的时候,就是划出一个平面,当数据的维度是n维时,就是划出一个n-1维的超平面。

  下图显示了在二维平面中划出决策分界的效果,也就是感知器的分类效果。

图17 单层神经网络(决策分界)

二、MP神经元模型

在MP模型里,函数g是sgn函数,也就是取符号函数。这个函数当输入大于0时,输出1,否则输出0。

三、单层神经网络(感知机)

四、两层神经网络(多层感知机)

在两层神经网络中,使用平滑函数sigmoid作为函数g。我们把函数g也称作激活函数(active function)。

单层神经网络无法解决异或问题。但是当增加一个计算层以后,两层神经网络不仅可以解决异或问题,而且具有非常好的非线性分类效果。反向传播(BackPropagation,BP)算法,解决了两层神经网络所需要的复杂计算量问题,两层(带一个隐藏层)神经网络。

下面三张图中ax(y)代表第y层的第x个节点。y是上标,表示层数。

 

 使用矩阵运算来表达整个计算公式的话如下:

      g(W(1) * a(1)) = a(2); 

      g(W(2) * a(2)) = z;

(我觉得应该是向量在前矩阵在后)

偏置节点(bias unit)

事实上,这些节点是默认存在的。它本质上是一个只含有存储功能,且存储值永远为1的单元。在神经网络的每个层次中,除了输出层以外,都会含有这样一个偏置单元。正如线性回归模型与逻辑回归模型中的一样。

  偏置单元与后一层的所有节点都有连接,我们设这些参数值为向量b,称之为偏置。如下图。

在考虑了偏置以后的一个神经网络的矩阵运算如下:

  g(W(1) * a(1) + b(1)) = a(2); 

g(W(2) * a(2) + b(2)) = z;

EasyPR字符识别网络架构(下图)。

 

  EasyPR使用了字符的图像去进行字符文字的识别。输入是120维的向量。输出是要预测的文字类别,共有65类。根据实验,我们测试了一些隐藏层数目,发现当值为40时,整个网络在测试集上的效果较好,因此选择网络的最终结构就是120,40,65。

机器学习模型训练的目的就是使参数尽可能的与真实的模型逼近。

这里的参数就是权值矩阵,权值矩阵需要通过构造损失函数使用梯度下降算法进行预测。

在神经网络模型中,由于结构复杂,每次计算梯度的代价很大。因此还需要使用反向传播算法。反向传播算法是利用了神经网络的结构进行的计算。不一次计算所有参数的梯度,而是从后往前。首先计算输出层的梯度,然后是第二个参数矩阵的梯度,接着是中间层的梯度,再然后是第一个参数矩阵的梯度,最后是输入层的梯度。计算结束以后,所要的两个参数矩阵的梯度就都有了。反向传播(BackPropagation,BP)算法。

  反向传播算法可以直观的理解为下图。梯度的计算从后往前,一层层反向传播。前缀E代表着相对导数的意思。

SVM支持向量机

五、多层神经网络(深度学习)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值