I am Charmie

メモとログ

CVX

cvx

自分で試したわけじゃないけど,cvxは画像処理みたいに大きな問題には適してないらしい. くそ時間がかかって,イマイチな答えが返ってくると言ってる人がいた. 又聞きだけど.

L2ノルムとL1ノルムの違い

CVXを使って,L1ノルムとL2ノルムの違いをみてみる.もっと正確に言うと,L1ノルムでスパースな解が求まっているのかを確かめる.>> m=16;n=8;>> A=randn(m,n); b=randn(m,1);% L2 norm% Minimize |Ax-b|2% subject to |x|2>> cvx_begin>> variable x_l2(n);…

CVX: quickstart 5 An optimal trade-off curve

CVX: quickstart 5 An optimal trade-off curveMinimize |Ax-b|2+gamma|x|1% gamma is 10^{-2} to 10^{2}gamma = logspace( -2, 2, 20 );l2norm = zeros(size(gamma)); l1norm = zeros(size(gamma));for k = 1:length(gamma), cvx_begin variable x(n); mini…

CVX: quickstart 3 Other norms and functions

CVX: quickstart 3 Other norms and functionsChebyshevノルム(L∞ノルム)やL1ノルムの計算をMatLabのOptimization toolboxで行うにはlinprog関数を使うのだが,関数の引数がややこしい.それに比べると,CVXはnorm関数の引数を変更するだけなので,記述が簡…

CVX: quickstart 2 Bound-constrained Least squares

CVX: quickstart2 Bound-constrained Least squaresLeast squaresに制約条件を追加する.今回は上界と下界をminimize ||Ax-b||2subject to l<=x<=u m = 16; n = 8;A = randn(m,n); b = randn(m,1);bnds = randn(n,2);l = min( bnds, , 2 ); u = max( bnds, ,…

CVX: quickstart 1 Least squares

とゆーわけで,実際にCVXを触ってみる.examplesフォルダのquickstartをユーザガイドを見ながら実行していく.CVX: quickstart1 Least squares単純なLeast squares.これならx=A\b;と解いてもいけちゃう.minimize ||Ax-b||2m = 16; n = 8;A = randn(m,n);b …

CVX; Matlab Software for Disciplined Convex Programming

CVXのインストール @ Windows XP 32bitConvex optimizationを習得すべく,CVXのインストール.以下のページに行く.http://cvxr.com/cvx/downloadCVXのパッケージはzip形式で提供されてる(unix用にはtar.gzファイル).zipファイルの中にはプログラムファイル…