✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。
🍎 往期回顾关注个人主页:Matlab科研工作室
🍊个人信条:格物致知,完整Matlab代码及仿真咨询内容私信。
🔥 内容介绍
极限学习机 (Extreme Learning Machine, ELM) 作为一种单隐层前馈神经网络 (Single-hidden Layer Feedforward Neural Network, SLFN),凭借其高效的学习速度和良好的泛化性能,在机器学习领域受到了广泛关注。然而,传统的ELM算法主要适用于监督学习任务,依赖于大量的带标签数据进行模型训练。在现实世界中,获取大量的带标签数据往往成本高昂且耗时费力,而未标记数据的获取则相对容易得多。因此,如何有效地利用大量的未标记数据来提升模型的性能,成为了机器学习领域的一个重要研究方向。半监督学习 (Semi-Supervised Learning, SSL) 和无监督学习 (Unsupervised Learning, USL) 作为两种有效利用未标记数据的策略,被广泛应用于各种机器学习算法中。将半监督学习和无监督学习的思想融入到ELM算法中,便催生了半监督极限学习机 (Semi-Supervised ELM, SS-ELM) 和无监督极限学习机 (Unsupervised ELM, US-ELM)。本文将深入探讨SS-ELM和US-ELM的理论基础、应用场景和面临的挑战,并展望其未来的发展方向。
一、 极限学习机 (ELM) 的基本原理
在深入讨论SS-ELM和US-ELM之前,首先需要简要回顾ELM的基本原理。ELM的核心思想是随机初始化隐层节点的权重和偏置,然后通过最小二乘法求解输出层的权重,从而实现模型的训练。其数学表达如下:
对于包含 N 个样本的训练数据集 {(x<sub>i</sub>, t<sub>i</sub>) | x<sub>i</sub> ∈ R<sup>d</sup>, t<sub>i</sub> ∈ R<sup>m</sup>, i = 1, ..., N},具有 L 个隐层节点的 ELM 模型可以表示为:
∑<sub>i=1</sub><sup>L</sup> β<sub>i</sub> g(w<sub>i</sub> · x<sub>j</sub> + b<sub>i</sub>) = o<sub>j</sub>, j = 1, ..., N
其中:
-
x<sub>j</sub> 是输入样本;
-
t<sub>j</sub> 是目标输出;
-
w<sub>i</sub> 是第 i 个隐层节点的输入权重向量;
-
b<sub>i</sub> 是第 i 个隐层节点的偏置;
-
g(·) 是激活函数;
-
β<sub>i</sub> 是第 i 个隐层节点的输出权重向量;
-
o<sub>j</sub> 是模型的输出。
可以将上述公式改写成矩阵形式:
Hβ = T
其中:
- H
是隐层输出矩阵,其第 (j, i) 个元素为 g(w<sub>i</sub> · x<sub>j</sub> + b<sub>i</sub>);
- β
是输出权重矩阵,其第 i 列为 β<sub>i</sub>;
- T
是目标输出矩阵,其第 j 列为 t<sub>j</sub>。
ELM的目标是找到一个输出权重矩阵 β,使得 ||Hβ - T|| 最小。通过最小二乘法,可以得到 β 的解析解:
β = H<sup>†</sup>T
其中,H<sup>†</sup> 是隐层输出矩阵 H 的 Moore-Penrose 广义逆。
ELM算法的优势在于其高效的学习速度,因为它避免了像传统神经网络那样的迭代优化过程。然而,ELM的性能在很大程度上取决于隐层节点的数量和激活函数的选择。
二、 半监督极限学习机 (SS-ELM)
半监督学习旨在利用少量带标签数据和大量未标记数据来提升模型的性能。SS-ELM将半监督学习的思想融入到ELM算法中,利用未标记数据的信息来改善模型的泛化能力。
常见的SS-ELM方法可以分为以下几类:
-
基于图的SS-ELM (Graph-based SS-ELM): 这类方法利用图结构来表示数据的相似性关系。将带标签和未标记数据都作为图的节点,并根据数据的相似性构建边。然后,通过在图上进行信息传播,将标签信息从带标签数据传递到未标记数据。常见的图构造方法包括K近邻图 (K-Nearest Neighbor Graph, KNN Graph) 和径向基函数图 (Radial Basis Function Graph, RBF Graph)。构建图之后,通常会引入一个正则化项,用于约束模型的输出在图上具有平滑性。也就是说,如果两个数据点在图上是相连的,那么它们的输出应该尽可能接近。数学上,这个正则化项可以表示为:
Ω = ∑<sub>i=1</sub><sup>N</sup> ∑<sub>j=1</sub><sup>N</sup> S<sub>ij</sub> ||o<sub>i</sub> - o<sub>j</sub>||<sup>2</sup>
其中,S<sub>ij</sub> 是节点 i 和节点 j 之间的相似度,o<sub>i</sub> 和 o<sub>j</sub> 是模型对数据点 i 和 j 的输出。
通过将这个正则化项加入到ELM的目标函数中,可以实现利用未标记数据来提升模型的性能。
-
基于聚类的SS-ELM (Clustering-based SS-ELM): 这类方法首先利用聚类算法将未标记数据划分为若干个簇,然后假设同一个簇中的数据具有相似的标签。基于这个假设,可以利用带标签数据的信息来预测未标记数据的标签。常见的聚类算法包括K均值聚类 (K-Means Clustering) 和谱聚类 (Spectral Clustering)。
-
自学习SS-ELM (Self-training SS-ELM): 这类方法是一种迭代式的半监督学习算法。首先,利用带标签数据训练一个初始的ELM模型。然后,利用该模型预测未标记数据的标签。将预测结果置信度高的未标记数据及其预测标签加入到带标签数据集中,重新训练ELM模型。重复这个过程,直到模型的性能不再提升或者达到预定的迭代次数。
SS-ELM的优势在于可以有效地利用未标记数据的信息,从而在带标签数据量较少的情况下,提高模型的泛化能力。但是,SS-ELM的性能在很大程度上取决于图的构造、聚类算法的选择和初始模型的训练。
三、 无监督极限学习机 (US-ELM)
无监督学习旨在从没有标签的数据中发现数据内在的结构和模式。US-ELM将无监督学习的思想融入到ELM算法中,利用ELM模型来提取数据的特征表示,并进行降维和聚类等任务。
常见的US-ELM方法可以分为以下几类:
-
自动编码器ELM (Autoencoder ELM): 自动编码器是一种常用的无监督学习模型,其目标是学习一个将输入数据编码成低维表示,然后从低维表示重构回原始数据的函数。自动编码器ELM利用ELM模型来实现自动编码器的功能。其基本思想是将输入数据作为ELM模型的输入和输出,然后训练ELM模型,使得模型的输出尽可能接近输入。通过训练,可以得到一个可以有效提取数据特征表示的ELM模型。
-
主成分分析ELM (Principal Component Analysis ELM, PCA-ELM): PCA是一种常用的降维算法,其目标是找到数据中方差最大的几个主成分,然后将数据投影到这些主成分上,从而实现降维。PCA-ELM利用ELM模型来实现PCA的功能。其基本思想是将输入数据作为ELM模型的输入,然后训练ELM模型,使得模型的输出尽可能接近输入的主成分。通过训练,可以得到一个可以有效提取数据主成分的ELM模型。
-
聚类ELM (Clustering ELM): 聚类是一种常用的无监督学习算法,其目标是将数据划分为若干个簇,使得同一个簇中的数据具有相似的特征。聚类ELM利用ELM模型来实现聚类的功能。其基本思想是将输入数据作为ELM模型的输入,然后训练ELM模型,使得模型的输出可以反映数据的簇结构。通过训练,可以得到一个可以有效进行聚类的ELM模型。
US-ELM的优势在于可以利用ELM模型的高效学习能力,快速地提取数据的特征表示,并进行降维和聚类等任务。但是,US-ELM的性能在很大程度上取决于ELM模型的结构和参数的选择。
四、 SS-US-ELM 的组合应用
将半监督学习和无监督学习的思想结合起来,可以进一步提升ELM模型的性能。一种常见的SS-US-ELM方法是首先利用US-ELM提取数据的特征表示,然后利用SS-ELM对提取的特征进行分类。例如,可以首先利用自动编码器ELM提取数据的低维表示,然后利用基于图的SS-ELM对提取的低维表示进行分类。这种方法可以有效地利用未标记数据的信息,并降低模型的复杂性。
另一种SS-US-ELM方法是利用SS-ELM预测未标记数据的标签,然后将预测结果作为US-ELM的输入,用于训练US-ELM模型。例如,可以首先利用自学习SS-ELM预测未标记数据的标签,然后利用这些预测标签训练一个自动编码器ELM,用于提取数据的特征表示。
⛳️ 运行结果
🎈 部分理论引用网络文献,若有侵权联系博主删除
👇 关注我领取海量matlab电子书和数学建模资料
🏆团队擅长辅导定制多种科研领域MATLAB仿真,助力科研梦:
🌈 各类智能优化算法改进及应用
生产调度、经济调度、装配线调度、充电优化、车间调度、发车优化、水库调度、三维装箱、物流选址、货位优化、公交排班优化、充电桩布局优化、车间布局优化、集装箱船配载优化、水泵组合优化、解医疗资源分配优化、设施布局优化、可视域基站和无人机选址优化、背包问题、 风电场布局、时隙分配优化、 最佳分布式发电单元分配、多阶段管道维修、 工厂-中心-需求点三级选址问题、 应急生活物质配送中心选址、 基站选址、 道路灯柱布置、 枢纽节点部署、 输电线路台风监测装置、 集装箱调度、 机组优化、 投资优化组合、云服务器组合优化、 天线线性阵列分布优化、CVRP问题、VRPPD问题、多中心VRP问题、多层网络的VRP问题、多中心多车型的VRP问题、 动态VRP问题、双层车辆路径规划(2E-VRP)、充电车辆路径规划(EVRP)、油电混合车辆路径规划、混合流水车间问题、 订单拆分调度问题、 公交车的调度排班优化问题、航班摆渡车辆调度问题、选址路径规划问题、港口调度、港口岸桥调度、停机位分配、机场航班调度、泄漏源定位
🌈 机器学习和深度学习时序、回归、分类、聚类和降维
2.1 bp时序、回归预测和分类
2.2 ENS声神经网络时序、回归预测和分类
2.3 SVM/CNN-SVM/LSSVM/RVM支持向量机系列时序、回归预测和分类
2.4 CNN|TCN|GCN卷积神经网络系列时序、回归预测和分类
2.5 ELM/KELM/RELM/DELM极限学习机系列时序、回归预测和分类
2.6 GRU/Bi-GRU/CNN-GRU/CNN-BiGRU门控神经网络时序、回归预测和分类
2.7 ELMAN递归神经网络时序、回归\预测和分类
2.8 LSTM/BiLSTM/CNN-LSTM/CNN-BiLSTM/长短记忆神经网络系列时序、回归预测和分类
2.9 RBF径向基神经网络时序、回归预测和分类
2.10 DBN深度置信网络时序、回归预测和分类
2.11 FNN模糊神经网络时序、回归预测
2.12 RF随机森林时序、回归预测和分类
2.13 BLS宽度学习时序、回归预测和分类
2.14 PNN脉冲神经网络分类
2.15 模糊小波神经网络预测和分类
2.16 时序、回归预测和分类
2.17 时序、回归预测预测和分类
2.18 XGBOOST集成学习时序、回归预测预测和分类
2.19 Transform各类组合时序、回归预测预测和分类
方向涵盖风电预测、光伏预测、电池寿命预测、辐射源识别、交通流预测、负荷预测、股价预测、PM2.5浓度预测、电池健康状态预测、用电量预测、水体光学参数反演、NLOS信号识别、地铁停车精准预测、变压器故障诊断
🌈图像处理方面
图像识别、图像分割、图像检测、图像隐藏、图像配准、图像拼接、图像融合、图像增强、图像压缩感知
🌈 路径规划方面
旅行商问题(TSP)、车辆路径问题(VRP、MVRP、CVRP、VRPTW等)、无人机三维路径规划、无人机协同、无人机编队、机器人路径规划、栅格地图路径规划、多式联运运输问题、 充电车辆路径规划(EVRP)、 双层车辆路径规划(2E-VRP)、 油电混合车辆路径规划、 船舶航迹规划、 全路径规划规划、 仓储巡逻
🌈 无人机应用方面
无人机路径规划、无人机控制、无人机编队、无人机协同、无人机任务分配、无人机安全通信轨迹在线优化、车辆协同无人机路径规划
🌈 通信方面
传感器部署优化、通信协议优化、路由优化、目标定位优化、Dv-Hop定位优化、Leach协议优化、WSN覆盖优化、组播优化、RSSI定位优化、水声通信、通信上传下载分配
🌈 信号处理方面
信号识别、信号加密、信号去噪、信号增强、雷达信号处理、信号水印嵌入提取、肌电信号、脑电信号、信号配时优化、心电信号、DOA估计、编码译码、变分模态分解、管道泄漏、滤波器、数字信号处理+传输+分析+去噪、数字信号调制、误码率、信号估计、DTMF、信号检测
🌈电力系统方面
微电网优化、无功优化、配电网重构、储能配置、有序充电、MPPT优化、家庭用电
🌈 元胞自动机方面
交通流 人群疏散 病毒扩散 晶体生长 金属腐蚀
🌈 雷达方面
卡尔曼滤波跟踪、航迹关联、航迹融合、SOC估计、阵列优化、NLOS识别
🌈 车间调度
零等待流水车间调度问题NWFSP 、 置换流水车间调度问题PFSP、 混合流水车间调度问题HFSP 、零空闲流水车间调度问题NIFSP、分布式置换流水车间调度问题 DPFSP、阻塞流水车间调度问题BFSP
👇