基于贝叶斯优化混合核支持向量机的回归方法

目前人工智能和深度学习越趋普及,构建一个回归或者分类模型十分容易,但是想要得到更好的精度却较为困难,其主要原因是模型超参数的选择。那么要想模型效果好,手动调参少不了,机器学习算法如SVM就有gamma、kernel、ceof等超参数要调,而神经网络模型有learning_rate、optimizer、L1/L2 normalization等更多超参数可以调优。目前大多数关于超参数选择的文献主要采用一些自动调参算法进行优化,比如Grid search(网格搜索)、Random search(随机搜索),还有Genetic algorithm(遗传算法)、Paticle Swarm Optimization(粒子群优化)等。

今天,本文基于MATLAB的libsvm库,首先构建基于RBF核函数与多项式核函数的混合核支持向量回归模型;其次,针对RBF的一个核参数g与多项式的两个核参数poly1与poly2,RBF核矩阵的权重w(POLY就是1-w),以及正则化系数共5个超参数,采用贝叶斯框架进行优化。最后与支持向量回归、混合核支持向量回归进行对比,采用贝叶斯优化的混合核支持向量回归具有最高的精度。

如下为poly和rbf的核矩阵。混合核就是用w*kernal_matrix1+(1-w)*kernal_matrix2 作为一个整体的核矩阵。因此w也是超参数之一。

function Kernel=ploy(input_t,input_p,poly)
%% 多项式核函数
a= input_t * input_p';    %求核矩阵
Kernel=(a+poly(1)).^poly(2);

function Kernel=rbf(input_t,input_p,g)
%% rbf核函数
len=size(input_t,1);
lenb=size(input_p,1);
phi=ones(len,lenb);
for jj=1:len
    for ii=1:lenb
        phi(jj,ii)=exp((-norm(input_t(jj,:)-input_p(ii,:)).^2)/(2*g^1));
    end
end
Kernel= phi;

2.结果

2.1 单核的支持向量机回归

2.2混合核支持向量机回归

2.3 贝叶斯优化混合核支持向量机

%% 选择要使用贝叶斯优化对哪些变量进行优化,并指定搜索范围。此外,指定变量是否为整数以及是否搜索对数空间中的区间。优化以下变量:
% rbf核的核参数rbf 范围是1e-3 1e3
% poly核的第一个核参数poly1 范围是1e-3 1e3
% rbf核的第二个核参数poly2 范围是1 10 ,幂是整数
% 正则化系数lambda 1e-3 1e3
% 组合核中rbf的权重w 0-1 ,poly是1-w
optimVars = [
    optimizableVariable('rbf',[1e-3 1e3])
    optimizableVariable('poly1',[1e-3 1e3])
    optimizableVariable('poly2',[1 10],'Type','integer')
    optimizableVariable('lambda',[1e-3 1e3])
    optimizableVariable('w',[0 1])];
% 使用训练数据和验证数据作为输入,为贝叶斯优化器创建目标函数。目标函数训练一个HKELM并返回对验证集的均方误差
ObjFcn = makeObjFcn(P_train,T_train,P_test,T_test);
BayesObject = bayesopt(ObjFcn,optimVars,...
    'MaxObj',10,...
    'MaxTime',0.5*60*60,...
    'IsObjectiveDeterministic',false,...
    'UseParallel',false);
% 加载在优化中找到的最佳网络及其验证准确度。
bestIdx = BayesObject.IndexOfMinimumTrace(end);
fileName = BayesObject.UserDataTrace{bestIdx};

支持向量机(SVM)是一种用于分类和回归分析的机器学习算法贝叶斯优化是一种用于自动调参的方法。因此,支持向量机贝叶斯调参是指使用贝叶斯优化方法来选择支持向量机中的超参数,如惩罚因子C和函数参数γ。 在支持向量机中,惩罚因子C控制着分类错误的惩罚程度,而函数参数γ则影响数据在高维特征空间的分布。选择合适的C和γ值对于构建准确的支持向量机模型至关重要。 贝叶斯优化通过对超参数的不断尝试和评估来找到最优的超参数组合。它基于贝叶斯理论,利用先验信息来指导搜索过程,在每次迭代中选择合适的超参数组合进行模型训练和评估。通过这种方式,贝叶斯优化可以更快地找到最优的超参数组合,提高模型的性能。 因此,支持向量机贝叶斯调参是通过贝叶斯优化方法来选择合适的惩罚因子C和函数参数γ,以提高支持向量机模型的性能和准确性。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [基于贝叶斯优化混合支持向量机回归方法](https://blog.csdn.net/qq_41043389/article/details/117113153)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [【轴承故障诊断】基于matlab贝叶斯优化支持向量机轴承故障诊断(西储数据)【含Matlab源码 2027期】](https://blog.csdn.net/TIQCmatlab/article/details/126273096)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

机器鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值