L1正则化降噪,对偶函数的构造,求解含L1正则项的优化问题,梯度投影法

L1正则化降噪,对偶函数的构造,求解含L1正则项的优化问题,梯度投影法

本文主要实现L1正则化降噪,L2 正则化降噪的文章在:
https://blog.csdn.net/IYXUAN/article/details/121565229

在这里插入图片描述

原创文章!转载需注明来源:©️ Sylvan Ding’s Blog ❤️

实验目的

  1. 学会使用L1正则化项求解降噪问题;
  2. 构造原问题的对偶问题,以求解含L1正则项的优化问题;
  3. 使用梯度投影法,求解带约束的优化问题;
  4. 在降噪过程中,注意对比L1和L2正则化的区别,并分析使用L1正则项在此降噪问题中的优势。

实验环境

MATLAB R2021a

实验内容

L2正则化

本文主要实现L1正则化降噪,L2 正则化降噪的文章在:
https://blog.csdn.net/IYXUAN/article/details/121565229

假设有一段被噪声污染的信号,即 y=x+w,x,w,y∈Rny=x+w,\ x,w,y\in \mathbb{R}^ny=x+w, x,w,yRn . 其中, xxx 是不含噪声的源信号,www 是一未知噪声,yyy 是观察到的含噪信号。

目标是从观察到的信号 yyy 还原出源信号 xxx . 在实验一中,我们假设最初的信号是一段光滑的曲线,选用二次惩罚(Quadratic Penalty)作为正则化项,则有

x∗=arg⁡min⁡x∥x−y∥2+λ∥Lx∥2,λ>0x^* = \arg \min \limits_{x} \Vert x-y \Vert ^2+\lambda \Vert Lx \Vert ^2, \lambda>0x=argxminxy2+λLx2,λ>0

其中,x∗x^*x 是所求得的最优解,L∈R(n−1)×nL\in \mathbb{R}^{(n-1)\times n}LR(n1)×n

L=[1−100⋯0001−10⋯00001−1⋯00⋮⋮⋮⋮⋮⋮0000⋯1−1]L= \begin{bmatrix} 1 & -1 & 0 & 0 & \cdots & 0 &0 \\ 0 & 1 & -1 & 0 & \cdots & 0 & 0\\ 0 & 0 & 1 & -1 & \cdots & 0 & 0\\ \vdots & \vdots & \vdots & \vdots & & \vdots & \vdots \\ 0 & 0 & 0 & 0 & \cdots & 1 & -1 \end{bmatrix}L=100011000110001000010001

利用最小二乘法,可以解得 x∗(λ)=(I+λLTL)−1yx^*(\lambda) = \left ( I+\lambda L^T L \right )^{-1}yx(λ)=(I+λLTL)1y .

L1正则化

然而,这种使用二次惩罚作为正则项,接着使用最小二乘求解的方法具有一定的局限性,在某些情况下,无论正则化参数 λ\lambdaλ 如何设置,都不能得到理想的解。事实上,对于存在断点的信号(比如脉冲信号)来说,由于惩罚项 ∥Lx∥2\Vert Lx \Vert ^2Lx2 是二次的,断点会导致惩罚项的值急剧增大。因此,这种二次惩罚项会让有噪信号的间断点处更加平滑,但这种间断点处的平滑并不是我们希望得到的。

为了缓解这一问题,削弱信号在跳跃处的惩罚项值增大的幅度,我们使用 L1 范数形式的惩罚项,而非二次惩罚,那么优化问题变为(P)

min⁡x∥x−y∥2+λ∥Lx∥1\min \limits_{x} \Vert x-y \Vert ^2+\lambda \Vert Lx \Vert _1xminxy2+λLx1 .

算法描述

构造对偶问题

优化问题(P)等价于如下问题:

min⁡x,z∥x−y∥2+λ∥z∥1s.t.z=Lx\begin{array}{l} \min \limits _{x,z} & \Vert x-y \Vert ^2 + \lambda \Vert z \Vert _1 \\ \mathrm{s.t.} & z=Lx \end{array}x,zmins.t.xy2+λz1z=Lx

那么,拉格朗日函数 LLL

L(x,z,μ)=∥x−y∥2+λ∥z∥1+μT(Lx−z)=∥x−y∥2+(LTμ)Tx+λ∥z∥1−μTz\begin{array}{l} L(x,z,\mu) & = \Vert x-y \Vert ^2 + \lambda \Vert z \Vert _1 + \mu ^T (Lx-z) \\ & = \Vert x-y \Vert ^2 + (L^T \mu)^Tx + \lambda \Vert z \Vert _1 - \mu ^Tz \end{array}L(x,z,μ)=xy2+λz1+μT(Lxz)=xy2+(LTμ)Tx+λz1μTz

对偶目标函数(Dual objective function)为 q(μ)=min⁡x,zL(x,z,μ)q(\mu)=\min \limits _{x,z} L(x,z,\mu)q(μ)=x,zminL(x,z,μ).

观察 LLL 可以发现,可分别求 xxxzzz 的最优解,即

q(μ)=min⁡x{∥x−y∥2+(LTμ)Tx}+min⁡z{λ∥z∥1−μTz}q(\mu)=\min \limits _{x} \left \{ \Vert x-y \Vert ^2 + (L^T \mu)^Tx \right \}+ \min \limits _{z} \left \{ \lambda \Vert z \Vert _1 - \mu ^Tz \right \}q(μ)=xmin{xy2+(LTμ)Tx}+zmin{λz1μTz}.

q(μ)q(\mu)q(μ) 中关于 xxx 部分的最小值

对于 ∥x−y∥2+(LTμ)Tx\Vert x-y \Vert ^2 + (L^T \mu)^Txxy2+(LTμ)Tx 求关于 xxx 的最小值,显然这是一个二次函数,在梯度消失时,取得最小值,即

2(x−y)+LTμ=02(x-y)+L^T\mu =02(xy)+LTμ=0

解得 x∗=y−12LTμx^*=y-\frac{1}{2}L^T\mux=y21LTμ ,故

min⁡x∥x−y∥2+(LTμ)Tx=−14μTLLTμ+μTLy.\min \limits _{x} \Vert x-y \Vert ^2 + (L^T \mu)^Tx = -\frac{1}{4}\mu ^T LL^T \mu + \mu ^TLy.xminxy2+(LTμ)Tx=41μTLLTμ+μTLy.

q(μ)q(\mu)q(μ) 中关于 zzz 部分的最小值

min⁡zλ∥z∥1−μTz={0,∥μ∥∞≤λ−∞else.\min \limits _z \lambda \Vert z \Vert _1 - \mu ^Tz= \left\{\begin{matrix} 0, & \Vert \mu \Vert _\infty \le \lambda \\ - \infty & else. \end{matrix}\right.zminλz1μTz={0,μλelse.

综上,对偶目标函数为

q(μ)=min⁡x,zL(x,z,μ)={−14μTLLTμ+μTLy,∥μ∥∞≤λ−∞else.q(\mu)=\min \limits _{x,z} L(x,z,\mu)= \left\{\begin{matrix} -\frac{1}{4}\mu ^T LL^T \mu + \mu ^TLy, & \Vert \mu \Vert _\infty \le \lambda \\ -\infty & else. \end{matrix}\right.q(μ)=x,zminL(x,z,μ)={41μTLLTμ+μTLy,μλelse.

那么,对偶问题就为

max⁡−14μTLLTμ+μTLys.t.∥μ∥∞≤λ.\begin{array}{l} \max & -\frac{1}{4}\mu ^T LL^T \mu + \mu ^TLy \\ \mathrm{s.t.} & \Vert \mu \Vert _\infty \le \lambda. \end{array}maxs.t.41μTLLTμ+μTLyμλ.

使用梯度投影法求解对偶问题

投影的定义

约束域 C:={μ∈Rn−1:∥μ∥∞≤λ}C:=\left \{ \mu \in \mathbb{R} ^{n-1}: \Vert \mu \Vert _\infty \le \lambda \right \}C:={μRn1:μλ} 是“盒状的”,即

−λ≤μi≤λ,i=1,2,…,n−1.-\lambda \le \mu _i \le \lambda, i=1,2,\dots,n-1.λμiλ,i=1,2,,n1.

那么,μ\muμCCC 上的投影 PC(μ)∈Rn−1P_C(\mu ) \in \mathbb{R} ^{n-1}PC(μ)Rn1

[PC(μ)]i:={−λ,μi≤−λμi,−λ≤μi≤λλ,λ≤μi\left [ P_C(\mu ) \right ] _i := \left\{\begin{matrix} -\lambda , & \mu _i \le -\lambda \\ \mu _i , & -\lambda \le \mu _i \le \lambda \\ \lambda , & \lambda \le \mu _i \\ \end{matrix}\right.[PC(μ)]i:=λ,μi,λ,μiλλμiλλμi

其中,i=1,2,…,n−1i=1,2,\dots,n-1i=1,2,,n1. 特别的,当 λ=1\lambda = 1λ=1 时,即 lambda=1 ,有PcMu=lambda*mu./max(abs(mu),lambda);PcMuμ\muμCCC 上的投影,即 PC(μ)P_C(\mu )PC(μ).

求解梯度的Lipschitz常数

对偶目标函数 q(μ)q(\mu)q(μ) 中,LLT∈R(n−1)×(n−1)LL^T\in \mathbb{R} ^{(n-1)\times (n-1)}LLTR(n1)×(n1) 是一个对称矩阵,对 ∀μ≠0\forall \mu \ne 0μ=0 ,有瑞利商(Rayleigh Quotient)

RLLT(μ)=μTLLTμ∥μ∥2=∥Lμ∥2∥μ∥2=∑i=1n−1(μi−μi+1)2∥μ∥2≤2(∑i=1n−1μi2+∑i=1n−1μi+12)∥μ∥2≤4∥μ∥2∥μ∥2=4\begin{array}{l} R_{LL^T}(\mu ) &= \frac{\mu ^TLL^T\mu}{\Vert \mu \Vert ^2} = \frac{\Vert L\mu \Vert ^2}{\Vert \mu \Vert ^2} = \frac{\sum _{i=1} ^{n-1} (\mu _i- \mu _{i+1})^2}{\Vert \mu \Vert ^2} \\ &\le \frac{2\left ( \sum _{i=1} ^{n-1} \mu _i^2 + \sum _{i=1} ^{n-1} \mu _{i+1}^2\right )}{\Vert \mu \Vert ^2} \le \frac{4\Vert \mu \Vert ^2}{{\Vert \mu \Vert ^2}} = 4 \\ \end{array}RLLT(μ)=μ2μTLLTμ=μ2Lμ2=μ2i=1n1(μiμi+1)2μ22(i=1n1μi2+i=1n1μi+12)μ24μ2=4

由 定理1.11 知,RLLT(μ)≤λmax⁡(LLT)R_{LL^T}(\mu ) \le \lambda_{\max} (LL^T)RLLT(μ)λmax(LLT) ,即 λmax⁡(LLT)≤4\lambda_{\max} (LL^T) \le 4λmax(LLT)4.

λmax⁡(LLT)\lambda_{\max} (LL^T)λmax(LLT)LLTLL^TLLT 的最大特征值

LLTLL^TLLT 的诱导范数(Induced norm)是一个谱范数(Spectral norm),令 A=LLTA=LL^TA=LLT ,则有

∥A∥2,2=λmax⁡(ATA)=λmax⁡(A).\Vert A \Vert _{2,2} = \sqrt{\lambda _{\max} \left ( A^TA\right )}=\lambda _{\max}(A).A2,2=λmax(ATA)=λmax(A).

因此,二次函数 −14μTLLTμ+μTLy-\frac{1}{4}\mu ^T LL^T \mu + \mu ^TLy41μTLLTμ+μTLy 的梯度Lipschitz常数为

L′=2×∥14A∥2,2=12λmax⁡(A)=2.L'=2\times \Vert \frac{1}{4} A \Vert _{2,2}=\frac{1}{2}\lambda _{\max}(A)=2.L=2×41A2,2=21λmax(A)=2.

综上,可用梯度投影法求解 μ∗\mu ^*μ ,令 tk=tˉ=1L′t_k=\bar{t} = \frac{1}{L'}tk=tˉ=L1,则有

μk+1=PC(μk−14LLTμk+12Ly).\mu _{k+1}=P_C \left ( \mu _k -\frac{1}{4} LL^T \mu _k +\frac{1}{2}Ly \right ).μk+1=PC(μk41LLTμk+21Ly).

定理 9.16 和 9.18 保证了 μ∗\mu ^*μ 的收敛性.

假设 μ∗\mu ^*μ 为梯度投影法所得结果,那么原问题的解为

x∗=y−12LTμ∗.x^* = y-\frac{1}{2}L^T\mu ^*.x=y21LTμ.

实验步骤

在L1正则化中,设定 λ=1\lambda = 1λ=1 ,梯度投影的迭代次数为 100010001000 次.

%% L2正则化
L=sparse(n-1,n);
for i=1:n-1
L(i,i)=1;
L(i,i+1)=-1;
end
lambda=100;
xde=(speye(n)+lambda*L'*L)\y;
figure(3)
plot(t,xde);
randn('seed',314);
x=zeros(1000,1);
x(1:250)=1;
x(251:500)=3;
x(501:750)=0;
x(751:1000)=2;
figure(1)
plot(1:1000,x,'.')
axis([0,1000,-1,4]);
y=x+0.05*randn(size(x));
figure(2)
plot(1:1000,y,'.')
%% L1正则化
lambda=1;
mu=zeros(n-1,1);
for i=1:1000
mu=mu-0.25*L*(L'*mu)+0.5*(L*y);
mu=lambda*mu./max(abs(mu),lambda);
xde=y-0.5*L'*mu;
end
figure(5)
plot(t,xde,'.');
axis([0,1,-1,4])

结果分析

在这里插入图片描述

Figure 12.4. True signal (top image) and noisy signal (bottom image).

在这里插入图片描述

在这里插入图片描述

使用 L2 惩罚项时,不能正确处理函数图像的三个间断点。但是,使用 L1 惩罚项时,在间断点处,比任何 λ\lambdaλ​ 时的 L2 惩罚项的表现情况都要好。(This result is much better than any of the quadratic regularization reconstructions, and it captures the breakpoints very well.)

参考文献

  1. INTRODUCTION TO NONELINEAR OPTIMIZATION. Amir Beck. 2014 : 12.3.10 Denoising
  2. THE GRADIENT PROJECTION ALGORITHM, https://sites.math.washington.edu/~burke/crs/408/notes/nlp/gpa.pdf

原创文章!转载需注明来源:©️ Sylvan Ding’s Blog ❤️

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/484633.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HBase之Table.put客户端流程(续)

上篇博文中已经谈到,有两个流程没有讲到。一个是MetaTableAccessor.getRegionLocations,另外一个是ConnectionImplementation.cacheLocation。这一节,就让我们单独来介绍这两个流程。首先让我们来到MetaTableAccessor.getRegionLocations。1.…

普华永道:AI规模化应用,基础知识先行

来源:Forbes作者:Cindy Gordon编译:科技行者人工智能(AI)是正在改变很多行业的游戏规则。据统计,人工智能有望为2030年的全球经济贡献高达15.7万亿美元,比中国和印度目前的产出之和还要多。其中…

ADMM,ISTA,FISTA算法步骤详解,MATLAB代码,求解LASSO优化问题

ADMM,ISTA,FISTA算法步骤详解,MATLAB代码,求解LASSO优化问题 原创文章!转载需注明来源:©️ Sylvan Ding’s Blog ❤️ 实验目的 了解 ADMM, ISTA, FISTA 算法的基本原理、收敛性和复杂度;使用上述三种算法&#…

Spring详解(八)------事务管理

目录 1、事务介绍2、事务的四个特性(ACID)3、Spring 事务管理的核心接口4、 PlatformTransactionManager 事务管理器5、TransactionStatus 事务状态6、TransactionDefinition 基本事务属性的定义7、Spring 编程式事务和声明式事务的区别 8、不用事务…

A股光刻胶飙涨背后:仅一家可供应高端光刻胶

来源:芯师爷部分素材来源:前瞻产业研究院、华泰证券5月27日,半导体光刻胶概念股开盘即走强,截至收盘,A股光刻胶板块涨幅达6.48%。其中晶瑞股份、广信材料直线拉升大涨20%封涨停,容大感光大涨13.28%&#xf…

二〇二二注定是踔厉奋发、笃行不怠的一年

2021年,我在生活上、学习上、工作上都有着太多太多遗憾,很多想做的事、计划好的事并没有得到落实。但正如张宇老师所说,人生本来就是一段段幸福夹杂着不可避免的遗憾组成的,所取得的成绩远远大于遗憾,毕竟前途似海&…

为什么机器学习算法难以优化?一文详解算法优化内部机制

来源: 机器之心作者:JONAS DEGRAVE、IRA KORSHUNOVA编辑:小舟选自:engraved.blog损失线性组合是正确的选择吗?这篇文章或许能够给你答案。在机器学习中,损失的线性组合无处不在。虽然它们带有一些陷阱&…

论文作者串通抱团、威胁审稿人,ACM Fellow炮轰「同行评审」作弊

来源:机器之心编辑:陈萍、杜伟布朗大学计算机科学系教授、机器学习研究者、2018 年 ACM Fellow 迈克尔 利特曼(Michael L. Littman)在 ACM 通讯上发文斥责「部分学者正在威胁计算机科学研究的诚实性」。他在文章中指出了同行评审…

JDG人脸识别课堂管理系统全栈开发流程报告-软件工程实践报告

JDG人脸识别课堂管理系统全栈开发流程报告-软件工程 ⭐️ 本报告的代码部分和程序设计参考了 计算机18-1班张宇哲(学号181002406)同学 在Gitee仓库发布的AI-Attendance,本文档基于软件工程的具体流程,从软件工程的角度细化的张同学…

浅谈贝叶斯统计

来源:京师统计团总支学生会编辑: ∑Gemini浅谈贝叶斯统计贝叶斯统计是英国学者托马斯贝叶斯在《论有关机遇问题的求解》中提出一种归纳推理的理论,后被一些统计学者发展为一种系统的统计推断方法,称为贝叶斯方法。本文旨在通过实际…

浅析虚拟语气 (Subjunctive mood)

浅析虚拟语气 (Subjunctive mood) 本文旨在通过一种时序逻辑上的联系,帮助读者更好的记忆和运用虚拟语气。文中提及的概念不一定正确,但一定程度上能辅助记忆,最终达到熟练运用的目的。(有些语法不用刨根问底,都是约定…

数论重大突破:120年后,希尔伯特的第12个数学难题借助计算机获得解决

来源:机器之心编辑:nhyilin德国数学家大卫 希尔伯特(David Hilbert)是二十世纪最伟大的数学家之一,被后人称为「数学世界的亚历山大」。他对数学领域做出了广泛和重大的贡献,研究领域涉及代数不变式、代数…

Linux进程通信的四种方式——共享内存、信号量、无名管道、消息队列|实验、代码、分析、总结

Linux进程通信的四种方式——共享内存、信号量、无名管道、消息队列|实验、代码、分析、总结 每个进程各自有不同的用户地址空间,任何一个进程的全局变量在另一个进程中都看不到,所以进程之间要交换数据必须通过内核,在内核中开辟…

美国人测评马斯克的星链服务: 现实太骨感,梦想已破灭

来源: 风闻社区、3D实验室最近看到外国人测评马斯克的starlink服务,满篇吐槽,无数缺陷,而且都是原理上无法克服的那种缺陷,跟大家分享一下。首先星链服务不是你想像的那种一卡在手,天下我有的服务。用它之前…

编译过程中的链接地址对最终编译镜像文件的影响

MDK和交叉编译工具编译时都会指定程序的下载的地址(其实就是告诉程序它将在那个地址上开始执行),这有什么意义吗? 其实这么设计有原因的,因为这里涉及到全局变量和全局函数指针的地址问题,加入当你在编译时…

三维空间中曲线绕任意轴旋转所得的旋转曲面求法

三维空间中曲线绕任意轴旋转所得的旋转曲面求法 对2023汤家凤考研高等数学讲义225页2.三维空间直线旋转曲面的解释和推广 ©️ sylvanding

彩图完美解释:麦克斯韦方程组

来源:微波射频网麦克斯韦方程组麦克斯韦方程组(英语:Maxwells equations)是英国物理学家麦克斯韦在19世纪建立的描述电磁场的基本方程组。它含有四个方程,不仅分别描述了电场和磁场的行为,描述了它们之间的…

基于阿里云服务网格流量泳道的全链路流量管理(二):宽松模式流量泳道

作者:尹航 在前文基于阿里云服务网格流量泳道的全链路流量管理(一):严格模式流量泳道中,我们介绍了使用服务网格 ASM 的严格模式流量泳道进行全链路灰度管理的使用场景。该模式对于应用程序无任何要求,只需…

中国世界工厂地位为什么不会动摇

来源:工信头条文:赵一之在贸易保护主义和疫情的双重影响下,中国作为世界工厂是否会面临大规模制造业外迁,是时常引起关注的问题。复杂产品的供应链彼此环环相扣,缺失任何一环,都会影响到整个行业。疫情指出…

一文彻底解决YOLOv5训练找不到标签问题

YOLOv5 训练找不到标签, No labels found in /path/train.cache 问题的解决方法(亲测可用) ❤️ 网上绝大部分教程所述解决方法都不靠谱,也没有分析问题发生的原因,本文彻底解决了YOLOv5训练时找不到标签,出现 No labels found in /path/trai…