最近接触了 ramp loss
这个loss 优劣参半, 很烦的就是这个函数它虽然连续和鲁棒,但是 不可微 非凸
DC分解 以及 CCCP规划 在这个问题上就蛮适用

下面的内容,主要来自:
参考网址1
参考网址2
以及一篇外刊
记录下来,方便学习。

CCCP规划,本质上是寻找两个凸函数之间梯度相同的两个点,即逐步减小两个函数之间的距离,使其收敛到距离最接近的点。
保留了目标函数的部分凸性,对非凸的部分进行线性化处理,进而通过迭代求解目标函数的一系列凸的子问题,进而得到原目标函数的驻点。

Convex-Concave procedure(凹凸过程)

CCCP是一种单调递减全局优化的方法。其形式可以表示为凸函数-凸函数 或者 凸函数+凹函数。

————————————

一、问题模型:DC(difference of convex)问题/规划

令f是一个DC函数,定义存在凸函数,g(x),h(x):Rn→Rg(x),h(x) :{R^{n}\rightarrow R}g(x),h(x):Rn→R,使得f可以被分解为g和h之间的差值:

对于DC问题:

在这里fi:Rn→R对于i=0,…,mf_i:R^n\rightarrow R对于{ i } = 0 , \dots , \mathbf { m }fi​:Rn→R对于i=0,…,m是一个可导的DC函数。本文探讨使用CCCP算法来优化这一问题
————————————

二、CCCP

假设一个能量函数E(x),其Hessian矩阵(二阶偏导矩阵)有界,y写成E(x)=Ecave(x)+Evex(x)E(x)=E_{cave}(x)+E_{vex}(x)E(x)=Ecave​(x)+Evex​(x)形式。

接下来证明该优化形式以及过程是收敛的:

证明:∀F(x) 是凸的,Hessian 矩阵F(\vec x) > 0,由于其Hessian矩阵有界,所以∃λ>0,Hessian矩阵E(x⃗)+λF(x⃗))>0,则E(x⃗)+λF(x⃗)是凸的。所以E(x)可以写成E(x)=E(x⃗)+λF(x⃗)+(−λF(x⃗))\exists\lambda>0,Hessian矩阵E(\vec x)+\lambda F(\vec x))>0,则E(\vec x)+\lambda F(\vec x)是凸的。所以 E(x)可以写成E(x) = E(\vec x)+\lambda F(\vec x) +(- \lambda F(\vec x))∃λ>0,Hessian矩阵E(x)+λF(x))>0,则E(x)+λF(x)是凸的。所以E(x)可以写成E(x)=E(x)+λF(x)+(−λF(x))

其次,对于一个函数E(x)=Ecave(x)+Evex(x)E(x)=E_{cave}(x)+E_{vex}(x)E(x)=Ecave​(x)+Evex​(x),则离散迭代CCCP算法x⃗t→X⃗t+1\vec {x}^t\rightarrow \vec{X}^{t+1}xt→Xt+1为:

证明收敛:如果函数Evex(⋅)和Ecave(⋅)E_{vex}(\cdot)和E_{cave}(\cdot)Evex​(⋅)和Ecave​(⋅)分别为凸函数和凹函数,下为证明和示意图。


图中表示为两个凸函数 上面假设为E1,下面为E2,,本质上寻找两个凸函数之间梯度相同的两个点就是在逐步减小两个函数之间的距离,使其收敛到距离最接近的点。首先在E2找到一个x0,寻找E1中与x0梯度相同的点,投影到E2上,一直重复下去,直到收敛到最小距离的点(图中为5.0)。

根据以上理论,凹凸问题相减问题可以得到解决。首先在这个算法中,应该设置初始点x_0,然后线性初始化凹陷部分函数,可以把x_{k+1}设置为上面凸函数的解,通过迭代优化进行收敛,找到全局最优点。
————————————

三 总结

在实际应用中,经常把两个函数利用线性约束/正则化写成两个凸函数相减的形式,进行优化。但是由于CCCP会有两层循环,一层优化 arg⁡min⁡θ(Evex(θ)+Ecav′(θi)⋅θ),\arg \min _ { \theta } \left( E _ { \mathrm { vex } } ( \theta ) + E _ { \mathrm { cav } } ^ { \prime } \left( \theta ^ { i } \right) \cdot \theta \right),argminθ​(Evex​(θ)+Ecav′​(θi)⋅θ),一层分别对凸函数进行梯度下降,程序速度会比较慢。

暂时就先采用这个思想去初步实现ramp loss, 如果有优化的话,后面在补充吧。

Convex-ConCave Procedure(CCCP) 凹凸规划 高效的问题分解求解方法相关推荐

  1. matlab变压器紧耦合,一种紧耦合高效llc谐振变压器的制造方法

    一种紧耦合高效llc谐振变压器的制造方法 [专利摘要]本发明公开了一种紧耦合高效LLC谐振变压器,包括磁芯不带气隙的环形主变压器,主变压器的初级线圈一端与输入辅助电感连接:主变压器的第二次级线圈两端分 ...

  2. 《高效团队开发工具与方法》

    一直以来都在用所谓的敏捷开发,但是也只是简单的说,用什么用什么,从开始感觉不方便,到后来感觉习惯了,可没有考虑过到底能带来什么改变,所以最近在上下班的地铁上在看完了<高效团队开发工具与方法> ...

  3. CNN可视化又添新作,南大开源Group-CAM:高效的显著图生成方法|CVPR2021

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者丨孙裕道 审稿丨邓富城 编辑丨极市平台 导读 最近南京大学的一篇论文收录于CVPR2021,该论文 ...

  4. asm 查看 数据文件 修改 时间_更高效的GMX分段模拟方法:修改tpr文件

    原标题:更高效的GMX分段模拟方法:修改tpr文件 ■2020-11-01 22:42:18 在以前的一篇文章中, 我简单说过基于GROMACS的分段模拟方法 [1] . 这种方法非常通用, 几乎能完 ...

  5. 【强化学习】表格型求解方法总结:基于表格型方法(Tabular Methods)的规划(Planning)和学习(Learning)

    前言: 本次笔记对<强化学习(第二版)>第八章进行概括性描述.同时,也对本书的第一部分(共三部分)表格型求解方法进行了系统性阐述. 以下概括都是基于我个人的理解,可能有误,欢迎交流:pip ...

  6. c语言最长良序字符串,C语言高效编程的4个方法

    规矩官迷绵密弄白名苑奴使配错.内情调理科创撤换怀化落选,点菜灵药猎手栗然丢失科讯,马弁股灾爬树赖氨吃劲安产,斜挂发麻挂红行期沸水母党捆包.硅钢酿酒遛鸟旁节媚外,平喘兴庆驱驰两造修鞋. 亮蓝小窖腌泡啷当 ...

  7. 我的世界服务器无限刷凋零,《我的世界》高效刷凋零骷髅的方法

    在<我的世界>里面,打怪也是游戏的乐趣之一,因为玩家可以根据自身的要求或者喜好来建造陷进刷怪,这也是这款游戏吸引玩家的地方,这部作品的信条就是没有做不到,只有想不到. 高效刷凋零骷髅的方法 ...

  8. 如何高效学习UI设计的方法

    哈喽,小伙伴们,又到了我们的UI设计经验分享时刻,今天我分享的是四个超实用的UI设计方法,初学者必备哦!快来看看吧.这几个UI设计方法是比较基础的那种,要是想学习更多有关UI设计的经验教程可以持续关注 ...

  9. 单片机串口高效收发数据的实现方法

    想学习单片机的同学可以关注.私信我或者在评论区回复我要入门.这一期我们探讨传统数据收发不足之后,如何使用带FIFO的串口来减少接收中断次数,通过一种自定义通讯协议格式,给出帧打包方法:之后介绍一种特殊 ...

最新文章

  1. 常见Jvm面试题总结及答案整理 120道(持续更新)
  2. 高性能key-value数据库
  3. Sql 行转列 STUFF
  4. ADSL提速 从入门到精通
  5. 【Java从入门到头秃专栏 】(三) 控制流程 Math Date DateFormat Calendar System BigDecimal Random
  6. abaqus分析用户手册单元卷_ABAQUS与你我的约定
  7. python opencv旋转图片_opencv3+python3进行图片旋转处理
  8. 机器学习算法一:K-近邻算法
  9. CodeForces - 816A Karen and Morning 解题
  10. Nvme协议固态装纯净win10系统
  11. selenium不定位元素直接操作键盘之Keys.CONTROL
  12. 利用Python脚本来使用Google自动翻译Excel表格文件
  13. word突然不能保存的解决方法
  14. pdf根据书签创建目录结构(方便查看各个主题的页码分布)pdf_xchange
  15. jrtplib下载地址
  16. Qlikview Data Modeling---Concatenation
  17. 前后端分离项目-易买网
  18. 通过加速度与磁力计计算方位角
  19. 资料搜集-JAVA系统的梳理知识5-JAVA基础篇JVM
  20. 2020CSP-S1初赛试卷

热门文章

  1. Ubuntu18.04下VScode调试方法
  2. VMware虚拟机网络设置简介
  3. 阿里云的内容识别技术可以实现哪些场景下的智能化应用?
  4. HTML基础语法入门
  5. 深度解析猎豹浏览器BIPS技术
  6. 杀毒软件在华的4次普及浪潮
  7. 2018ICPC徐州站赛后总结
  8. CK-FA012-2M分体式高频读写头|读头在刀具管理的应用与性能说明
  9. 江西博微-南昌航空大学校招双选会
  10. Stochastic Gradient Descend和mini batch SGD区别