第二周作业:多层感知机

本文介绍了softmax回归在多类分类中的应用,包括L2和L1损失函数,以及Huber损失的优势。此外,详细讨论了多层感知机的工作原理,从单层到多层,包括Sigmoid、Tanh和ReLU激活函数,以及权重衰退的L2正则化和丢弃法在防止过拟合中的作用。
摘要由CSDN通过智能技术生成

1 SOFTMAX回归

1.1回归 vs 分类 :

回归估计一个连续值,分类预测一个离散类别
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
softmax回归是一个多类分类模型。
使用softmax操作子得到每个类的预测置信度。
使用交叉熵来衡量预测和标号的区别。

1.2 损失函数

1.2.1 L2 loss (均方损失)

L(y,y’) = 1/2(y-y’)²*
问题是当预测值远离真实值的时候,会用较大的梯度来更新函数,解决方法就是使用L1 LOSS
在这里插入图片描述

1.2.2 L1 loss (绝对值损失函数)

L(y,y’) = |y - y’|
梯度变化相同,可以带来一些稳定上的好处。
不好的地方是零点处不可导,会有一段剧烈变化,当预测值与真实值靠的比较近时,会变得不那么稳定。
在这里插入图片描述

1.2.3 Huber’ Robust Loss (结合了L1 和 L2 的优点)

在这里插入图片描述

1.3 softmax从零实现

[softmax从零实现(https://blog.csdn.net/keel1112/article/details/120246561)]

2 多层感知机

2.1 感知机

感知机是一个二分类模型,最早的AI模型之一

2.1.1感知机定义

给定输入x,权重w,和偏移b,感知机输出
o = σ(<w,x>+b)
σ(x) = 1 if x> 0 AND 0 otherwise

感知机属于二分类问题,返回1或者-1,而回归问题返回的是一个实数。而softmax回归输出概率。

2.1.2训练感知机

initialize w = 0 and b = 0
repeat
   if  yi [ <w,xi> ] <= 0  then
   w = w+yi xi   and   b = b+yi
   end if
until all classdied correctly

等价于使用批量大小为1的梯度下降,并使用如下的损失函数
L(y,x,w) = max(0,-y<w,x>)

2.1.3 收敛定理

在这里插入图片描述

2.1.4 感知机的问题,XOR问题

感知机不能拟合XOR函数,它只能产生线性分割面。这也直接导致了AI的第一个寒冬。

2.2 多层感知机

2.2.1 原理

通过两层简单函数来实现同或。

2.2.2 单隐藏层 - 单分类

在这里插入图片描述
非线性激活函数的作用:所过是线性的激活函数,会导致
o = w2(转置)W1x + b’ 结果仍然是线性的,与单层感知机没有区别。

2.2.3 Sigmoid激活函数

在这里插入图片描述

2.2.4 Tanh激活函数

在这里插入图片描述

2.2.5 Relu激活函数

在这里插入图片描述

2.2.6 多类分类

y1,y2,…yk = softmax(o1,o2,…ok)
多类跟sftmax的去不饿就是多了一层隐藏层。
在这里插入图片描述

2.2.7 多隐藏层

而多隐藏层的超参数是隐藏层数以及每层隐藏层的大小。
h1 = σ(W1x + b1)
h2 = σ(W2h1 + b2)
h1 = σ(W3h2 + b3)
o = W4h3 + b4
机器学习本质上就是做压缩,比如把一张图片压缩到几个维度,就是分类问题。压缩过程要慢慢的压缩回去。256到128到64到16.
还可以在下一层做一下扩展,先胖再瘦。不能一下子压缩太多,会丢失很多信息。

2.2.8 总结

多层感知机使用隐藏层和激活函数来得到非线性模型。
常用的激活函数是Sigmoid,Tanh,Relu。
使用Softmax来处理多类分类。
超参数为隐藏层数,和各个隐藏层的大小。

3 权重衰退

是解决过拟合的一种方法

3.1 L2正则化

3.1.1使用均方范数作为硬性限制

控制模型容量的办法有减少参数的数量或者通过限制参数值的选择范围来控制模型容量。均方范数就是通过限制参数值的选择范围来控制模型容量。

min L(w,b) subject ||w||²<=θ
通常不限制偏移b(限不限制都差不多)
小的θ意味着更强的正则项,正则项可以理解为限制项

3.1.2使用均方范数作为柔性限制

对每个θ,都可以找到λ使得之前的目标函数等价于下面
min L(w,b) +||w||² * λ/2
可以通过拉格朗日乘子来证明
超参数λ控制了正则项的重要程度
λ = 0:无作用
λ → ∞ :w*→0
λ也就是惩罚项,penalty
惩罚项将权重拉向原点的位置,从而实现权重降低
惩罚项将权重拉向原点的位置,从而实现权重降低
在这里插入图片描述

3.1.3总结

权重衰退通过L2正则项使得模型参数不会过大,从而控制模型复杂度
正则项权重是控制模型复杂度的超参数

3.2丢弃法

3.2.1动机

一个好的模型需要对输入数据的扰动鲁棒
使用有噪音的数据等价于TIkhonov正则
丢弃法:在层之间加入噪音,丢弃法其实是一个正则
在这里插入图片描述
在这里插入图片描述

3.2.2推理中的丢弃法

正则项只在训练中使用:他们影响模型参数的更新
在推理过程中,丢弃发直接返回输入
h = dropout(h)
这样也能保证确定性的输出

4.2.3总结

丢弃法将一些输出项随即设置0来控制模型复杂度
常作用在多层感知机的隐藏层输出上
丢弃概率是控制模型复杂度的超参数

4 kaggle竞赛

尚在攻坚,未完待续

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值