【发布时间】:2017-07-15 20:24:44
【问题描述】:
我正在使用 KNN 分类器对性别进行分类。 我想添加一个 SVM 分类器,而不是具有相同标签 0 和 1 的 KNN 分类器(女性为 0,男性为 1)
我有一个测试示例矩阵sample,一个训练示例矩阵training,以及一个带有训练示例标签的向量group。我想要class,测试示例的标签向量。
class = knnclassify(sample, training, group);
if class==1
x='Male';
else
x='Female';
end
如何更改此代码以使用 SVM 找到 class?
【问题讨论】:
-
你能描述一下你得到的错误或不想要的输出吗?一个可能的问题是,这段代码在第三行有一个不匹配的“end”。
-
您使用
knnclassify函数进行k-最近邻分类。如果你想使用 SVM 分类器,你需要使用fitcsvm和predict来训练你的 SVM 并对你的数据进行分类。 This tutorial 应该有帮助 -
您的代码 sn-p 令人困惑,因为它没有提供示例输入和输出,而且它不是有效代码。感谢您修剪代码以突出显示相关部分,但如果您能提供真实的MCVE,则更好。
-
在我链接的教程中,他们使用标签 {-1, 1},但 {0, 1} 也应该可以工作。
-
我已编辑您的问题以使用更简单的代码并有更清晰的问题陈述。
标签: matlab