[已解决] MATLAB支持向量机库函数使用问题

[复制链接]
ThewiseChang 发表于 2021-6-6 20:24:22
说明:
最近在做集创赛,设计了一个用HLS做了硬件加速的SVM模块,在用MATLAB仿真测试算法的时候发现一个问题:
先使用训练集训练了一个SVM模型,导出alpha,bias,支持向量和其对应标签(正负1):
像这样:
//
model = fitcsvm(x_ori_aud,y_ori_aud,"KernelFunction","rbf","KernelScale",Theta,"Solver","SMO","RemoveDuplicates",1);
alp_hud = model.Alpha;
x_cop_aud = model.SupportVectors;
y_cop_aud = model.SupportVectorLabels;
N_cop_aud = length(y_cop_aud);
b_cop_aud = model.Bias;
b_cob_aud = model.Beta;

//
然后就用自己写的决策函数和系统提供的predict预测值对比:
//
y_predict = predict(model,x_aud);% 预测
for i = 1:N_cop_aud
    destance(i)=sqrt((sum((x_cop_aud(i,:)-x_aud).^2)));
end
a1 = alp_hud'.*y_cop_aud'.*exp(-destance.^2/(2*Theta^2));
y_retun_number = sum(a1)+b_cop_aud;%求决策函数
y_result = double(y_retun_number > 0)-double(y_retun_number<=0);

//
结果发现:

无法理解,请问由大佬知道这是怎么回事吗?过两天就要交报告了,急。

1 条回复


ThewiseChang 发表于 7 天前
该问题已经解决
您需要登录后才可以回帖 登录 | 注册

本版积分规则

相关帖子
热门教程
站长推荐
快速回复 返回顶部 返回列表