LIBSVM在MATLAB/Octave中的应用 – libsvmread的输出是什么?

libsvmread命令的第二个输出是每个给定训练样本的一组特征。

例如,在以下MATLAB命令中:

[heart_scale_label, heart_scale_inst] = libsvmread('../heart_scale');

第二个变量(heart_scale_inst)包含了我无法理解的形式的内容,例如:

<1, 1> -> 0.70833

这意味着什么?如何使用它(我无法以这种形式绘制它)?

附言。如果有人能推荐一个好的LIBSVM教程,我将不胜感激。我还没有找到任何有用的资料,README文件也不是很清楚…谢谢。


回答:

对于初学者来说,LIBSVM的权威教程名为:实用SVM分类指南,可从LIBSVM作者的网站上获取。

返回的第二个参数称为实例矩阵。它是一个矩阵,我们称之为M,M(1,:)是数据点1的特征,依此类推。该矩阵是稀疏的,这就是为什么它打印出来的样子很奇怪。如果你想完全查看它,可以使用full(M)来打印。

[heart_scale_label, heart_scale_inst] = libsvmread('../heart_scale');

使用heart_scale_label和heart_scale_inst,你应该能够通过以下命令训练一个SVM:

mod = svmtrain(heart_scale_label,heart_scale_inst,'-c 1 -t 0');

我强烈建议你阅读上述链接的指南,了解如何设置c参数(以及在使用RBF核时可能需要设置的gamma参数),但上述代码行就是你如何使用这些数据进行训练的方法。

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注