范数及其应用

作者:@houkai
本文为作者原创,转载请注明出处:https://www.cnblogs.com/houkai/p/10160680.html


范数

范数的一般化定义:设p1的实数,p-norm定义为:

||x||p:=(i=1n|xi|p)1p

L0范数

||x||0:=0i=0nxi0

严格来讲,L0不属于范数,上面的公式让人难以理解。在实际应用中,人们往往采用以下定义:

||x||0=#(i)withxi0

其表示向量中所有非零元素的个数。

L1范数

||x||1:=i=1n|xi|

也称为曼哈顿距离。

L0范数是指向量中非0的元素的个数。如果我们用L0范数来规则化一个参数矩阵W的话,就是希望W的大部分元素都是0。换句话说,让参数W是稀疏的。看到了“稀疏”二字,大家都应该从当下风风火火的“压缩感知”和“稀疏编码”中醒悟过来,原来用的漫山遍野的“稀疏”就是通过这玩意来实现的。

但你又开始怀疑了,是这样吗?看到的papers世界中,稀疏不是都通过L1范数来实现吗?脑海里是不是到处都是||W||1影子呀!

L1范数和L0范数可以实现稀疏,L1因具有比L0更好的优化求解特性而被广泛应用。

L2范数

范数中最常见,也最著名的非L2范数莫属。

||x||2:=i=1nxi2

L2范数的优点

从学习理论的角度来说,L2范数可以防止过拟合,提升模型的泛化能力。
从优化或者数值计算的角度来说,L2范数有助于处理condition number不好的情况下矩阵求逆很困难的问题。

L1和L2的差别,为什么一个让绝对值最小,一个让平方最小,会有那么大的差别呢?

下降速度:
L1就是按绝对值函数的“坡”下降的,而L2是按二次函数的“坡”下降。
模型空间的限制:
对于L1和L2规则化的代价函数来说,我们写成一下形式:

Lasso:minw||yXw||2,s.t. ||w||1CRidge:minw||yXw||2,s.t. ||w||2C

考虑二维的情况,等高线与norm ball相交的地方就是最优解。L1-ball的最优点大都出现在"角点"处,这便大概率产生了稀疏性;L2-ball却不可以,它只是一种规则化手段。

无限范数

infinity norm:

||x||:=i=1nxi

即:

||x||=i=1nxi=xj=max(|xj|)

表示的是X向量中最大元素的长度。

机器学习中的应用

正则化

对模型复杂度进行惩罚,如果惩罚项选择L1,则是我们所说的Lasso回归,而L2则是Ridge回归。

贝叶斯

正则化项从贝叶斯学习理论的角度来看,其相当于一种先验函数分布

即当你训练一个模型时,仅仅依靠当前的训练集数据是不够的,为了实现更好的预测(泛化)效果,我们还应该加上先验项。

而L1则相当于设置一个Laplacean先验,而L2则类似于 Gaussian先验。

L1先验对大值和小值的tolerate很好,而L2先验则倾向于均匀化大值和小值。

贝叶斯回归和图模型

回归模型y=Xw+ϵ,可以看做是:

p(y|X;w,λ)=N(Xw,λ),p(ϵ)=N(0,λ)

贝叶斯分布:

p(ϵ)=12πδexp(ϵ22δ2)

所以:

p(y|x;w)=12πδexp((ywTx)22δ2)

对极大似然MLE取对数:

l(w)=log(i=1m12πδexp((ywTx)22δ2))=mlog(12πδ)12δ2i=1m(ywTx)2

即:

wMLE=argmini=1m(ywTx)2

这就导出了平方损失函数。这是在我们对参数 w 没有加入任何先验分布的情况下。

在数据维度很高的情况下,我们的模型参数很多,模型复杂度高,容易发生过拟合。这个时候,我们可以对参数 w 引入先验分布,降低模型复杂度。

Ridge Regression

假设参数w服从协方差为α的标准高斯分布。

L(w)=p(y|x;wp(w))=i=1m12πδexp((ywTx)22δ2))j=1n12παexp((w)22α2),wn=i=1m12πδexp((ywTx)22δ2))1(2π)n/21|Σ|1/2exp[12wTΣ1w]

取对数,得:

l(w)=log(L(w))=mlog12π+nlog12π12log|Σ|12δ2i=1m(ywTx)2121αwTw

和w有关的项:

J(w)=1m||ywTx||2+λ||w||2

ridge regression 并不具有产生稀疏解的能力,也就是说参数并不会真出现很多零,只是会让权值在0附近分布很密集。

假设我们的预测结果与两个特征相关,L2正则倾向于综合两者的影响,给影响大的特征赋予高的权重;而L1正则倾向于选择影响较大的参数,而舍弃掉影响较小的那个。实际应用中L2正则表现往往会优于 L1正则,但 L1正则会大大降低我们的计算量。

Lasso

如果对w引入Laplace分布呢?Laplace分布:

f(x|u,b)=12bexp(|xu|b)


重复之前的推导过程我们很容易得到:

wMAP=argmin(12δ2i=1m(ywTx)2+12b2||w||1)

LASSO 仍然是一个 convex optimization 问题,它的优良性质是能产生稀疏性,导致 w 中许多项变成零。等价于L1正则化。

Elastic Net

既然 L1和 L2正则各自都有自己的优势,那我们能不能将他们 combine 起来?于是就有了混合先验概率,公式比较复杂,参数约束如下:

posted @   侯凯  阅读(4733)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
历史上的今天:
2013-12-22 4、DES和RSA简介
2013-12-22 3、数字签名
2013-12-22 2、摘要函数——MD2/MD4/MD5数字签名
2013-12-22 1、数据加密基础
2013-12-22 cookie——小甜品
点击右上角即可分享
微信分享提示