python内置支持向量运算吗_在Python和Matlab中需要支持向量机的帮助吗

我是机器学习和Python的初学者。我试图在MATLAB和Python之间的数据比较中实现支持向量机。我希望得到类似的结果,但我没有。我试着找出我的类似问题,但没有任何或我错过了。在

我有一套训练和测试集是二元分类。

首先,我使用内置函数svmtrain和svmclassify在MATLAB中进行了实现。在load('sample.mat')

y_test = y_test';

y_train = y_train';

%% Training and Classification

svmStruct = svmtrain(X_train, y_train, 'boxconstraint', 0.1);

species = svmclassify(svmStruct, X_test);

%% Compute Accuracy

count = 0;

for i=1:length(X_test)

if species(i)==y_test(i)

count = count+1;

end

end

count/length(X_test)*100

%% Plotting

scatter(time, X_test, [], species)

hold on

y_test(y_test==1) = 0.03;

y_test(y_test==0) = -0.03;

plot(time, y_test, 'g')

这是测试集的结果(A类按红色分类,B类按蓝色分类,绿线是A类的实际标签

其次,我在Python中使用scikit学习包做了同样的事情。在

^{pr2}$

这是Python中的结果。黑线是它的门槛。红线是A类的实际标签

通过使用Python,似乎阈值太高了,甚至我试图调整C参数,但它根本不起作用。在

我现在不知道我的代码有什么问题。如有任何建议,我们将不胜感激

编辑

我在下面的链接中做了验证曲线。我想我做得对。

蓝线是Python的曲线。红线来自MATLAB。x轴是C参数,在[0.001 0.01 0.1 1 10 100](我用对数(x)),y轴是精度。在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值