【傻瓜攻略】深入学习入门之正则化(七)

上一章写了很多损失函数,其实大多数是我直接复制粘贴整理过来的……是各个神经网络所用到的损失函数的整理。但是我还是没有一些更深一点的理解,可能在后面整理到各种神经网络的时候会用到。

这章博客的主要内容一是分享一个有趣的关于logistic分类的推到,二则是开始聊一聊损失函数中的正则项。这章也是转载的较多,我会标注出原网址的。如果有疏漏就劳烦看官提醒了。虽然感觉确实没人看……敲打

那么现在开始我看到的第一个分享。

1.第一个分享

参考网址:https://blog.csdn.net/v_july_v/article/details/7624837

这个博客的1.1的关于logistic回归的推导很有意思,而且作者的措辞也很好玩,建议大家看看他的博客。

下面是我的个人总结:

其中,简化为概率

将y的标签改为-1,+1,然后令,即将一维数据,该变为二维矩阵的乘法。

然后令=b,则,再对于式子进行简化,

2.正则化项

正则化项的加入,顾名思义,是为了正则化神经网络,解决机器学习过程中过拟合的问题。(以下的话出自网址:https://www.cnblogs.com/weizc/p/5778678.html 用于解释正则化项的出现甚好。)规则化是结构风险最小化策略的实现,是在经验风险上加一个正则化项(regularizer)或惩罚项(penalty term)。

2.0.0 关于正则化如何缓解过拟合问题的原因:

正则化是对于模型参数添加先验,使得模型复杂度较小,对于噪声以及离群点的输入扰动相对较小。

2.0.1 关于正则化项如何正则化神经网络:

,这是一个监督学习希望得到目标权重值的式子,即最小化损失函数得到最优解。

其中Ω(w)就是正则化项,λ为正则化系数。当λ越大的时候,Ω(w)所占的权重越大,即所得到的函数越光滑,也就意味着我们所选择的样本越没有用。反之,样本的权重越大,即函数越容易过拟合。(鄙人根据各种书本以及网址总结得到的通俗化解释。参考书和网址过多,不一一列举了。)

一般来说,正则化项可以是L1范数,L2范数,L0范数,迹范数,Frobenius范数和核范数等。

向量的范数可以简单形象的理解为向量的长度,或者向量到零点的距离,或者相应的两个点之间的距离。

向量的范数定义:向量的范数是一个函数||x||,满足非负性||x|| >= 0,齐次性||cx|| = |c| ||x|| ,三角不等式||x+y|| <= ||x|| + ||y||。

2.0.2 关于正则化项如何稀疏:

下面开始介绍各种范数。

参考网址:https://blog.csdn.net/gshgsh1228/article/details/52199870

P-范数式子:

2.1 L0范数

即p=0代入上述式子中,得到L0-范式

L0范数来规则化参数矩阵W,即希望W的大部分元素都是0。

缺点:很难优化求解(NP难)。这句话,我在各个网站看到很多次了,就是不知道是什么意思,若是有大佬看到,希望能指点一二,跪谢。

关于L0/L1/L2范数的联系和区别,参考网址:https://www.cnblogs.com/little-YTMM/p/5879093.html

2.2 L1范数

   矩阵形式:,即向量元素绝对值之和。也称“稀疏规则算子”。

L1是L0的最优凸近似,比L0更容易优化求解。

相当于加入了一个laplacean先验

2.3 L2范数

为x向量各个元素平方和的1/2次方,L2范数又称Euclidean范数或者Frobenius范数。又叫“岭回归”。相当于加入了一个gaussian 先验

,L1会趋向于产生少量的特征,而其他的特征都是0,而L2会选择更多的特征,而这些特征都会接近于0。

好处:1、解决过拟合问题。2、有助于处理Condition number 不好的情况下矩阵求逆很困难的问题。

关于Condition number:


用于衡量系数过敏感问题的数值。参考网址:https://blog.csdn.net/zouxy09/article/details/24971995

简单来说,就是系统对于误差太敏感,以至于解的误差更大,也就是说,系统对于样本的误差的容忍度太低,容易造成输入稍微改变,输出就发生很大变化的状况。。

Condition number就是用于衡量这种铭感度的数值,Condition number越小系统越好。大的Condition number会拖慢迭代的收敛速率,因为的收敛速度与Condition number有关。规则化项则是把目标函数变成λ-strongly convex。

实际上,L1和L2可以写成一下形式:

将代价函数转化为二维情况,上述式子的约束条件就是其正则化项。L1的约束条件是菱形,L2的约束条件变成圆形。等高线和约束条件首次相交的地方就是最优解。 


可以看到,L1在和每个坐标轴相交的地方都有“角”出现,目标函数大部分都会在角的地方相交。注意到在角的位置就会出现稀疏性。而L2没有角,所以第一次相交的地方出现具有稀疏性的位置的概率就变得非常小。

总结:L2在特征选择时候非常有用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
本火锅店点餐系统采用Java语言和Vue技术,框架采用SSM,搭配Mysql数据库,运行在Idea里,采用小程序模式。本火锅店点餐系统提供管理员、用户两种角色的服务。总的功能包括菜品的查询、菜品的购买、餐桌预定和订单管理。本系统可以帮助管理员更新菜品信息和管理订单信息,帮助用户实现在线的点餐方式,并可以实现餐桌预定。本系统采用成熟技术开发可以完成点餐管理的相关工作。 本系统的功能围绕用户、管理员两种权限设计。根据不同权限的不同需求设计出更符合用户要求的功能。本系统中管理员主要负责审核管理用户,发布分享新的菜品,审核用户的订餐信息和餐桌预定信息等,用户可以对需要的菜品进行购买、预定餐桌等。用户可以管理个人资料、查询菜品、在线点餐和预定餐桌、管理订单等,用户的个人资料是由管理员添加用户资料时产生,用户的订单内容由用户在购买菜品时产生,用户预定信息由用户在预定餐桌操作时产生。 本系统的功能设计为管理员、用户两部分。管理员为菜品管理、菜品分类管理、用户管理、订单管理等,用户的功能为查询菜品,在线点餐、预定餐桌、管理个人信息等。 管理员负责用户信息的删除和管理,用户的姓名和手机号都可以由管理员在此功能里看到。管理员可以对菜品的信息进行管理、审核。本功能可以实现菜品的定时更新和审核管理。本功能包括查询餐桌,也可以发布新的餐桌信息。管理员可以查询已预定的餐桌,并进行审核。管理员可以管理公告和系统的轮播图,可以安排活动。管理员可以对个人的资料进行修改和管理,管理员还可以在本功能里修改密码。管理员可以查询用户的订单,并完成菜品的安排。 当用户登录进系统后可以修改自己的资料,可以使自己信息的保持正确性。还可以修改密码。用户可以浏览所有的菜品,可以查看详细的菜品内容,也可以进行菜品的点餐。在本功能里用户可以进行点餐。用户可以浏览没有预定出去的餐桌,选择合适的餐桌可以进行预定。用户可以管理购物车里的菜品。用户可以管理自己的订单,在订单管理界面里也可以进行查询操作。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值