ELM极限学习实现汽油辛烷值预测(MATLAB)
什么是极限学习机?
极限学习机(ELM, Extreme Learning Machines)是一种前馈神经网络,最早由新加坡南洋理工大学黄广斌教授于2006年提出。该算法具有良好的泛化性能以及极快的学习能力
极限学习机和标准神经网络的区别
ELM 不需要基于梯度的反向传播来调整权重,而是通过 Moore-Penrose generalized inverse来设置权值。
标准的单隐藏层神经网络结构如下:
极限学习机
极限学习机是由Huang等[26]提出的一种特殊类型的单隐含层前馈神经网络.随机初始化其输入权值和偏置并得到对应的输入权重,在ELM模型的整个训练过程中并不需要对模型的各个参数进行调整,只需要对模型隐含层神经元的个数进行设置,最终就可以获得唯一的最优解[45].具有简洁高效,无需调参,训练学习速度较快等优点,其基本网络结构如图1所示.
图1 极限学习机基本结构
极限学习机模型的理论架构如下[26]:ELM模型包括输入层、隐含层和输出层,其中输入层的n个神经元分别与n个输入变量相对应,隐含层有l个神经元,输出层的m个神经元分别与m个输出变量相对应设隐含层神经元的激活函数为g(x),则ELM极限学习机的输出为
其中ωi=[ωi1,ωi2,...,ωin],xj=[x1j,x2j,...,xnj]T,ωi代表输入层神经元与隐含层神经元之间的连接权值,bi表示第i个神经元的偏差也即隐含层阈值. 式(8)也可以表示为Hβ=TT,其中H代表神经网络隐含层的输出矩阵,H的具体形式可以表示为
ELM实现汽油辛烷值预测实例
部分代码:
%%ELM极限学习实现汽油辛烷值预测
%% 训练集/测试集产生
clear all
clc
load xinwan_data.mat
% 随机产生训练集和测试集
temp = randperm(size(NIR,1));%打乱60个样本排序
disp(temp(1:50))
% 训练集——50个样本
P_train = NIR(temp(1:50),:)';
T_train = octane(temp(1:50),:)';
% 测试集——10个样本
P_test = NIR(temp(51:end),:)';
T_test = octane(temp(51:end),:)';
N = size(P_test,2);%% 数据归一化% 训练集
%% 这里函数的作用就是对p_train数据进行归一化处理
[Pn_train,inputps] = mapminmax(P_train);
Pn_test = mapminmax('apply',P_test,inputps);
% 测试集
%% 这里函数的作用就是对T_train数据进行归一化处理
[Tn_train,outputps] = mapminmax(T_train);
Tn_test = mapminmax('apply',T_test,outputps);%% ELM创建/训练
[IW,B,LW,TF,TYPE] = elmtrain(Pn_train,Tn_train,30,'sig',0);%% ELM仿真测试
tn_sim = elmpredict(Pn_test,IW,B,LW,TF,TYPE);
% 反归一化
T_sim = mapminmax('reverse',tn_sim,outputps);
实验共选取60个样本,将50个样本作为训练,10个样本作为测试,测试结果如下图所示:
读者可根据自己的需求更换数据进行测试,代码亲测有效。
完整代码请见详情:
ELM极限学习实现汽油辛烷值预测(MATLAB)相关推荐
- 《MATLAB智能算法30个案例》:第25章 有导师学习神经网络的回归拟合——基于近红外光谱的汽油辛烷值预测
<MATLAB智能算法30个案例>:第25章 有导师学习神经网络的回归拟合--基于近红外光谱的汽油辛烷值预测 1. 前言 2. MATLAB 仿真示例 3. 小结 1. 前言 <MA ...
- matlab里BP神经网络实现实例2汽油辛烷值预测
一.引入 1.首先得到数据,比如数据是从exce导入,也可以是现成的.mat文件.60组汽油样品,利用傅里叶近红外变换光谱仪对其进行扫描,扫描范围900~1700nm,扫描间隔2nm,每个样品的光谱曲 ...
- matlab光谱实验,实验四Matlab神经网络及应用于近红外光谱的汽油辛烷值预测
. 实验四Matlab神经网络以及应用于汽油辛烷值预测 一.实验目的 1. 掌握MATLAB创建BP神经网络并应用于拟合非线性函数 2. 掌握MATLAB创建REF神经网络并应用于拟合非线性函数 3. ...
- 有监督学习神经网络的回归拟合——基于红外光谱的汽油辛烷值预测(Matlab代码实现)
目录 1 概述 2 部分运行结果 3 Matlab代码实现 4 参考文献 1 概述 红外光谱法(IR)属于分子振动光谱技术,波数范围在4000cm-1-400cm-1之间,它的原理是基于分子中各类官能 ...
- BP神经网络实现汽油辛烷值预测,《MATLAB源码+数据集》
发展背景 在人工神经网络的发展历史上,感知机(Multilayer Perceptron,MLP)网络曾对人工神经网络的发展发挥了极大的作用,也被认为是一种真正能够使用的人工神经网络模型,它的出现曾掀 ...
- BP神经网络——基于近红外光谱的汽油辛烷值预测
BP神经网络--基于近红外光谱的汽油辛烷值预测 问题描述 获取数据 解题思路及步骤 1.产生训练集/测试集 2.创建/训练BP神经网络及仿真测试 3.性能评价 4.绘图 Matalab代码 问题描述 ...
- 组合预测模型 | PSO-ELM、ELM极限学习机数据回归预测对比(Matlab程序)
组合预测模型 | PSO-ELM.ELM极限学习机数据回归预测对比(Matlab程序) 目录 组合预测模型 | PSO-ELM.ELM极限学习机数据回归预测对比(Matlab程序) 预测结果 基本介绍 ...
- RBF神经网络——基于近红外光谱的汽油辛烷值预测
RBF神经网络--基于近红外光谱的汽油辛烷值预测 问题描述 辛烷值是汽油最重要的品质指标,传统的实验室检测方法存在样品用量大.测试周期长和费用高等问题,不适用与生产控制,特别是在线测试,近红外光谱分析 ...
- 有导师学习神经网络的回归拟合——基于近红外光谱的汽油辛烷值预测
文章目录 一.理论基础 1.BP神经网络概述 2.RBF神经网络概述 二.案例背景 1.问题描述 2.解题思路与步骤 三.MATLAB程序实现 1.产生训练集/测试集 2.创建/训练BP神经网络及仿真 ...
最新文章
- .net使用memcached
- [导入]Actual Windows Manager 3.7
- Django用法(一)
- OpenCASCADE:Android交叉编译 OCCT库
- java获取list redis_【快学springboot】14.操作redis之list
- CodeForces - 1452E Two Editorials(二阶差分)
- debug idea js_IntelliJ IDEA 配置chrome插件调试js代码 - 狂奔的熊二 - 博客园
- python Scrapy爬取天气预报,零基础的你也可以快速上手
- set获取元素_C++与STL入门(4):关联容器:集合set
- 智能优化算法:算术优化算法-附代码
- JavaScript 验证统一社会信用代码/营业执照注册号
- Ubuntu系统基本操作
- jquery仿百度AI官网banner图片代码
- 基于networkx的《人民的名义》人物关系图
- 计算机桌面文件如何发送给qq好友,QQ怎么与好友分享屏幕 如何共享电脑屏幕给好友...
- linux上的两种可执行程序
- Python编程从入门到实践第五章部分习题
- python PIL将图片转换成九宫格拼图样式
- 三层架构中网关在核心与汇聚的区别和实验
- python 字符画