基于哈里斯鹰算法优化混合核极限学习机(HKELM)的分类问题求解

基于哈里斯鹰算法优化混合核极限学习机(HKELM)的分类问题求解

1.HKELM原理

核极限学习机(KELM)是一种单隐含层前馈 神经网络,通过引入核函数改善极限学习机(ELM) 性能,其输出可表示为:
f ( x ) = h ( x ) H U ( Z C + H H U ) − 1 U = [ K ( x , x 1 ) ⋮ K ( x , x N ) ] U ( Z C + W ELM  ) − 1 U \begin{aligned} & f(x)=h(x) H^U\left(\frac{Z}{C}+H H^U\right)^{-1} U \\ & =\left[\begin{array}{c} K\left(x, x_1\right) \\ \vdots \\ K\left(x, x_N\right) \end{array}\right]^{\mathrm{U}}\left(\frac{Z}{C}+W_{\text {ELM }}\right)^{-1} U \end{aligned} f(x)=h(x)HU(CZ+HHU)1U= K(x,x1)K(x,xN) U(CZ+WELM )1U

式中: x x x —样本数据; f ( x ) f(x) f(x) —模型输出; h ( x ) h(x) h(x) —隐含层输人; H H H —特征映射矩阵; C C C —正则化参数; Z Z Z —单位矩阵; U U U —训练集目标向量; K ( x 0 K\left(x_0\right. K(x0 x p )   \left.x_p\right) ~ xp)  一核函数; W E L M W_{E L M} WELM 一核矩阵。

目前常用的核函数主要有线性、多项式、径向基、Sigmoid 等核函数。文章基于局部核函数 R B F R B F RBF 和全局核函数 Poly 构建具有更好性能的混合核函数,使 KELM 拥有全局和局部两方面的优秀性能,RBF 与 Poly 函数描述如下:

K R B F ( x 0 , x p ) = exp ⁡ ( − ∥ x 0 − x p ∥ 2 / σ 2 ) K Poly  ( x 0 , x p ) = ( x 0 , x p + c 1 ) d \begin{gathered} K_{R B F}\left(x_0, x_p\right)=\exp \left(-\left\|x_0-x_p\right\|^2 / \sigma^2\right) \\ K_{\text {Poly }}\left(x_0, x_p\right)=\left(x_0, x_p+c_1\right)^d \end{gathered} KRBF(x0,xp)=exp(x0xp2/σ2)KPoly (x0,xp)=(x0,xp+c1)d

式中: s − R B F s-R B F sRBF 核函数参数; c 1 、 d − P o l y c_1 、 d-P o l y c1dPoly 核函数参数。
由于 HKELM 是基于不同核函数的 KELM 线性组合,因此,基于 RBF、Poly 线性组合的混合核函数描述为:
K H ( x 0 , x p ) = S K R B F ( x 0 , x p ) + ( 1 − S ) K P o b ( x 0 , x p ) K_H\left(x_0, x_p\right)=S K_{R B F}\left(x_0, x_p\right)+(1-S) K_{P o b}\left(x_0, x_p\right) KH(x0,xp)=SKRBF(x0,xp)+(1S)KPob(x0,xp)

式中: K H ( x 0 , x p ) K_H\left(x_0, x_p\right) KH(x0,xp) 一混合核函数; s − R B F s-R B F sRBF 核函数参数权重系数; K R B F ( x 0 , x p ) K_{R B F}\left(x_0, x_p\right) KRBF(x0,xp) K Poly  ( x 0 , x p ) K_{\text {Poly }}\left(x_0, x_p\right) KPoly (x0,xp) 一 RBF、Poly核函数。

K H ( x 0 , x p ) K_H\left(x_0, x_p\right) KH(x0,xp) 代人输出函数可得到 HKELM模型。

2.分类问题求解

本文对乳腺肿瘤数据进行分类。采用随机法产生训练集和测试集,其中训练集包含 500 个样本,测试集包含 69 个样本 。

3.基于哈里斯鹰算法优化的HKELM

哈里斯鹰算法原理请参考:https://blog.csdn.net/u011835903/article/details/108528147
由前文可知,KHELM参数设置具有满目性。本文利用哈里斯鹰算法对HKELM相关参数进行优化。适应度函数设计为训练集的误差的MSE:
f i t n e s s = 2 − A c c u r a c y ( t r a i n ) − A c c u r a c y ( t e s t ) fitness=2-Accuracy(train)-Accuracy(test) fitness=2Accuracy(train)Accuracy(test)

适应度函数为,训练集和测试集(验证集)的分类错误率,分类错误率越低,代表分类正确率越高。

4.实验结果

文对乳腺肿瘤数据进行分类。采用随机法产生训练集和测试集,其中训练集包含 500 个样本,测试集包含 69 个样本 。

%% 导入数据
load data.mat
% 产生训练集/测试集
a = 1:569;
Train = data(a(1:500),:);
Test = data(a(501:end),:);
% 训练数据
P_train = Train(:,3:end);
T_train = Train(:,2);
% 测试数据
P_test = Test(:,3:end);
T_test = Test(:,2);

请添加图片描述

请添加图片描述

请添加图片描述

5.Matlab代码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

智能算法研学社(Jack旭)

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

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

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

打赏作者

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

抵扣说明:

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

余额充值