![](https://img-blog.csdnimg.cn/6643b89254f84981aa6fd7d568d90c73.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
数值优化方法
文章平均质量分 91
开此栏笔者为了记录个人的数值优化领域的一些学习心得与实验过程,期待在磨练数值优化的过程中,将其熟练应用到图像处理的算法设计中
姑苏隐士
高级多媒体算法工程师,本课数学硕士EE,西北某211土著,爱好数学,编程,信号图像处理,算法研究等
展开
-
交替方向乘子法(admm)
admm统计学、机器学习和科学计算中出现了很多结构复杂且可能非凸、非光滑的优化问题。交替方向乘子法很自然地提供了一种适用范围广泛、容易理解和实现、可靠性不错地解决方案。该方法在20世纪70年代发展起来地,与许多其他算法等价或密切相关,如对偶分解、乘子方法、Douglas-Rachford Splitting方法、Dykstra交替投影方法、Bregman对于带l1l_1l1范数问题地迭代算法、近似点算法等、本届首先介绍交替方向乘子法地基本算法;在介绍了Douglas-Rachford Splitting原创 2022-03-03 14:33:50 · 4565 阅读 · 8 评论 -
Nesterov加速算法
Nesterov加速算法上一届分析了近似点梯度法的收敛速度:如果光华部分的梯度是利普西茨连续的,则目标函数的收敛速度可以达到O1kO{\frac{1}{k}}Ok1,一个自然的问题是如果仅用梯度信息,我们能不能取得更快的收敛速度。Nesterov分别再1983年、1988年和2005年提出了三种改进的一阶算法,收敛速度能到达O(1k2)O({1}{k^2})O(1k2)。实际上,这三种算法都可以应用到近似点梯度算法上。再Nesterov加速算法再但是并没有引起太多的关注。但几年来,随着数据量的增大,牛顿原创 2022-03-02 10:03:15 · 2942 阅读 · 3 评论 -
近似点梯度算法
近似点梯度算法本届主要考虑复合优化问题:minx∈Rnψ(x)=deff(x)+h(x)(1)\min_{x\in\mathcal{R^n}}\quad\psi(x)\overset{def}{=}f(x)+h(x)\tag{1}x∈Rnminψ(x)=deff(x)+h(x)(1)其中f(x)f(x)f(x)为可微函数(可能非凸),h(x)h(x)h(x)可能为不可微函数。问题(1)出现在很多应用领域中,如压缩感知、图像处理、机器学习等,如何高效求解该问题是近年来的人们课题。本届江介绍基于近原创 2022-03-02 09:59:39 · 3397 阅读 · 6 评论 -
增广拉格朗日函数法
增广拉格朗日函数法在二次罚函数法中,为了保证可行性,罚因子必须趋于正无穷。此时,子问题因条件数爆炸而难以求解。那么,是否可以通过对二次罚函数进行某种修正,使得对有限的罚因子,得到的毕竟最优解也是可行的?增广拉格朗日函数法就是这样的一个方法。一、等式约束优化问题的增广拉格朗日函数法增广拉格朗日函数法的构造增广拉格朗日函数法的每一步构造一个增广拉格朗日函数,而该函数的构造依赖于拉格朗日函数和约束的二次罚函数。具体地,对于等式约束优化问题,minxf(x)s.t.ci(x)=0,i∈E(1)\be原创 2022-03-01 14:52:08 · 8252 阅读 · 2 评论 -
约束优化求解之罚函数法
罚函数法本部分考虑约束优化问题:minf(x)s.t.x∈χ(1)\begin{aligned}\min f(x) \\s.t. x\in\chi\end{aligned} \tag{1}minf(x)s.t.x∈χ(1)这里χ⊂Rn\chi\subset\mathbb{R}^nχ⊂Rn为问题的可行域。与无约束问题不同,约束优化问题中自变量xxx不能任意取值,这导致无约束优化算法不能使用。例如梯度法中沿着梯度负方向下降所得的点未必是可行点,要寻找最优解处目标函数的梯度也不是零向量。这使原创 2022-02-10 14:44:22 · 8615 阅读 · 0 评论 -
共轭梯度法
共轭梯度法最速下降法以及牛顿法都具有其自身的局限性。本文将要介绍的共轭梯度法是介于最速下降法与牛顿法之间的一种无约束优化算法,它具有超线性的收敛速度,而且算法结构简单,容易编程实现。此外,根最速下降法相类似,共轭梯度法只用到了目标函数及其梯度值,避免了二阶导数的计算,从而降低了计算量和存储量,因此它是求解无约束优化问题的一种比较有效而使用的算法。一、共轭方向发共轭方向法的基本思想是在求解nnn维正定二次目标函数极小点时产生一组共轭方向作为搜索方向,在线搜索条件下算法之多迭代nnn步即能求得极小点。京故原创 2022-02-14 17:32:35 · 5795 阅读 · 0 评论 -
无约束优化算法之拟牛顿法
function [fmin, xmin] = BFGS(func, gfunc, x0, epsilon)HOld = eye(length(x0));maxIter = 500;xOld = x0;iIter = 1;while iIter < maxIter gOld = feval(gfunc, xOld); dk = -HOld * gOld; [~, ~, alpha] = armijo_rule(func, gfunc, xOld, 0.2, d原创 2022-02-10 14:41:53 · 1737 阅读 · 0 评论 -
牛顿法无约束优化
牛顿法无约束优化算法原创 2021-12-22 23:07:29 · 1057 阅读 · 0 评论 -
次梯度与次梯度算法
mainclose allm = 512;n = 1024;A = randn(m, n);r = 0.1;u = sprandn(n, 1, r);b = A * u;mu = 1;epsilon = 1e-5;u0 = u + 0.1 * randn(n, 1);func = @(x)(subgradient_func(x, mu, A, b));gfunc = @(x)(subgradient_gfunc(x, mu, A, b));step_size0 = 0.0005原创 2021-12-21 23:22:47 · 3715 阅读 · 0 评论 -
梯度下降应用举例
梯度下降应用举例Lasso 问题求解tikhonov正则化举例main函数u = load('tower.mat');u = u.B1;x = double(u);[height, width] = size(u);x0 = x;y = x + 20 * randn(height, width);% y = mat2gray(y);% x = mat2gray(x);lambda0 = 0.5;lambda1 = 2;epsilon = 1e-4;func0原创 2021-12-20 23:07:44 · 2857 阅读 · 4 评论 -
梯度下降算法
一、梯度下降算法本文介绍梯度下降算法,其本质是仅仅使用函数的一阶导数信息选取下降方向dkd_kdk。梯度下降法的方向选取非常直观,实际应用范围非常广,因此它在优化算法中的地位可相当于高斯消元法在线性方程组中的地位。此外我们也会介绍BB方法,该方法作为一种梯度法的变形,虽然理论性质目前仍不完整,但由于优秀的数值表现,也是在实际应用中使用较多的一种算法。对于光滑函数f(x)f(x)f(x),在迭代点xkx_kxk处,我们需要选择一个较为合理的dkd_kdk作为下降方向。注意到ϕ(α)=f(xk+αdk原创 2021-12-02 17:11:47 · 5502 阅读 · 4 评论 -
无约束优化之单纯形法(Nelder-Mead Algorithm)
单纯形法只需要计算目标函数值,是无需要一维搜索,也无需进行求导的一种直接法。其优点计算比较简单,几何概念清晰,适用于目标函数求导比较困难或不知道目标函数的具体表达式而仅知道其具体计算方法的情况。一、基本思想所谓n维欧氏空间中的单纯形,是指在n维空间中由n+1个顶点构成的简单图形或多面体。例如,在二维平面中的单纯形应具有三个顶点,即三角形。在三维空间中的单纯形应具有四个顶点,即四面体。当各顶点之间的距离相等时,这种几何图形就称为正规单纯形。单纯形法的基本思想是:选n+1个顶点构成初始单纯形,计算并比较各原创 2021-11-30 15:59:01 · 8828 阅读 · 5 评论 -
无约束优化方法之powell方法
无约束优化方法是优化技术中心极为重要也是最基本的内容之一。无约束优化问题的数学模型为:minx∈Rnf(x)\min_{x \in R^n}f(x)x∈Rnminf(x)无约束优化方法不仅可解决设计中无约束优化问题,更重要的是通过对无约束优化方法的研究,给求解约束优化方法提供良好的概念和理论基础,而且约束优化问题通过数学处理可化为无约束优化问题,利用无约束优化方法来求解。所以无约束优化方法在优化设计中有十分重要的作用;根据确定搜索方向所使用的信息和方法,无约束优化方法可以分为两大类:(1)直原创 2021-11-30 15:55:22 · 3244 阅读 · 1 评论 -
线搜索技术
线搜索技术求解一维函数的极值点的数值迭代法称为一维搜索方法,又称为线搜索技术。实际工程优化问题的目标函数是一元函数的并不多,但是,在求解多元函数最优解的过程中,常常伴随着一系列的线搜索技术。线搜索方法对整个算法的收敛速度、精度都有较大的影响。可以说线搜索技术是优化方法的重要支柱。在前面的优化技术理论基础中介绍了下降迭代算法的基本迭代公式xk+1=xk+αkdk,(k=0,1,2,⋯ )x_{k+1}=x_k+\alpha_k d_k, (k=0,1,2,\cdots)xk+1=xk+αkdk原创 2021-11-26 14:46:31 · 2964 阅读 · 0 评论 -
数值优化理论的数学基础
优化设计数学模型的求解,实际上就是数学中的极值问题。对于无约束优化问题,是求多元函数的无条件极值,约束优化问题是求多元函数的条件极值。尽管高等数学中的极值理论仍然是求解这种问题的理论基础,但是优于机械,电气信息工程设计中建立的数学模型一般都比较复杂,变量个数和各种约束条件都较多,难以用解析的方法直接求得最优解。因此有必要对多变量的约束优化问题的求解所涉及的数学概念、数值迭代的有关理论进行补充和扩展。偏导数导数作为描述函数变化率的数学量在最优化理论中具有重要的意义。对于医院函数f(x)f(x)f(x)在原创 2021-11-23 11:29:28 · 883 阅读 · 0 评论