支持向量机matlab代码程序
时间: 2023-10-18 10:32:05 浏览: 84
以下是一个简单的支持向量机(SVM)的MATLAB代码示例,该代码使用libsvm库:
```
% 加载数据
data = load('data.txt');
X = data(:, 1:2);
y = data(:, 3);
% 将数据分为训练集和测试集
[trainInd,testInd] = dividerand(size(X,1),0.7,0.3);
Xtrain = X(trainInd,:);
Ytrain = y(trainInd,:);
Xtest = X(testInd,:);
Ytest = y(testInd,:);
% 训练模型
model = svmtrain(Ytrain, Xtrain, '-s 0 -t 2 -c 1 -g 0.1');
% 预测测试集
[predict_label, accuracy, dec_values] = svmpredict(Ytest, Xtest, model);
% 输出结果
fprintf('Accuracy: %f\n', accuracy(1));
```
在上面的代码中,我们首先加载数据,然后将其分成训练集和测试集。我们使用libsvm库中的svmtrain函数来训练SVM模型,并使用svmpredict函数来预测测试集。最后,我们输出准确率。在此示例中,我们使用径向基函数(RBF)内核进行训练,参数C设置为1,参数gamma设置为0.1。
请注意,这只是一个简单的示例,您可能需要更改参数和内核函数以获得更好的性能。
阅读全文