我在 for 循环中训练一个 SVM,改变了我的实例的特性,我想绘制最终目标值与迭代的关系。我在 Matlab 中使用 LIBSVM,但在返回的模型中没有明确找到最终目标值。如何在每次交互中使用返回的模型计算最终目标值?
可以阅读 svmtrain 打印的脚本,但我想在没有这个技巧的情况下计算这个值。
PD 我有 C++ 的基本知识。
我修改了 svm.cpp 和 svm.h 以添加几行代码来返回目标值。
1) 在 svmmodel (svm.h) 和 decision_function (svm.cpp) 结构中添加新字段。
2)将si.obj复制到decision_function的新字段中。
3) 将decision_function 的字段catch 复制到svmmodel 结构的较新字段中(svm.cpp 中的svm_train 函数)。
4) 修改 svm_model_matlab.c 以接纳 svmmodel 结构中的新字段。
这真的很容易和直截了当。
我只能通过新文件给我发一封电子邮件,目的是:LIBSVM-ObjModification