多层感知机(Multilayer Percetron)MLP

参考:https://blog.csdn.net/u012162613/article/details/43221829

MLP(多层感知器)神经网络https://blog.csdn.net/liuyukuan/article/details/72934383

 一、什么是多层感知机?

多层感知机MLP,结构为:输入层——(1或n层)隐含层——输出层,层与层之间全连接(全连接的意思就是:上一层的任何一个神经元与下一层的所有神经元都有连接)。

多层感知机最底层是输入层,中间是隐藏层,最后是输出层。最简单的MLP只有一层隐含层hidden layer如下图:

二、为甚么要用多层感知机

单个感知器能够完成线性可分数据的分类问题,是一种最简单的可以“学习”的机器。但他无法解决非线性问题。比如下图中的XOR问题:即(1,1)(-1,-1)属于同一类,而(1,-1)(-1,1)属于第二类的问题,不能由单个感知器正确分类。

即在Minsky和Papert的专著《感知器》所分析的:感知器只能解决所谓一阶谓词逻辑问题:与(AND),或(OR)等,而不能解决异或(XOR)等高阶谓词逻辑问题。

多层感知机实现非线性分类问题

三、公式解读和学习过程

以3层MLP为例:

F(x) =softmax[(b_{2}+W_{2}(f(b_{1}+W_{1}))]

W为权重;b为偏置;下标表示层数;softmax即softmax回归;函数f是激活函数,可以是常用的sigmoid函数或者tanh函数。

输入层:如一个n维向量X

隐藏层:输出f(W_{1}X+b_{1})

输出层:隐藏层到输出层可以看成是一个多类别的逻辑回归softmax(W_{2}X_{1}+b_{2})X_{1}表示f(W_{1}X+b_{1})

因此,MLP所有的参数就是各个层之间的连接权重以及偏置W_{1}/b_{1}/W_{2}/b_{2},多层感知机的训练学习目的就是确定最佳的参数。

 求解最佳的参数是一个最优化问题,解决最优化问题,最简单的就是梯度下降法了(SGD):首先随机初始化所有参数,然后迭代地训练,不断地计算梯度和更新参数,直到满足某个条件为止(比如误差足够小、迭代次数足够多时)。这个过程涉及到代价函数、规则化(Regularization)、学习速率(learning rate)、梯度计算等。

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值