当前位置: 首页 > news >正文

预测算法|改进粒子群算法优化极限学习机IDM-PSO-ELM

回归拟合:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

分类

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

本文是作者的预测算法系列的第四篇,前面的文章中介绍了BP、SVM、RF及其优化,感兴趣的读者可以在作者往期文章中了解,这一篇将介绍——极限学习机

过去的几十年里基于梯度的学习方法被广泛用于训练神经网络,如BP算法利用误差的反向传播来调整网络的权值.然而,由于不适当的学习步长,导致算法的收敛速度非常慢,容易产生局部最小值,因此往往需要进行大量迭代才能得到较为满意的精度.这些问题,已经成为制约其在应用领域发展的主要瓶颈.

Huang等人[1] 提出了一种简单高效的单隐层前馈神经网络学习算法,称为极限学习机(extremelearning machine,ELM).其典型优势是训练的速度非常快,具有训练速度快、复杂度低的优点,克服了传统梯度算法的局部极小、过拟合和学习率的选择不合适等[2]问题,目前被广泛地应用于模式识别、故障诊断、机器学习、软测量等领域。

00目录

1 标准极限学习机ELM

2 代码目录

3 ELM的优化实现

4 源码获取

5 展望

参考文献

01 标准极限学习机ELM

1.1 ELM原理

给定一数据集:T={(x1,y1),…,(xl,yl)},其中xi∈Rn,y∈R,i=1,…,l;含有 N 个隐层节点,激励函数为 G 的极限学习机回归模型可表示为:在这里插入图片描述

其中:bi 为第 i 个隐层节点与输出神经元的输出权值;ai为输入神经元与第 i 个隐层节点的输入权值;bi为第 i 个隐层节点的偏置;h(x)=[G(a1,b1,x1),…,(aN,bN,xN)]称为隐层输出矩阵。并且ai,bi在训练开始时随机选择,且在训练过程中保持不变。输出权值可以通过求解下列线性方程组的最小二乘解来获得:在这里插入图片描述

该方程组的最小二乘解为:在这里插入图片描述

其中, H+称为隐层输出矩阵H的 Moore-Penrose 广义逆.

1.2 ELM优化

由于 ELM 随机给定输入权值矩阵和隐含层偏差,由1.1节中的计算式可知输出权值矩阵是由输入权值矩阵和隐含层偏差计算得到的,可能会存在一些输入权值矩阵和隐含层偏差为 0,即部分隐含层节点是无效的. 因此在某些实际应用中,ELM 需要大量的隐含层节点才能达到理想的精度. 并且 ELM 对未在训练集中出现的样本反应能力较差,即泛化能力不足。针对以上问题可利用优化算法和极限学习机网络相结合的学习算法,即利用优化算法优化选择极限学习机的输入层权值和隐含层偏差,从而得到一个最优的网络[3].

对于ELM优化,以PSO优化ELM为例,其流程如下所示:在这里插入图片描述

02 代码目录

本文以改进的动态多种群粒子群算法优化ELM,并与标准粒子群算法优化ELM和ELM算法进行对比。

改进的动态多种群粒子群优化算法(IDM-PSO)

分类问题:

其中,IDM_PSO_ELM.m、MY_ELM_CLA.m和PSO_ELM.m都是可独立运行的主程序.而result.m可用于对比这三个算法的效果,若想对比算法,单独运行这个程序即可。

部分源码如下:在这里插入图片描述

回归拟合问题:在这里插入图片描述

回归拟合的程序和分类的类似,这里不再重复。

部分源码:
在这里插入图片描述

03 极限学习机及其优化的预测结果对比

3.1 回归拟合

应用问题为多输入单输出问题。

3.1.1 评价指标

为了验证所建模型的准确性和精度,分别采用均方根差(Root Mean Square Error,RMSE) 、平均绝对百分误差( Mean Absolute Percentage Error,MAPE)和平均绝对值误差( Mean Absolute Error,MAE) 作为评价标准。在这里插入图片描述

式中 Yi 和Y ^ i分别为真实值和预测值; n 为样本数。

3.1.2 仿真结果
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

可以看出,优化是有效的。

3.2 分类

3.2.1 评价指标

为验证模型准确率,本文从混淆矩阵、准确率、精确率、召回率、F1-score这些方面进行衡量。

1、混淆矩阵

混淆矩阵是一种可视化工具,混淆矩阵的每一列代表的是预测类别,其总数是分类器预测为该类别的数据总数,每一行代表了数据的真实类别,其总数是该类别下的数据实例总数。主对角线的元素即为各类别的分类准确的个数,通过混淆矩阵能够直观地看出多分类模型的分类准确率。

2、准确率

最为简单判断 SVM 多分类效果的方法就是用以下公式进行准确率r 的计算
在这里插入图片描述

其中 ncorrect代表正确分类的样本个数, N代表测试集中的样本总数。

3、精确度

精度计算的是正类预测正确的样本数,占预测是正类的样本数的比例,公式如下
在这里插入图片描述

其中,TP表示的是正样本被预测为正样本的个数,FP表示的是负样本被预测为 正样本的个数。

4、召回率

召回率计算的是预测正类预测正确的样本数,占实际是正类的样本数的比例,公式如下:
在这里插入图片描述

其中, FN 表示的是正样本被判定为负样本的个数。

5、F1-score

F1- score是精度和召回率的调和平均值, F1- score越高说明模型越稳健,计算公式为
在这里插入图片描述

6、宏平均(macro-averaging)

宏平均(macro-averaging)是指所有类别的每一个统计指标值的算数平均值, 也就是宏精确率(macro - precision),宏召回率( macro -recall ),宏 F1 值 (macro- F1 score),其计算公式如下:
在这里插入图片描述

3.2.2 仿真结果
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

对于分类问题仍然有效,需要注意的是因为某些类别并没有存在预测值,因此由精确率和F1的计算式可知会出现NaN。

04 源码获取

关注作者或私信

05 展望

本文介绍了应用改进的动态多种群粒子群算法优化ELM的案例,同样也可以采用作者前面提到过的麻雀算法等,同时,极限学习机因其在处理大规模数据时出现的无法收敛等问题,出现了核极限学习机、多核极限学习机、深度极限学习机等变体,作者后续也会更新这些算法的实现。

参考文献

[1]Huang G B,Zhu Q Y,Siew C K. Extreme learning machine:A new learning scheme of feedforward neural networks//Proceedings of the 2004 1EEE International Joint Conferenceon Neural Networks. Budapest,Hungary,2004:985-990

[2]FAN Shu-ming,QIN Xi-zhong,JIA Zhen-hong,et al.Time series forecasting based on ELM improved layered ensemble architecture[J].Computer Engineering and Design,2019,40(7):1915-1921.

[3]王杰,毕浩洋.一种基于粒子群优化的极限学习机[J].郑州大学学报(理学版),2013,45(01):100-104.

另:如果有伙伴有待解决的优化问题(各种领域都可),可以发我,我会选择性的更新利用优化算法解决这些问题的文章。

如果这篇文章对你有帮助或启发,可以点击右下角的赞(ง •̀_•́)ง(不点也行),若有定制需求,可私信作者。

相关文章:

预测算法|改进粒子群算法优化极限学习机IDM-PSO-ELM

回归拟合: 分类 本文是作者的预测算法系列的第四篇,前面的文章中介绍了BP、SVM、RF及其优化,感兴趣的读者可以在作者往期文章中了解,这一篇将介绍——极限学习机 过去的几十年里基于梯度的学习方法被广泛用于训练神经网络&am…...

小黑子—JavaWeb:第六章 - Filter、Listener、AJAX与JSON

JavaWeb入门6.0 1. Filter1.1 Filter快速入门1.2 Filter执行流程1.3 Filter拦截路径配置1.4 Filter过滤器链1.5 案例登录验证 2. Listener2.1 ServletContextListener使用 3. AJAX3.1 AJAX 快速入门3.2 案例 验证用户名是否存在3.3 Axios 异步框架3.3.1 Axios 快速入门3.3.2 Ax…...

STM32 LL库开发

一、STM32开发方式 标准库开发:Standard Peripheral Libraries,STDHAL库开发:Hardware Abstraction Layer,硬件抽象层LL库开发:Low-layer,底层库 二、HAL库与LL库开发对比 ST在推行HAL库的时候,…...

标记垃圾,有三种色彩:四千长文带你深入了解三色标记算法

🔭 嗨,您好 👋 我是 vnjohn,在互联网企业担任 Java 开发,CSDN 优质创作者 📖 推荐专栏:Spring、MySQL、Nacos、Java,后续其他专栏会持续优化更新迭代 🌲文章所在专栏&…...

277/300 React+react-router-dom+Vite 二级页面刷新时,白屏问题解决

(一)方案 BrowserRouter 换为 HashRouter (二)代码 import routes from ./routes import {ReactElement, Suspense} from react import {createHashRouter, Navigate} from react-router-dom // 生成路由数据 const generateR…...

如何做线上监控

1、背景 软件的质量是需要全生命周期进行关注的,在生产环境下QA的活动就是测试右移,测试右移最关键的手段就是线上监控,也是至关重要的一个环节,可以通过技术的手段,提前感知到线上问题和风险,先于用户提前发现问题,提升服务可感知性,从而降低客户投诉。 2、通用原则…...

饥荒开服教程——游戏

饥荒开服教程——游戏 1. 开服环境2. 开服步骤2.1 创建集群2.2 安装服务端2.3 上传mod2.4 启动脚本2.5 上传地图2.6 设置访问令牌2.7 修改配置 3. 服务器命令3.1 关闭服务器3.2 回档 记录一些在饥荒联机版开服中遇到过的问题。 参考:3分钟创建你的饥荒联机专属服务…...

查询 npm/yarn 安装依赖的全局路径及路径修改

一、NPM 1.查询 npm 安装依赖的全局路径 npm prefix -g 2. 修改 npm 全局安装位置 npm config set prefix "D:\nodejs\node_modules\npm\node_modules" 3. 修改 npm 全局 cache 位置 npm config set cache "D:\nodejs\node_modules\npm\cache" 4. np…...

掌握Python的X篇_35_用Python为美女打码_图像库Pillow

本篇将会介绍python中的一个图像库Pillow。 文章目录 1. Pillow与PIL的关系2. 调整大小3. 加滤镜4. 剪裁5. 生成验证码 1. Pillow与PIL的关系 我们在网上搜python的图像库的话,可能搜到的时PIL。实际上之前python发展的时候就是PIL,这个库比较好用&…...

SpringBoot 异步、邮件任务

异步任务 创建一个Hello项目 创建一个类AsyncService 异步处理还是非常常用的,比如我们在网站上发送邮件,后台会去发送邮件,此时前台会造成响应不动,直到邮件发送完毕,响应才会成功,所以我们一般会采用多线…...

【LeetCode】45. 跳跃游戏 II - 贪婪算法

目录标题 2023-8-11 09:49:25 45. 跳跃游戏 II 2023-8-11 09:49:25 自己没做出来&#xff0c;废物Orz class Solution {public int jump(int[] nums) {int length nums.length;int end 0;int maxPosition 0;int steps 0;for (int i 0; i < length - 1; i) {maxPosit…...

[C初阶笔记]P1

什么是C语言 1、机器语言&#xff08;二进制&#xff09;>汇编语言&#xff08;助记符&#xff09;>高级语言&#xff08;C、C等&#xff09; 2、c语言擅长底层软件开发&#xff08;操作系统、驱动程序&#xff09;&#xff0c;并不意味着不能开发其他。 C语言更贴近操作…...

外企面试题

Interview Prepare is there anyone we can talk to for a character reference? yes, I have some teammate can help to provide related working information. why did you leave/quit your last job? I got blocked on my last job. I found I cant learn new things fr…...

【目标检测系列】YOLOV1解读

前言 从R-CNN到Fast-RCNN&#xff0c;之前的目标检测工作都是分成两阶段&#xff0c;先提供位置信息在进行目标分类&#xff0c;精度很高但无法满足实时检测的要求。 而YoLo将目标检测看作回归问题&#xff0c;输入为一张图片&#xff0c;输出为S*S*(5*BC)的三维向量。该向量…...

Sentieon | 每周文献-Multi-omics(多组学)-第九期

多组学系列文章-1 标题&#xff08;英文&#xff09;&#xff1a; Prediction of axillary lymph node metastasis in triple-negative breast cancer by multi-omics analysis and an integrated model标题&#xff08;中文&#xff09;&#xff1a; 基于多组学分析和综合模型…...

CSDN竞赛70期

CSDN竞赛70期 CSDN竞赛70期1.小张的手速大比拼分析代码 2.坐公交分析代码 3.三而竭分析代码 4.争风吃醋的豚鼠分析代码 CSDN竞赛70期 1.小张的手速大比拼 在很久很久以前&#xff0c;小张找到了一颗有 N 个节点的有根树 T 。 树上的节点编号在 1 到 N 范围内。 他很快发现树上…...

mac安装vscode 配置git

1、安装vscode 官网地址 下载mac稳定版安装很慢的解决办法 (转自) mac电脑如何解决下载vscode慢的问题 选择谷歌浏览器右上角的3个点&#xff0c;选择下载内容&#xff0c;右键选择复制链接地址&#xff0c;在新窗口粘贴地址&#xff0c; 把地址中的一段替换成下面的vscode.cd…...

UI自动化环境的搭建(python+pycharm+selenium+chrome)

最近在做一些UI自动化的项目&#xff0c;为此从环境搭建来从0到1&#xff0c;希望能够帮助到你&#xff0c;同时也是自我的梳理。将按照如下进行开展&#xff1a; 1、python的下载、安装&#xff0c;python环境变量的配置。 2、pycharm开发工具的下载安装。 3、selenium的安装。…...

AbstractQueuedSynchronizer

目录 AQS是什么AQS什么样内部类成员变量方法public如果不使用AQS会怎样 AQS的应用ReentrantLockSyncNonfairSyncFairSync 其他实现 AQS是什么 AbstractQueuedSynchronizer&#xff08;AQS&#xff09;是Java中的一个并发工具&#xff0c;位于java.util.concurrent.locks包中&a…...

谈谈什么是云计算?以及它的应用

作者&#xff1a;Insist-- 个人主页&#xff1a;insist--个人主页 作者会持续更新网络知识和python基础知识&#xff0c;期待你的关注 目录 ​编辑 一、什么是云计算 二、云计算的优势与劣势&#xff1f; 1、云计算的优势 ①提高资源利用率 ②提升效率 ③降低成本 2、云…...

超短脉冲激光自聚焦效应

前言与目录 强激光引起自聚焦效应机理 超短脉冲激光在脆性材料内部加工时引起的自聚焦效应&#xff0c;这是一种非线性光学现象&#xff0c;主要涉及光学克尔效应和材料的非线性光学特性。 自聚焦效应可以产生局部的强光场&#xff0c;对材料产生非线性响应&#xff0c;可能…...

Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例

使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件&#xff0c;常用于在两个集合之间进行数据转移&#xff0c;如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model&#xff1a;绑定右侧列表的值&…...

Cesium1.95中高性能加载1500个点

一、基本方式&#xff1a; 图标使用.png比.svg性能要好 <template><div id"cesiumContainer"></div><div class"toolbar"><button id"resetButton">重新生成点</button><span id"countDisplay&qu…...

Python爬虫实战:研究feedparser库相关技术

1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...

ios苹果系统,js 滑动屏幕、锚定无效

现象&#xff1a;window.addEventListener监听touch无效&#xff0c;划不动屏幕&#xff0c;但是代码逻辑都有执行到。 scrollIntoView也无效。 原因&#xff1a;这是因为 iOS 的触摸事件处理机制和 touch-action: none 的设置有关。ios有太多得交互动作&#xff0c;从而会影响…...

人工智能(大型语言模型 LLMs)对不同学科的影响以及由此产生的新学习方式

今天是关于AI如何在教学中增强学生的学习体验&#xff0c;我把重要信息标红了。人文学科的价值被低估了 ⬇️ 转型与必要性 人工智能正在深刻地改变教育&#xff0c;这并非炒作&#xff0c;而是已经发生的巨大变革。教育机构和教育者不能忽视它&#xff0c;试图简单地禁止学生使…...

MySQL 知识小结(一)

一、my.cnf配置详解 我们知道安装MySQL有两种方式来安装咱们的MySQL数据库&#xff0c;分别是二进制安装编译数据库或者使用三方yum来进行安装,第三方yum的安装相对于二进制压缩包的安装更快捷&#xff0c;但是文件存放起来数据比较冗余&#xff0c;用二进制能够更好管理咱们M…...

Razor编程中@Html的方法使用大全

文章目录 1. 基础HTML辅助方法1.1 Html.ActionLink()1.2 Html.RouteLink()1.3 Html.Display() / Html.DisplayFor()1.4 Html.Editor() / Html.EditorFor()1.5 Html.Label() / Html.LabelFor()1.6 Html.TextBox() / Html.TextBoxFor() 2. 表单相关辅助方法2.1 Html.BeginForm() …...

uniapp 实现腾讯云IM群文件上传下载功能

UniApp 集成腾讯云IM实现群文件上传下载功能全攻略 一、功能背景与技术选型 在团队协作场景中&#xff0c;群文件共享是核心需求之一。本文将介绍如何基于腾讯云IMCOS&#xff0c;在uniapp中实现&#xff1a; 群内文件上传/下载文件元数据管理下载进度追踪跨平台文件预览 二…...

用神经网络读懂你的“心情”:揭秘情绪识别系统背后的AI魔法

用神经网络读懂你的“心情”:揭秘情绪识别系统背后的AI魔法 大家好,我是Echo_Wish。最近刷短视频、看直播,有没有发现,越来越多的应用都开始“懂你”了——它们能感知你的情绪,推荐更合适的内容,甚至帮客服识别用户情绪,提升服务体验。这背后,神经网络在悄悄发力,撑起…...