我想解决一个凸优化问题。我需要最小化(1/2)*(||W||^2)
. W是一个变量向量。这里还有一个约束:y(i)*(transpose(W)*x(i)+b)>=1
. 这是我们需要使用SVM来解决的问题。所以Y=[1;1;1;-1;-1]
。b 也是一个变量向量,它是截距项。我们需要找到最优的 W 和最优的 b 以使(1/2)*(||W||^2)
最小值。x(i) 是我们要分类的域中的点。
这是我编写的代码,但它是错误的。它只是行不通。
cvx_begin
variables W(2, 1) b(5, 1)
minimize( 0.5*(pow_cvx(norm(W, 2), 2, 2)) )
subject to
Y*(x*W+b) >= One
cvx_end