学习笔记-2-Review of Optimization-3-Quadratic
细节内容请关注微信公众号:运筹优化与数据科学
ID: pomelo_tree_opt
Quadratic optimization
之所以讲quadratic optimization,是因为SVM那些经常用到二次函数。尤其是那个norm的东西,ANN中的error/loss function最常用的是mean square error, 表现形式就是个二次的东西
---------------------------------------
两部分内容,quadratic function与quadratic models
Quadratic functions
Convex quadratic, nonconvex quadratic functions, 二次函数可以是凸的,也可以是凹的
Quadratic programming models
Linearly constrained quadratic program (LCoP) 线性约束的二次规划
Quadratically constrained quadratic program (QCQP) 二次约束的二次规划
-------------------------------------
(1) Quadratic functions
再写的稍微特殊一点,上面的M矩阵只是个方阵,这里的Q的一个symmetric matrix. symmetric的东西具有更多的特点。例如,对称矩阵的eigenvalue都是real实数,所以就可以通过eigenvalue来判断Q的性质,psd, pd, nsd, nd,那些,如果Q是半正定的,就意味着f函数是凸函数。
至于怎么把M变成Q,其实很简单,
------------------------------------------
第一条性质是由向量和矩阵的运算性质决定的。
至于一阶信息,每个点x不同,就不同,影响quadratic surface model, 每个地方的gradient也不同,不像linear function那样,一阶信息是个常数。
二阶信息,即“变化的变化”,就是Q,是个对称矩阵,eigenvalue are all real, 然后就可以判断psd, pd, nsd, nd那些,再判断quadratic function是凸的,还是非凸的。
------------------------------------------
(2) Graphs & contours of quadratic functions
第一个图是凸的,看等高线图,从里往外,从小到大。
第二个是个马鞍面,非凸非凹,也可以说是既凸又凹。等高线是个双曲线。
第三个是凹的。
这两个第一个就是非凸的,第二个是凸的。
大体上,直接看函数图像不太好确定是不是凸的,但是看等高线,就比较容易。凸的东西的等高线往往有个椭圆的形状,然后里面有个global optimum.
------------------------------------------
(3) Special symmetric matrices
上面是关于definite矩阵的定义,实际在使用时,都是用特征值来判断。
----------------------------------
(4) How quadratic functions come into picture?
这个两个点之间的距离,应该参考前面的vector norm与matrix norm. 对比起来看,会更直观一些
----------------------------------
(5) Linearly constrained QP (LCQP)
------------------------------------------
QP的primal 与 Dual
这个问题,如果没有Q的部分,就是标准的线性规划问题
Quadratic programming可以看作是linear programming的延伸
原来linear的P的目标函数上是加了一个quadratic term, 右边的D是减去了一个quadratic term. 而且Q会induce出来一些二阶信息,就是z.
D的约束其实是左边<=P的目标函数的梯度信息,分别是二阶信息(Q的部分)+一阶信息(c的部分).
这个认识角度很新颖。
------------------------------------------
Theorem: Strong duality holds for convex (QP).
Implications:
No duality gap!
Free choice of primal approach, dual approach, or primal-dual approach
对于凸二次规划问题,有强对偶性,也就是没有duality gap.
而且,从问题复杂度上来看,primal和dual的复杂度是一样的,都是quadratic problem.
------------------------------------------
Solution methods
一圈一圈的就是目标函数(二次函数)的等高线,多面体是约束可行域。
两者的交集,从图上看,左边的图是落在可行域的内部,右边的图是落在可行域的边上了。
实际上这个最优点有可能落在可行域内的任何一个点上。
Optimality may happen at any feasible point
Many solution methods
Conjugate gradient method
Preconditioned conjugate gradient method
Active set algorithm
Interior-point method (polynomial-time solvable)
-----------------------------------------
(6) Quadratically constrained QP (QCQP)
Convex QCQP (CQCQP)
注意这里是很多Q,不是只有一个矩阵。
When the governing matrices are positive semidefinite,
(QCQP) becomes a convex optimization problem.
大体意思应该是某些主要的matrix是半正定时,整个问题就是个凸优化的问题。
凸的QCQP问题等价于二阶锥问题,而二阶锥问题是线性锥优化问题的特殊形式。
内点法可以解SOCP问题,也就可以解CQCQP问题。
而对于nonconvex QCQP
Solution approaches for nonconvex QCQP
Linear conic programming (LCoP)
Second-order cone programming (SOCP)
Semidefinite programming (SDP) + relaxation
General nonlinear programming (NLP)
这部分一般用不到。
=============================
总结:
二次的东西,二次规划,可以是凸的,也可以是非凸的。取决于二次项的矩阵的性质。半正定的矩阵就意味着凸优化,而判断是否是半正定什么的,用矩阵的特征值就行。凸的二次规划是可以用求解器求解的,方法就是内点法。内点法是个polynomial time的算法,很厉害的东西。
之所以需要学习二次规划或者二次函数,是因为SVM,ANN中都需要用到二次函数的内容。两个超平面之间的距离就是个二次的形式。最主要是那些discrepancy, distance, loss, error等概念的度量方式,往往用2-norm,方便起见,往往再把2-norm的东西平方一下,就得到了二次函数的形式。
常提到的二次规划,约束条件是线性的,即LQCP. 如果约束条件中再出现二次的东西,就会变得很复杂,例如QCQP那些,这些往往没有专门好用的算法。
学习笔记-2-Review of Optimization-3-Quadratic相关推荐
- 英语学习笔记2019-11-22
英语学习笔记2019-11-22 Review the composition of a computer system 1. Hardware Control Unit -- instruction ...
- 强化学习笔记:PPO 【近端策略优化(Proximal Policy Optimization)】
1 前言 我们回顾一下policy network: 强化学习笔记:Policy-based Approach_UQI-LIUWJ的博客-CSDN博客 它先去跟环境互动,搜集很多的 路径τ.根据它搜集 ...
- 深度学习笔记(十四)—— 超参数优化[Hyperparameter Optimization]
这是深度学习笔记第十四篇,完整的笔记目录可以点击这里查看. 训练神经网络会涉及到许多超参数设置.神经网络中最常见的超参数包括: the initial learning rate lea ...
- 下载量过百万的吴恩达机器学习和深度学习笔记更新了!(附PDF下载)
今天,我把吴恩达机器学习和深度学习课程笔记都更新了,并提供下载,这两本笔记非常适合机器学习和深度学习入门.(作者:黄海广) 0.导语 我和同学将吴恩达老师机器学习和深度学习课程笔记做成了打印版,放在g ...
- 【李宏毅机器学习】Gradient Descent_1 梯度下降(p5、p6、p7 )学习笔记
李宏毅机器学习学习笔记汇总 课程链接 文章目录 Review Gradient Descent Tips Tip1: Tuning your learning rate 小心微调你的学习率 Tip 2 ...
- 不完全免疫算法简介MOIA-DCSS--AIS学习笔记8
不完全免疫算法简介MOIA-DCSS–AIS学习笔记8 觉得有用的话,欢迎一起讨论相互学习~ 多目标优化 A novel MOIA with a decomposition-based clonal ...
- 无人驾驶车辆路径规划及轨迹跟踪控制学习笔记(2)
目录 汇总 学习笔记 汇总 在关键交通场景中,轨迹规划和轨迹跟踪控制是自动驾驶车辆避免碰撞的两个关键.它不仅需要系统功能,而且需要强大的实时性. 我们集成了自动驾驶汽车的轨迹规划器和跟踪控制器,通过轨 ...
- 不完全免疫算法简介AIMA--AIS学习笔记7
不完全免疫算法简介AIMA–AIS学习笔记7 觉得有用的话,欢迎一起讨论相互学习~ 多目标优化 An adaptive MOIAs with multiple DE 参考文献 An adaptive ...
- LaTeX学习笔记(中文版使用)
下面是一篇优秀的LaTeX学习笔记, 转自: http://vincentme.org/post/LaTeX_study_note.php LaTeX LaTeX(LATEX,音译"拉泰赫& ...
- 斯坦福 密码学 I 学习笔记0:大纲
斯坦福密码学 I 学习笔记 本系列为斯坦福 Dan Boneh教授的"密码学 I"的学习笔记 课程网址: http://www.coursera.org/lecture/crypt ...
最新文章
- lightoj 1014
- SAP SD基础知识之流程概览
- uva 12508 - Triangles in the Grid(几何+计数)
- 关于EGE图形库在CodeBlocks下的配置
- 【电信增值业务学习笔记】3 语音类增值业务
- WN7 上IIS7运行asp+access网站出现错误: ADODB.Connection 错误 '800a0e7a'未找到提供程序。该程序可能未正确安装
- 用CPU计时器统计CUDA核函数的运行时间
- 学员参观IDC机房及实操实践活动
- fastdfs原理_搭建分布式文件系统FastDFS集群
- python中的isinstance()使用方法[探索2]
- latex 导出的pdf生成书签 目录
- [转载] 怎样彻底卸载anaconda?
- 超像素经典算法SLIC的代码的深度优化和分析
- 查看浏览器内核版本测试网站
- 简单说一下Flutter框架
- Excel不够用,快试试这款企业报表工具
- 开源 安卓项目汇总
- ubuntu16.04如何安装sougou拼音
- android删除mpeg2,如何指定在Android设备上的OUTPUT_FORMAT_MPEG2TS
- 在家做视频二次剪辑,一个短视频播放量40多万,收益有800多