机器学习-凸优化基础知识
一、计算几何是研究什么的?
计算几何研究几何模型和数据处理的学科,讨论几何形体的计算机表示、分析和综合,研究如何方便灵活、有效地建立几何形体的数学模型以及在计算机中更好地存贮和管理这些模型数据。
二、计算几何理论中(或凸集中)过两点的一条直线的表达式,是如何描述的?与初中数学中那些直线方程有什么差异?有什么好处?
1、过两点的一条直线的表达式的描述:
假设两个点不相同:x1、x2,那么就有直线方程:y=θx1+(1−θ)x2
2、计算几何初中数学中那些直线方程有什么差异,有什么好处?
计算几何与平面几何(初高中学习)的区别就是维度的不一样,计算几何在平面的基础上添加了角度的维度,这意味着计算的复杂性提高了,但是计算的结果更加的广泛,更加的精确,更容易全方位的表达一条直线。
三、凸集是什么? 直线是凸集吗?是仿射集吗?
1、凸集是什么
在凸几何中,凸集(convex set)是在凸组合下闭合的仿射空间的子集。
在欧氏空间中,凸集是对于集合内的每一对点,连接该对点的直线段上的每个点也在该集合内。
例如,立方体是凸集,但是任何中空的或具有凹痕的例如月牙形都不是凸集。特别的,凸集,实数R上(或复数C上)的向量空间中,如果集合S中任两点的连线上的点都在S内,则称集合S为凸集。常见的凸集:单点集 ,空集,整个欧氏空间 Rn。
2、直线是凸集吗?
凸集是单点或一条不间断的线(包括直线、射线、线段),二、三维空间中的凸集就是直观上凸的图形。
由定义可知,直线是凸集。
3、直线是仿射集么?
仿射集亦称仿射流形、线性流形、仿射簇,是实线性空间中的一类子集。非空间射集 M 的维数定义为上述子空间 L 的维数。空集的维数定义为-1。维数分别为0、1,以及2的仿射集为点、直线和平面。
根据仿射集定义,当维数为1的仿射集为直线。
四、三维空间中的一个平面,如何表达?
假设三维的直线方程为:Ax+By+Cz+D=0
平面 Ax+By+Cz+D = 0 的法向量就是 x、y、z 的系数,也即(A,B,C)
求解A,B,C的值有三种方法:
(1)最原始的解法是根据已知的三个点,建立3个联合方程组,来消元
(2)高斯消元法
(3)克莱姆法则(适用于变量和方程数目相等)
五、更高维度的“超平面”,如何表达?
(1)超平面定义
超平面H是从n维空间到n-1维空间的一个映射子空间,它有一个n维向量和一个实数定义。因为是子空间,所以超平面一定过原点。
(2)高维度超平面的表达
在数学中,超平面(Hyperplane)是n维欧氏空间中余维度等于1的线性子空间。这是平面中的直线、空间中的平面之推广。
设F为域,其中:F=IR,则n维空间Fn中的超平面是由如下方程表示:a1x1+…+anxn=b
超平面H是从n维空间到n-1维空间的一个映射子空间,它有一个n维向量和一个实数定义。设d是n维欧式空间R中的一个非零向量,a是实数,则R中满足条件dX=a的点X所组成的集合称为R中的一张超平面。
六、什么是“凸函数”定义?什么是Hessen矩阵? 如何判别一个函数是凸函数?f(x)=x^3 函数是凸函数吗?
1、什么是“凸函数”定义?
任意两点的函数值的连线上的点都在曲线的上方,称为凸函数。
2、什么是Hessen矩阵?
Hessian Matrix(黑塞矩阵、海森矩阵、海瑟矩阵、海塞矩阵 etc.),它是一个多元函数的二阶偏导数构成的方阵,用以描述函数的局部曲率。黑塞矩阵最早于19世纪由德国数学家Ludwig Otto Hesse提出,并以其名字命名。Hessen矩阵常用于牛顿法解决优化问题。
如图所示就是一个Hessen矩阵:
3、 如何判别一个函数是凸函数?
(1)一元函数的判别
对于一元函数f(x)f(x),我们可以通过其二阶导数f′′(x)f″(x) 的符号来判断。如果函数的二阶导数总是非负,即f′′(x)≥0f″(x)≥0 ,则f(x)f(x)是凸函数
(2)多元函数的判别
对于多元函数f(X)f(X),我们可以通过其Hessian矩阵(Hessian矩阵是由多元函数的二阶导数组成的方阵)的正定性来判断。如果Hessian矩阵是半正定矩阵,则是f(X)f(X)凸函数
4、f(x)=x^3 函数是凸函数吗?
y=x^3函数如图:
可以看出,f(x)=x^3在x<0时为凸函数。
七、什么是“凸规划”?如何判别一个规划问题是凸规划问题。举例说明
若最优化问题的目标函数为凸函数,不等式约束函数也为凸函数,等式约束函数是仿射的,则称该最优化问题为凸规划。
凸规划的可行域为凸集,因而凸规划的局部最优解就是它的全局最优解。当凸规划的目标函数为严格凸函数时,若存在最优解,则这个最优解一定是唯一的最优解。
例:
m
i
n
:
f
(
x
1
,
x
2
,
x
3
)
=
2
x
1
2
z
+
x
2
2
+
2
x
3
2
min:f(x1,x2,x3) = 2x1^2z+ x2^2+2x3^2
min:f(x1,x2,x3)=2x12z+x22+2x32
s
.
t
=
{
g
1
(
x
)
=
x
2
+
x
2
2
−
x
3
≤
0
g
2
(
x
)
=
x
1
+
x
2
+
2
x
3
≤
16
g
3
(
x
)
=
−
x
1
−
x
2
+
x
3
≤
0
s.t= \begin{cases} g1(x)=x^2+x2^2-x3\leq 0\\ g2(x)=x1+x2+2x3\leq 16\\ g3(x)=-x1-x2+x3\leq 0 \end{cases}
s.t=⎩⎪⎨⎪⎧g1(x)=x2+x22−x3≤0g2(x)=x1+x2+2x3≤16g3(x)=−x1−x2+x3≤0
求解过程如下: