我正在尝试使用libsvm以编程方式为一个简单的xor问题训练一个svm来理解库的工作原理.问题(我认为)似乎是我错误地构造了svm_node; 也许我无法理解指针的整个指针.有人可以帮忙吗?我首先为xor问题构造一个矩阵,然后尝试将矩阵中的值赋给svm_node(我在这里使用2个步骤,因为我的实际数据将采用矩阵格式).
测试模型时,我得到的值不正确(总是-1).
在上一个问题中,我得到了参数C和gamma的帮助; 这些应该没问题,因为我使用其他代码得到了xor问题的正确分类.再次感谢Pedrom!
我在几个地方搜索了答案,例如自述文件和SvmToy示例; 然而,没有运气.
这是输出错误分类的代码......
提前致谢!
//Parameters---------------------------------------------------------------------
svm_parameter param;
param.svm_type = C_SVC;
param.kernel_type = RBF;
param.degree = 3;
param.gamma = 0.5;
param.coef0 = 0;
param.nu = 0.5;
param.cache_size = 100;
param.C = 1;
param.eps = 1e-3;
param.p = 0.1;
param.shrinking = 1;
param.probability = 0;
param.nr_weight = 0;
param.weight_label = NULL;
param.weight = NULL;
//Problem definition-------------------------------------------------------------
svm_problem prob;
//Length, 4 examples
prob.l = 4;
//x values matrix of xor values
QVector< QVector<double> >matrix;
QVector<double>row(2);
row[0] …Run Code Online (Sandbox Code Playgroud) 我正在寻找方法使Prolog程序"看起来"更像是第一顺序逻辑.我想要的东西是例如:
或者是否有其他软件已经实现了这一点?
提前致谢!
/ JC