文章目录

  • 引言
  • 第1章 Introduction
    • 凸优化问题
    • 最小二乘问题
    • 线性规划问题
    • 一个优化问题例子:最佳灯源问题
    • Chebyshev逼近问题,转化成线性规划
  • 参考资料

2020年我自己希望多看一些基础的理论知识,包括优化理论、微分方程等,重点先从Convex optimization开始看吧。另外,还会多写一些应用算法的基本知识,比如一些经典计算机视觉知识,以及一些新的NLP网络的概念知识。平时时间有限,加油吧!


引言

本系列是学习入门级convex optimization理论做的一些笔记,如果是大神请跳过和无视!主要参考的资料有:

1、非常经典的《Convex Optimization》,Stephen Boyd:其实这本书对我来说有点厚,本身做工程项目研发,太理论的知识用不上。学习这本书的主要目的是理解一下凸优化的基本概念,方便在读一些Paper的时候可以基本看懂理论部分在讲什么。我先计划学前面5章,有一个大概的了解就行。有一个课程:ECE236B - Convex Optimization (Winter Quarter 2019-20),课件基本上就是上面的书的课件,没什么差别,可以按照顺序去了解一些概念。

2、ECE236C - Optimization Methods for Large-Scale Systems (Spring 2019):上面课程的进阶版,可以查阅用,需要看什么技术点的时候查一下。

3、Convex Optimization: Fall 2019:Instructor: Ryan Tibshirani:主要看这个课程,也是这个系列的主要资料。个人感觉很好的一个课程。

4、Introductory Lectures on Convex Programming Volume I: Basic course,Yu. Nesterov:这个是一个优化的大牛写的经典材料,对我现在还用不上。推荐有理论功底的同学啃这本书。

在每一个章节开头,我会给出主要的参考资料来源。我写的顺序按我自己看的顺序写,不一定按照书来。

第1章 Introduction

本章节主要参考Boyd书课件的第一章,也就是ECE236B课程的第一章课件。课件内容是截图,我就不重新打了,下面都有文字描述理解。给一个基本的概念,有些不求甚解也问题不大(包括我哈~)。

优化问题的数学定义:f0f_0f0​是目标函数,fif_ifi​是不等式约束函数,如果对任意满足约束的向量zzz,有f0(z)≥f0(x∗)f_0(z) \geq f_0(x^*)f0​(z)≥f0​(x∗),那么称x∗x^*x∗为优化问题的最优解。

非作者注:general optimization problem是很难求解的,特别是非凸,以及带约束的优化问题求解,都是比较复杂的。我们现在常用的神经网络优化求解,大部分是无约束的非凸优化,即使一些有约束的问题,往往也是做一些放松,然后加到loss function里面去,看成一个整体function来求解。

凸优化问题

本书主要介绍凸优化问题,定义是:对于目标函数以及约束函数都是convex的优化问题,称为convex optimization问题。

本节简单介绍两个非常常用的凸优化例子:最小二乘问题和现行规划问题。

最小二乘问题

基本最小二乘问题特点是:没有约束条件(m=0m=0m=0),目标函数是若干项的平方和,每一项的形式是aiTx−bia_i^Tx-b_iaiT​x−bi​,写成矩阵形式:

这个就是基础线性回归模型,一般写成b=Axb= Axb=Ax,最小化目标是就是(求解是最基础的,E对x求导=0,得到x*):
min⁡xE=∣∣b−Ax∣∣2x∗=(ATA)−1ATy\min_x E=||b-Ax||^2 \\ x^* = (A^TA)^{-1}A^Ty xmin​E=∣∣b−Ax∣∣2x∗=(ATA)−1ATy

还有加权最小二乘问题,我们最小化加权的误差值:
∑i=1kwi(aiTx−bi)2\sum_{i=1}^k w_i (a_i^Tx - b_i)^2 i=1∑k​wi​(aiT​x−bi​)2
其中,加权系数wiw_iwi​均大于零,表示每一个子项的重要程度,在统计应用中,当给定的现行观测值包含不同方差的噪声时,我们用加权最小二乘来估计向量x。

在线性回归模型上加上一个变量的L2-norm,是一种常见的正则化技术:可以避免x的数值过大,过大时惩罚项会较大。最小化:
∑i=1k(aiTx−bi)2+ρ∑i=1nxi2x∗=(ATA+ρIn×n)−1ATy\sum_{i=1}^k (a_i^Tx - b_i)^2 + \rho\sum_{i=1}^n x_i^2 \\ x^* = (A^TA + \rho I_{n\times n})^{-1}A^Ty i=1∑k​(aiT​x−bi​)2+ρi=1∑n​xi2​x∗=(ATA+ρIn×n​)−1ATy

其中ρ>0\rho>0ρ>0。

线性规划问题


虽然线性规划问题一般没有解析解(也有叫做闭合解,closed form),却存在很多有效的求解方法,包括Dantzing的单纯形法以及内点法,(非作者注:这些都是很经典的优化方法,平时我也很难用到,先mark一下,后面有需要的时候找资料看,本CVX书后面算法部分重点介绍了内点法,似乎作者Stephen Boyd特别看重内点法)。

一个优化问题例子:最佳灯源问题

有m盏灯,要照亮n个板子,每一块板子的光照强度公式如下,是所有灯功率的一个加权和。

问题:在灯的功率限制范围内,达到给定光照强度IdesI_{des}Ides​,给出最接近的功率方案。

这个目标函数挺有意思,先max,后min——意思是说首先对每一个板子k都检查一下光照强度,是否偏离目标IdesI_{des}Ides​,偏离程度中最大的那一项,我们要最小化它的值,所以相当于我们要求每一个板子k的光照强度都尽可能地和目标IdesI_{des}Ides​接近。怎么解这个优化问题呢?



方法有很多,最后5是构造了一个凸优化问题,有了这个形式以后就可以用一些成熟的凸优化方法来求解,本章节不介绍。

非作者注:很多问题如何构造成一个凸优化问题往往是最难的,如果能构造出来,那么基本上就是认为可以比较容易求解了。

Chebyshev逼近问题,转化成线性规划

再给一个例子:


其实和上面点灯的例子很像,但又不完全一样。原始min-max问题可以认为是让现行回归的值aiTxa_i^TxaiT​x和bib_ibi​尽可能接近,因此引入一个误差的bound t,限制条件很容看到可以转化为
−t≤aiTx−bi≤t∣aiTx−bi∣≤t-t \leq a_i^Tx - b_i \leq t \\ | a_i^Tx - b_i | \leq t −t≤aiT​x−bi​≤t∣aiT​x−bi​∣≤t
虽然t∈Rt\in Rt∈R,但实际上我们可以看到t≥0t \geq 0t≥0,否则上面限制条件就不成立了。因此ttt和−t-t−t可以看成是aiTx−bia_i^Tx - b_iaiT​x−bi​的一个对称的上下界,我们最小化这个界,就是让值aiTxa_i^TxaiT​x和bib_ibi​尽可能接近,因此(1.6)和(1.7)是等价的。

第一章就是简单介绍,主要是一些概念,就讲到这里。下次是第二章。

参考资料

[1] Convex Optimization, Stephen Boyd, Lieven Vandenberghe
[2] ECE236B - Convex Optimization (Winter Quarter 2019-20)
[3] ECE236C - Optimization Methods for Large-Scale Systems (Spring 2019)

今天开始学Convex Optimization:引言、第1章基本概念介绍相关推荐

  1. 今天开始学Convex Optimization:第2章 背景数学知识简述

    文章目录 第2章 背景数学知识简述 2.1 数学分析和微积分基础 函数性质 集合Sets Norms 线性函数.仿射函数 函数的微分(导数) 2.2 线性代数基础 Matrix Subspaces 正 ...

  2. 机器学习与深度学习神器!凸优化(Convex Optimization)学习必备

    Boyd的Convex Optimization是神书,真的想搞科研可以学一下这个书,但这个书理论多,侧重凸分析的基础,花了非常长的篇幅介绍函数的凸性.对偶等,但在机器学习中,至少在刚入门不久的阶段这 ...

  3. Numerical Optimization和Convex optimization 两本书的选择?

    Numerical Optimization和Convex optimization 两本书的选择? - 知乎https://www.zhihu.com/question/49689245 Numer ...

  4. 实用线性代数和凸优化 Convex Optimization

    If not specified, the following conditions are assumed. X∈Rn∗mA∈Rm∗nX \in R^{n*m} \\ A \in R^{m*n} X ...

  5. 笔记:Tensor RPCA: Exact recovery of corrupted low-rank tensors via convex optimization

    Lu, C., et al., Tensor robust principal component analysis: Exact recovery of corrupted low-rank ten ...

  6. 对凸优化(Convex Optimization)的一些浅显理解

    ©作者 | 李航前 单位 | EPFL 研究方向 | 计算机图形学与三维视觉 最近学习了一些凸优化课程,整理笔记的同时写下一些自己的理解,向着头秃的道路上越走越远. 凸优化是应用数学的一个基本分支,几 ...

  7. 凸优化(convex optimization)第二讲:convex set

    Convex opt  第二讲(convex set) Affine set affine set 表示经过两点的一条线,这条线满足: 相较于后面我们要讨论的convex set,这里少了一些限制,是 ...

  8. Convex Optimization介绍

    最近在看Stephen Boyd的<Convex Optimization>,其中涉及不少数学知识和习题,在此整理一下阅读此书的学习笔记. 因为书上的记号比较详尽,所以在博客中仅摘取一些自 ...

  9. 读convex optimization (Stephen Boyd):最优化 最小二乘 线性规划 凸优化 非线性规划 (intro part)

    for all x, y ∈ Rn and all α, β ∈ R with α + β = 1, α ≥ 0, β ≥ 0. Since any linear program is therefo ...

最新文章

  1. 随想_8_Windows_XP_Explorer_错误
  2. 作为西二旗程序员,我是这样学习的.........
  3. 【广州.NET社区线下活动】云定未来 - Azure Meetup
  4. Delphi:对TNotifyEvent的理解
  5. 【Android基础】Fragment 详解之Fragment介绍
  6. SpringMVC+Spring4+Mybatis3集成,开发简单Web项目+源码下载
  7. __property 关键字的使用
  8. java字符串替换的问题
  9. Go接口(Interface)的使用方法
  10. TotalFinder for Mac(Finder增强工具)
  11. tomcat与java的版本_Tomcat JVM版本与JAVA_HOME不同
  12. 使用大量数据提高算法性能的前提条件
  13. c# opencv车牌识别_牛逼plus的springboot+maven车牌识别开源系统
  14. 石墨文档服务器版,石墨文档功能一览
  15. 《数据库与信息管理课程设计》
  16. android平板直连网线,平板电脑能不能连接网线上网
  17. [原创实践]redhat linux 5.3搭建Nexus
  18. 实时搜索引擎Elasticsearch(4)——Aggregations (聚合)API的使用
  19. 关心国事-周鸿祎离开雅虎真相 自称土鳖更喜欢创业
  20. 金融分析与风险管理——期权类型及到期时的盈亏

热门文章

  1. 手游图片素材提取_如果你想获得心爱手游中的图片素材,可以试试这款软件!...
  2. elixir添加erlang模块
  3. javascript脚本_JavaScript Shell脚本
  4. android usb单反相机,android mtp 获取单反相机中的照片
  5. 摄影毁一生单反穷三代顺口溜_什么?这点预算你竟买了一套摄影设备!
  6. linePlusBarChart(python -nvd3)
  7. Linux 0.01 源代码目录分布
  8. 看完这篇关于电池的高票回答 可防储能大忽悠
  9. Win7系统DNS服务器未响应的解决办法【系统天地】
  10. 李白《月下独酌-花间一壶酒》的UML建模