系列文章目录
凸优化理论学习一|最优化及凸集的基本概念
凸优化理论学习二|凸函数及其相关概念
凸优化理论学习三|凸优化问题(一)
凸优化理论学习四|凸优化问题(二)
凸优化理论学习五|对偶性
文章目录
一、近似问题
近似问题可以概括为:求出一个合理的向量 x x x,使得向量 A x Ax Ax与向量 b b b尽可能相等
问题的核心在于如何定义两个向量的相等程度,由此产生了各种各样的方法。比如,可以定义两个向量之间的角度,距离等。最常用的就是使用范数,范数是一个函数,自变量是一个向量,因变量是这个向量的距离值。
二、范数和惩罚近似
(一)范数近似
范数近似问题涉及找到一个向量,使其在给定范数下与目标向量之间的距离最小化。这在数学优化和数据分析中有广泛的应用。
- 欧几里得近似问题( ∣ ∣ . ∣ ∣ 2 ||\ .\ ||_2 ∣∣ . ∣∣2)的解: x ∗ = A † b x^*=A†b x∗=A†b
- 切比雪夫或极小极大近似 问题(
∣
∣
.
∣
∣
∞
||\ . \ ||_∞
∣∣ . ∣∣∞)可以通过引入辅助变量并转化为线性规划问题来求解:
- 目标函数:最小化 t t t
- 约束条件: − t 1 ≤ A x − b ≤ t 1 -t1\leq Ax-b \leq t1 −t1≤Ax−b≤t1
l ∞ l_{∞} l∞范数表示响亮的最大分量绝对值:
m i n x ∣ ∣ A x − b ∣ ∣ ∞ = m i n x m a x i ∣ ( A x − b ) i ∣ min_x||Ax-b||_{∞}=min_xmax_i|(Ax-b)_i| minx∣∣Ax−b∣∣∞=minxmaxi∣(Ax−b)i∣
- 绝对残差近似值之和问题 (
∣
∣
.
∣
∣
1
||\ .\ ||_1
∣∣ . ∣∣1)也可以通过引入辅助变量并转化为线性规划问题来求解:
- 目标函数:最小化 1 T y 1^Ty 1Ty
- 约束条件: − y ≤ A x − b ≤ y -y\leq Ax-b \leq y −y≤Ax−b≤y
(二)惩罚函数近似
罚函数近似法对于一个 x x x,得到 b b b的一个逼近 A x Ax Ax,也得到了相应的残差向量 r r r,罚函数通过 ϕ ( r i ) \phi(r_i) ϕ(ri)评价每个分量的费用或惩罚,总体惩罚就是每个残差的罚函数之和。罚函数近似可以解决向量b中存在较大测量噪声的问题。 x x x的不同选择会导致不同的残差,因此有不同的总体惩罚,在罚函数问题中,极小化总体惩罚来解决问题。
罚函数逼近问题具有如下形式: ( ϕ : R → R \phi:R\rightarrow R ϕ:R→R是一个凸的惩罚函数)
- 目标函数:最小化 ϕ ( r 1 ) + . . . + ϕ ( r m ) \phi(r_1)+...+\phi(r_m) ϕ(r1)+...+ϕ(rm)
- 约束条件: r = A x − b r=Ax-b r=Ax−b
常见的罚函数:
- 各种范数。不同范数本质上也是一种罚函数,例如 ϕ ( u ) = ∣ u ∣ \phi(u)=|u| ϕ(u)=∣u∣对应 L 1 L1 L1范数逼近
- 带有死区的线性罚函数(死区宽度
a
>
0
a>0
a>0):对于小于a的残差不进行惩罚(即当残差向量的某个分量的残差值小于a时,对应的罚函数输出值为0,则最小化总体残差时对这个分量的考虑很小)
ϕ ( u ) = m a x { 0 , ∣ u ∣ − a } \phi(u)=max\{0,|u|-a\} ϕ(u)=max{0,∣u∣−a} - 对数障碍函数(极限为
a
>
0
a>0
a>0):对大于a的残差给予无穷的惩罚
ϕ ( u ) = { − a 2 l o g ( 1 − ( u / a ) 2 ) , |u|<a ∞ , otherwise \phi(u) = \begin{cases} -a^2log(1-(u/a)^2), & \text{|u|<a} \\ ∞, & \text{otherwise} \end{cases} ϕ(u)={−a2log(1−(u/a)2),∞,|u|<aotherwise
(三)Huber罚函数
在估计或回归领域中,当测量的结果中某个分量存在较大的噪声误差时,按照上面的罚函数,结果残差向量中会产生含有较大分量的残差项。对于这种情况,我们应该首先确认哪些测量值是野值,然后在估计过程中移除,或者在估计时不要对这些项进行太多的优化。
Huber惩罚函数:当残差小于M时,与最小二乘相同;当大于M时,恢复为类似于L1的线性增长。
- 大 u 的线性增长使得近似对异常值不太敏感
- 称为鲁棒的罚函数
ϕ h u b ( u ) = { u 2 , |u| ≤ M M ( 2 ∣ u ∣ − M ) , |u| > M \phi_{hub}(u) = \begin{cases} u^2, & \text{|u|$\leq$M} \\ M(2|u|-M), & \text{|u| > M} \end{cases} ϕhub(u)={u2,M(2∣u∣−M),|u|≤M|u| > M
平面上有42个点,其中有两个明显的野值(一个左上,一个右下)
- 虚线为使用最小二乘法求出的直线,明显向两个野值进行了偏转,而野值明显是有明显测量误差的结果
- 实线是通过极小化Huber罚函数得到的,其中M=1,明显测量出的结果受野值的影响小了很多。
(四)最小范数问题
基本的最小范数问题数学模型为:
- 目标函数:最小化 ∣ ∣ x ∣ ∣ ||x|| ∣∣x∣∣
- 约束条件: A x = b Ax=b Ax=b
- A ∈ R m × n , m ≤ n , ∣ ∣ . ∣ ∣ A\in R^{m\times n},m\leq n,||\ . \ || A∈Rm×n,m≤n,∣∣ . ∣∣代表 R n R^n Rn上一种范数
可以将其重构为范数逼近问题:(
A
x
=
b
Ax=b
Ax=b的通解可以写为:
x
=
x
0
+
Z
u
x=x_0+Zu
x=x0+Zu)
m
i
n
∣
∣
x
0
+
Z
u
∣
∣
,
u
∈
R
k
min ||x_0+Zu||,u\in R^k
min∣∣x0+Zu∣∣,u∈Rk
最小范数问题可以变形为最小罚问题:
- 目标函数:最小化 ϕ ( x 1 ) + . . . + ϕ ( x m ) \phi(x_1)+...+\phi(x_m) ϕ(x1)+...+ϕ(xm)
- 约束条件: A x = b Ax=b Ax=b
在最小罚问题中,使用L1范数作为罚函数可以得到:
- 目标函数:最小化 ∣ ∣ x ∣ ∣ 1 ||x||_1 ∣∣x∣∣1
- 约束条件: A x = b Ax=b Ax=b
这种方法会使得得到的解趋向于有很多等于零的分量,即得到稀疏解,常常有m个非零分量
三、正则化近似
(一)正则化近似问题
范数逼近问题和惩罚函数逼近问题主要解决的是使残差 r = A x − b r=Ax-b r=Ax−b最小向量 x x x的问题,而最小范数问题解决的是在满足 A x = b Ax=b Ax=b的向量中求最小的向量 x x x的问题。
在正则化逼近的基本形式中,目标是寻找向量
x
x
x使其较小,同时使得残差
A
x
−
b
Ax-b
Ax−b小,可描述为双目标的(凸)向量优化问题,数学模型如下:
m
i
n
i
m
i
z
e
(
∣
∣
A
x
−
b
∣
∣
,
∣
∣
x
∣
∣
)
minimize \ (||Ax-b||,||x||)
minimize (∣∣Ax−b∣∣,∣∣x∣∣)
(二)标量化问题
- 极小化目标函数的加权和:
-
γ
\gamma
γ是问题参数,当
γ
\gamma
γ在
(
0
,
∞
)
(0,∞)
(0,∞)上变化,下面式子的解遍历了最佳权衡曲线
m i n ∣ ∣ A x − b ∣ ∣ + γ ∣ ∣ x ∣ ∣ min\ ||Ax-b||+\gamma||x|| min ∣∣Ax−b∣∣+γ∣∣x∣∣
-
γ
\gamma
γ是问题参数,当
γ
\gamma
γ在
(
0
,
∞
)
(0,∞)
(0,∞)上变化,下面式子的解遍历了最佳权衡曲线
- 极小化加权范数平方和:
- 使用Euclid范数
m i n ∣ ∣ A x − b ∣ ∣ 2 + δ ∣ ∣ x ∣ ∣ 2 , δ > 0 min\ ||Ax-b||^2+\delta||x||^2,\ \delta>0 min ∣∣Ax−b∣∣2+δ∣∣x∣∣2, δ>0
- 使用Euclid范数
- Tikhonov 正则化/岭回归:
- 一种常用的基于 Ecuclid 范数的正则化方法,得到一个凸二次优化问题
m i n ∣ ∣ A x − b ∣ ∣ 2 2 + δ ∣ ∣ x ∣ ∣ 2 2 = x T ( A T A + δ I ) x − 2 b T A x + b T b , δ > 0 min\ ||Ax-b||^2_2+\delta||x||^2_2=x^T(A^TA+\delta I)x-2b^TAx+b^Tb,\ \delta>0 min ∣∣Ax−b∣∣22+δ∣∣x∣∣22=xT(ATA+δI)x−2bTAx+bTb, δ>0 - 该问题的解析解为: x = ( A T A + δ I ) − 1 A T b x=(A^TA+\delta I)^{-1}A^Tb x=(ATA+δI)−1ATb
- 对于任意的 δ > 0 \delta>0 δ>0,都有 A T A + δ I > 0 A^TA+\delta I >0 ATA+δI>0,所以解不需要对矩阵A的秩(或维数)做出假设
- 一种常用的基于 Ecuclid 范数的正则化方法,得到一个凸二次优化问题
(三)最优输入设计问题
考虑一个具有脉冲响应 h 的线性动力系统(或卷积系统),其输入向量为
[
u
(
0
)
,
u
(
1
)
,
.
.
.
,
u
(
N
)
]
[u(0),u(1),...,u(N)]
[u(0),u(1),...,u(N)],输出向量为
[
y
(
0
)
,
y
(
1
)
,
.
.
.
,
y
(
N
)
]
[y(0),y(1),...,y(N)]
[y(0),y(1),...,y(N)],输入输出通过卷积相关联,序列
h
(
0
)
,
h
(
1
)
,
.
.
.
,
h
(
N
)
h(0),h(1),...,h(N)
h(0),h(1),...,h(N)称为卷积核或系统的脉冲响应。
y
(
t
)
=
∑
τ
=
0
t
h
(
τ
)
u
(
t
−
τ
)
,
t
=
0
,
1
,
.
.
.
,
N
y(t)=\sum_{\tau =0}^th(\tau)u(t-\tau),t=0,1,...,N
y(t)=τ=0∑th(τ)u(t−τ),t=0,1,...,N
- 输入设计问题:具有 3 个目标的多准则问题
J t r a c k + δ J d e r + η J m a g , δ > 0 , η > 0 J_{track}+\delta J_{der}+\eta J_{mag},\delta >0,\eta >0 Jtrack+δJder+ηJmag,δ>0,η>0- 跟踪输出:输出
y
y
y跟踪给定目标或参数信号
y
d
e
s
y_{des}
ydes 。用二次函数度量输出的跟踪误差:
J t r a c k = ∑ t = 0 N ( y ( t ) − y d e s ( t ) ) 2 J_{track}=\sum^N_{t=0}(y(t)-y_{des}(t))^2 Jtrack=t=0∑N(y(t)−ydes(t))2 - 输入变化:输入不应当快速地变化,用二次函数来度量输入的幅值
J d e r = ∑ t = 0 N ( u ( t + 1 ) − u ( t ) ) 2 J_{der}=\sum^N_{t=0}(u(t+1)-u(t))^2 Jder=t=0∑N(u(t+1)−u(t))2 - 输入幅值:输入不应该很大,用二次函数度量输入的幅值:
J m a g = ∑ t = 0 N ( u ( t ) ) 2 J_{mag}=\sum^N_{t=0}(u(t))^2 Jmag=t=0∑N(u(t))2
- 跟踪输出:输出
y
y
y跟踪给定目标或参数信号
y
d
e
s
y_{des}
ydes 。用二次函数度量输出的跟踪误差:
设定一组参数:N = 200, 脉冲响应: h ( t ) = 1 9 ( 0.9 ) t ( 1 − 0.4 c o s ( 2 t ) ) h(t)=\frac{1}{9}(0.9)^t(1-0.4cos(2t)) h(t)=91(0.9)t(1−0.4cos(2t)) :
- 第一组( δ = 0 , η = 0.005 \delta =0,\eta=0.005 δ=0,η=0.005):对输入幅值进行了正则化,没有考虑其变化,此时跟踪良好,但输入较大,变化较快。
- 第二组( δ = 0 , η = 0.05 \delta =0,\eta=0.05 δ=0,η=0.05):对输入幅值进行了更大的正则化,仍没有考虑其变化,此时输入变小,变化较快,但付出了更多的跟踪误差。
- 第三组(
δ
=
0.3
,
η
=
0.05
\delta =0.3,\eta=0.05
δ=0.3,η=0.05):对输入变化量添加了正则化,输入的变化显著减小,但没有给输出带来太多的跟踪误差。
(四)信号重建问题
信号重建问题也是一个双目标问题:
x
x
x是未知信号,
x
^
\hat{x}
x^是对于未知信号的估计,
x
c
o
v
=
x
+
v
x_{cov}=x+v
xcov=x+v是
x
x
x 的损坏版本,包含了噪声
v
v
v,
ϕ
\phi
ϕ是正则化函数或平滑目标。
m
i
n
i
m
i
z
e
(
∣
∣
x
^
−
x
c
o
r
∣
∣
2
,
ϕ
(
x
^
)
)
minimize \ (||\hat{x}-x_{cor}||_2,\phi(\hat{x}))
minimize (∣∣x^−xcor∣∣2,ϕ(x^))
- 二次平滑:
- 二次平滑可消除信号中的噪声和急剧转变
- ϕ q u a d ( x ^ ) = ∑ i = 1 n − 1 ( x ^ i + 1 − x ^ i ) 2 \phi_{quad}(\hat{x})=\sum_{i=1}^{n-1}(\hat{x}_{i+1}-\hat{x}_i)^2 ϕquad(x^)=∑i=1n−1(x^i+1−x^i)2
- 总方差平滑:
- 总变差平滑保留了信号的急剧转变
- ϕ t v ( x ^ ) = ∑ i = 1 n − 1 ∣ x ^ i + 1 − x ^ i ∣ \phi_{tv}(\hat{x})=\sum_{i=1}^{n-1}|\hat{x}_{i+1}-\hat{x}_i| ϕtv(x^)=∑i=1n−1∣x^i+1−x^i∣
四、鲁棒近似
鲁棒近似问题:最小化 ∣ ∣ A x − b ∣ ∣ ||Ax − b|| ∣∣Ax−b∣∣ 且 A 不确定
- 随机:假设 A 是随机的,最小化 E ∣ ∣ A x − b ∣ ∣ E||Ax − b|| E∣∣Ax−b∣∣
- 最坏情况:最小化 s u p A ∈ A ∣ ∣ A x − b ∣ ∣ sup_{A∈A}||Ax − b|| supA∈A∣∣Ax−b∣∣
随机鲁棒最小二乘法:
最坏情况稳健最小二乘: