基于极限学习机的自编码器(ELM-AE)

本文介绍了基于极限学习机的自编码器(ELM-AE)的原理和实验。ELM-AE通过随机生成的隐藏层参数实现输入到输出的复制,可用于数据的压缩、等维度表示和稀疏表达。实验部分展示了ELM-AE在单维数据自编码和图像编码还原上的效果,证明了其在低维度特征提取和图像重建方面的效能。
摘要由CSDN通过智能技术生成

基于极限学习机的自编码器(ELM-AE)

1.算法原理

ELM基础原理请参考:https://blog.csdn.net/u011835903/article/details/111073635。

自动编码器 AE(Auto Encoder)经过训练可以将输入复制到输出。因为不需要标记数据,训练自动编码器是不受监督的。因此,将AE的思想应用到ELM中,使ELM的输入数据同样被用于输出,即输出Y=X。作为自编码器的极限学习机ELM-AE网络结构如图1所示。

图1.ELM-AE网络结构图

图1.ELM-AE网络结构图

若图1中m>L ,ELM-AE实现维度压缩,将高维度数据映射成低维度特征表达;若 m=L,ELM-AE实现等维度的特征表达;若 m<L ,ELM-AE实现稀疏表达,即原始数据的高维特征表达。

综上,ELM-AE是一个通用的逼近器,特点就是使网络的输出与输入相同,而且隐藏层的输入参数 ( a i , b i ) (a_i,b_i) (ai,bi)​​随机生成后正交。正交化后的优点有:

(1)根 据 J-L(Johnson-Lindensrauss) 定理,权重和偏置正交化可以将输入数据映射到不同或等维度的空间,从而实现不同功能的特征表达。

(2)权重和偏置的正交化设计可以去除特征以外的噪声,使特征之间均匀,且更加线性独立进而增强系统的泛化能力。

ELM-AE的输出可以用如下表达式表示:
x j = ∑ i = 1 L β i G ( a i , b i , x j ) , a i ∈ R m , β i ∈ R m , j = 1 , 2 , . . . , N , a T a = I , b T b = 1 (1) x_j=\sum_{i=1}^L \beta_iG(a_i,b_i,x_j),a_i\in R^m,\beta_i\in R^m,j=1,2,...,N,a^Ta=I,b^Tb=1 \tag{1} xj=i=1LβiG(ai,bi,xj),aiRm,βiRm,j=1,2,...,N,aTa=I,bTb=1(1)
其中 a a a a i a_i ai组成的矩阵, b b b b i b_i bi​组成的向量。隐藏层的输出权重为:
β = ( H T H ) − 1 H T X \beta = (H^TH)^{-1}HTX β=(HTH)1HTX
其中, X = [ x 1 , . . . , x N ] X=[x_1,...,x_N] X=[x1,...,xN]是输入数据。

2.算法实验

2.1 利用ELM-AE对单维数据进行自编码

生成模拟数据:

data = sin(0:0.1:3.14);
data = data + data.^2 - data.^3;

设置ELM-AE参数如下:

ActiveF = 'sig';%设置激活函数
number_neurons = 2;%节点数

算法结果:

请添加图片描述

从结果来看,ELM-AE输出的数据的确跟原始数据非常接近。

2.2 利用ELM-AE对图像进行编码与还原

实验对象为经典cameraman图像,利用ELM-AE设置不同的节点数,观察经过网络后,得到图像与原始图像的差异。设置结点数范围为1-50。数据输入维度为:256x256。

设置不同的结点数的结果如下:

节点数为1时:

请添加图片描述
节点数为10时:

请添加图片描述

节点数为20时:
请添加图片描述

节点数为50时:

请添加图片描述
可以看到随着隐藏层节点数的增加,输出图像越来越逼近原始图像,利用仅仅50个节点,就可以使得图像跟原始图像非常接近,原始图像的维度为256,也就是说利用ELM-AE降维到50维时,编码还原后仍然能与原始图像接近。

3.参考文献

[1]颜学龙,马润平.基于深度极限学习机的模拟电路故障诊断[J].计算机工程与科学,2019,41(11):1911-1918.

4.Matlab代码

  • 3
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

智能算法研学社(Jack旭)

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

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

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

打赏作者

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

抵扣说明:

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

余额充值