#include "ranksvmtn.h" #include #include"../tools/matrixIO.h" using namespace std; using namespace Eigen; const int maxiter = 10; const double prec=1e-3; int cg_solve(const MatrixXd &A, const VectorXd &b, VectorXd &x) { double alpha,beta,r_1,r_2; int step=0; VectorXd q; VectorXd res = b - A*x; VectorXd p = res; while (1) { // Non preconditioned version r_1 = res.dot(res); cout<0) sv(i,i)=1; else sv(i,i)=0; return 0; } // line search int line_search(const VectorXd &w,const double C,const VectorXd &step,VectorXd &pred,double &t) { return 0; } int RSVMTN::train(DataSet &D, Labels &label){ int iter = 0; MatrixXd A; // TODO Undefined int n=D.rows(); LOG(INFO) << "training with feature size:" << fsize << " Data size:" << n; MatrixXd sv=MatrixXd::Identity(n, n); VectorXd grad(fsize); VectorXd step(fsize); VectorXd pred(n); double obj,t; pred=VectorXd::Ones(n) - (A*(D*model.weight)); while (true) { iter+=1; if (iter> maxiter) { LOG(INFO)<< "Maxiter :"<