坐标上升算法(Coordinate Ascent)及C++编程实现

转载 2016年05月30日 15:15:18

坐标上升算法(Coordinate Ascent)及C++编程实现



编程实现:
  1. #include <iostream>  
  2. using namespace std;  
  3. #define f(x1,x2,x3) (-x1*x1-2*x2*x2-3*x3*x3+2*x1*x2+2*x1*x3-4*x2*x3+6)  
  4. int main()  
  5. {  
  6.     double x1=1;  
  7.     double x2=1;  
  8.     double x3=1;  
  9.     double f0=f(x1,x2,x3);  
  10.     double err=1.0e-10;  
  11.     while (true)  
  12.     {  
  13.         x1=x2+x3;  
  14.         x2=0.5*x1-x3;  
  15.         x3=1.0/3*x1-2.0/3*x2;  
  16.         double ft=f(x1,x2,x3);  
  17.         if (abs(ft-f0)<err)  
  18.         {  
  19.             break;  
  20.         }  
  21.         f0=ft;  
  22.     }  
  23.     cout<<"@author:郑海波 email:zhb931706659@126.com"<<endl;  
  24.     cout<<"\nmax{f(x1,x2,x3)}="<<f(x1,x2,x3)<<endl;  
  25.     cout<<"取得最大值时的坐标:\n(x1,x2,x3)=("<<x1<<","<<x2<<","<<x3<<")"<<endl;  
  26.     return 0;  
  27. }  

优化算法——坐标上升法

一、坐标上升法算法原理坐标上升法(Coordinate Ascent)每次通过更新函数中的一维,通过多次的迭代以达到优化函数的目的。假设需要求解的优化问题的具体形式如下:maxαW(α1,α2,⋯,α...
  • google19890102
  • google19890102
  • 2016年04月06日 15:00
  • 6145

SVM求解之坐标上升算法(Coordinate Ascent)

坐标上升算法(Coordinate Ascent) 坐标上升算法(Coordinate Ascent)及C++编程实现                             ...
  • lch614730
  • lch614730
  • 2013年12月01日 14:50
  • 1978

坐标上升算法(Coordinate Ascent)及C++编程实现

 坐标上升算法(Coordinate Ascent)及C++编程实现 编程实现: [cpp] view plain copy print?...
  • starzhou
  • starzhou
  • 2016年05月30日 15:15
  • 641

坐标下降法(坐标上升法)matlab程序

起因因为求解SVM的最牛算法SMO算法,使用的时坐标下降法的思路,所以学习一下这个算法。方法某函数包含多个自变量,需要求这个函数的最大或最小值时,可以应用此坐标下降法(最小值)或坐标上升法(最大值)。...
  • TaiJi1985
  • TaiJi1985
  • 2017年06月12日 20:28
  • 1321

坐标上升/下降算法

坐标下降(上升)法原理假设要求解下面的优化问题:在这里,我们需要求解m个变量αi,一般来说是通过梯度下降(这里是求最大值,所以应该叫上升)等算法来求解,每一次迭代对所有m个变量αi也就是α向量进行一次...
  • u010626937
  • u010626937
  • 2017年07月13日 10:14
  • 1368

坐标上升算法(Coordinate Ascent)及C++编程实现

坐标上升算法(Coordinate Ascent)及C++编程实现 编程实现: #include using namespace std; #define f(x1,...
  • NUPTboyZHB
  • NUPTboyZHB
  • 2012年12月20日 13:43
  • 6786

公开课机器学习笔记(15)支持向量机五 坐标上升法 SMO优化算法

3:SMO算法   a:坐标上升算法(coordinate assent algorithm) 由于种种原因,同时优化所有变量不太可能,为了得到全局最优,一次只优化一个变量,而保持其他变量不动的...
  • BlueLoveyyt
  • BlueLoveyyt
  • 2015年03月28日 15:56
  • 1679

支持向量机-坐标下降(上升)法

9 规则化和不可分情况处理(Regularization and the non-separable case) 我们之前讨论的情况都是建立在样例线性可分的假设上,当样例线性不可分时,我们可以尝...
  • vanlin5566
  • vanlin5566
  • 2013年06月06日 21:38
  • 2711

坐标上升法算法

坐标上升法(Coordinate Ascent)每次通过更新函数中的一维,通过多次的迭代以达到优化函数的目的。 假设需要求解的优化问题的具体形式如下: maxαW(α1,α2,⋯,...
  • zb123455445
  • zb123455445
  • 2017年11月01日 17:30
  • 107

一种适合于大数据的并行坐标下降法

在机器学习中,模型的训练是一个很重要的过程,它通常是对一个目标函数进行优化,从而获取模型的参数,比较常见的优化算法包括梯度下降法、牛顿法与拟牛顿法等。但在大数据的背景下,尤其对于并行实现来说,优化算法...
  • peghoty
  • peghoty
  • 2014年06月03日 23:43
  • 5660
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:坐标上升算法(Coordinate Ascent)及C++编程实现
举报原因:
原因补充:

(最多只允许输入30个字)