2023.5.7 第五十二次周报

news2024/12/26 22:46:48

目录

前言

文献阅读:基于BO-EMD-LSTM模型预测教室长期二氧化碳浓度

背景

思路

BO-EMD-LSTM 混合模型

EMD 算法

与其他模型的比较 

结论

论文代码

总结


前言

This week, I studied an article that uses LSTM to predict gas concentration.This study was designed to explore the long-term prediction of indoor CO2 concentrations to provide an early warning mechanism for indoor air quality. Based on the divide-and-conquer strategy, we proposed a hybrid BO–EMD–LSTM method by integrating BO algorithm, EMD algorithm and LSTM model, and conducted comparative experiments with benchmark models. The strategy by combing the signal decomposition algorithm and deep learning algorithm in this paper can significantly improve prediction performance. The results indicated that the accuracy of BO–EMD–LSTM model was higher than that of the benchmark models, which was improved by more than 55%.In addition to this, continue to learn the relevant code of kriging interpolation and LSTM combination.

本周学习了一篇基于LSTM来预测气体浓度的文章。本研究旨在探讨室内集中CO2的长期预测,为室内空气质量提供预警机制。基于分而治之策略,结合BO算法、EMD算法和LSTM模型,提出了一种混合BO-EMD-LSTM方法,并与基准模型进行了对比实验。该文将信号分解算法和深度学习算法相结合的策略可以显著提高预测性能。结果表明,BO-EMD-LSTM模型的准确率高于基准模型,提高了55%以上。除此之外,继续学习克里金插值和LSTM结合的相关代码。

文献阅读:基于BO-EMD-LSTM模型预测教室长期二氧化碳浓度

--Guangfei Yang, Erbiao Yuan, Wenjun Wu,
Predicting the long-term CO2 concentration in classrooms based on the BO–EMD–LSTM model,
Building and Environment,
Volume 224,
2022,
109568,
ISSN 0360-1323,
https://doi.org/10.1016/j.buildenv.2022.109568.

背景

人们每天大约三分之二的时间在室内度过,这使得室内环境质量成为研究人员的主要关注点。先前的研究表明,室内环境的污染程度至少是室外环境的两倍。长期暴露于高浓度二氧化碳(CO2)会对人类健康产生不利影响,降低学生的每日出勤率和考试成绩,并降低工人的生产力;然而,许多实验发现,教室的二氧化碳空气质量水平不符合室内空气质量标准。因此,控制课堂上的二氧化碳水平的有效措施是必不可少的。控制此类二氧化碳水平的常用方法是改善通风;但是,决定何时进行以及持续多长时间具有挑战性。基于长期精准预测室内CO2浓度的预警机制可以提供重要的参考。

思路

首先,采用经验模态分解(EMD)算法分解原始CO2 浓度序列分为几个固有模式函数 (IMF) 和一个残差函数。

其次,对每个子序列执行贝叶斯优化(BO),即超参数优化。

随后,利用优化后的超参数为每个子序列构建LSTM模型,该模型可以提前30分钟进行长期预测。

最后,对各子序列的所有预测结果进行综合,得出最终的预测结果。

BO-EMD-LSTM 混合模型

为了准确预测时间序列,我们提出了一种称为BO-EMD-LSTM的有效方法。如图 5 所示,CO2浓度的时间序列首先分解为几个子序列。该方法基于BO对LSTM模型的超参数进行滤波,使用得到的最优超参数。最后,对子序列的预测结果进行加法,得到最终结果。通过充分利用BO、EMD和LSTM网络,BO-EMD-LSTM模型可以预测长期集中于教室的CO2浓度。我们的模型创新性地将EMD算法引入深度学习模型,将复杂且频繁变化的时间序列分解为相对稳定的序列。深度学习模型更容易探索稳定序列中的变化规律,以提高长期预测的准确性。

EMD 算法

原始 CO2浓度序列可以视为动态信号。因此,可以应用信号处理的时频分析方法;然而,在傅里叶和小波变换中选择合适的基是一项艰巨的任务。数据驱动的EMD处理已被证明是一种有效的方法。EMD的优点是可以克服基本功能的不适应性,使信号分解更简单、更高效。具体来说,原始时间序列的数据被分解为残差和有限数量的IMF。IMF反映了信号的局部特征,必须满足两个条件:

(1)在整个数据段中,极值点和零点交叉点的数量必须相等,或者差值最多不能超过一个;

(2)在任何时候,由局部最大点形成的上包络线和由局部最小点形成的下包络线的平均值为零。

  EMD 算法的步骤如图所示。

与其他模型的比较 

为了进一步验证BO-EMD-LSTM模型的预测性能,我们将其与LSTM,BPNN和RF模型进行了比较。 图 10 证明了 RMSE、MAE、MAPE 和 R2,LSTM的预测精度高于RF和BPNN,BO-EMD-LSTM模型优于LSTM模型,表明其在预测CO2集中于教室方面的稳定性和效率。

教室二氧化碳浓度预测中,LSTM、BPNN和RF模型具有相似的性能;然而,BO-EMD-LSTM模型的精度提高是显而易见的。当预测时间为5–30 min时,BO-EMD-LSTM模型的准确率提高了55%以上,最大提高幅度达到71.024%。具体而言,当预测时间为5 min时,基准模型的最小MAE为114.686 ppm,BO-EMD-LSTM的MAE为39.062 ppm;因此,准确度提高了65.940%。当预测时间增加到30 min时,基准模型的最小MAE为473.896 ppm,BO-EMD-LSTM的MAE为209.110 ppm;因此,准确度提高了55.874%。BO-EMD-LSTM模型对RMSE和MAPE具有相似的结果。此外,R2BO-EMD-LSTM模型的值非常稳定,在不同预测时间均超过95%。然而,R2其他3个模型的值随着预测时间的增加而迅速下降。R2的长期预测误差减少和稳定性表明BO-EMD-LSTM模型不仅具有良好的预测性能,而且具有较好的鲁棒性。

 

结论

本研究旨在探讨室内集中CO2的长期预测,为室内空气质量提供预警机制。基于分而治之策略,结合BO算法、EMD算法和LSTM模型,提出了一种混合BO-EMD-LSTM方法,并与基准模型进行了对比实验。该文将信号分解算法和深度学习算法相结合的策略可以显著提高预测性能。结果表明,BO-EMD-LSTM模型的准确率高于基准模型,提高了55%以上。此外,BO-EMD-LSTM模型在预测室内CO2浓度时更稳定。及其R2保持在95%以上。结果还表明,子序列的数量对预测有影响,通过将子序列与我们的方法合并可以节省更多的计算时间。本文提出的方法可能是预测室内CO2浓度的有效方法并帮助决策者实施控制措施以改善室内空气质量。

论文代码

普通克里金插值中半方差的计算 

import numpy as np

# 定义距离函数
def dist(x1, x2):
    return np.sqrt(np.sum((x1 - x2) ** 2))

# 定义克里金半方差函数
def kriging_vario(point, data, model, h_range):
    # 计算距离矩阵
    dist_matrix = np.zeros((len(data), len(data)))
    for i in range(len(data)):
        for j in range(i+1, len(data)):
            dist_matrix[i,j] = dist(data[i,:-1], data[j,:-1])
            dist_matrix[j,i] = dist_matrix[i,j]

    # 计算半方差
    vario = np.zeros(h_range)
    for h in range(h_range):
        idx = np.where(dist_matrix < (h+1))[0]
        if len(idx) > 0:
            vario[h] = np.sum((data[idx,-1] - np.mean(data[idx,-1]))**2) / len(idx)

    return vario

# 测试数据
data = np.array([[0, 0, 1],
                 [2, 0, 2],
                 [0, 2, 3],
                 [2, 2, 4]])

# 待预测点
point = np.array([1, 1])

# 模型参数
model = {'sill': 1.0, 'range': 1.0, 'nugget': 0.0}

# 计算半方差
vario = kriging_vario(point, data, model, 5)

print(vario)

总结

目前的主要任务是深度的学习代码,希望尽早能将论文目标具体化。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/499843.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Springboot +Flowable,按角色分配任务

一.简介 在为 UserTask 设置处理人的时候&#xff0c;除了设置单个的处理人&#xff0c;也可以设置 Group&#xff08;分组&#xff09;&#xff0c;就是某一个用户组内的所有用户都可以处理该 Task。 二.绘制流程图 首先我们还是使用之前旧的流程图&#xff0c;流程图截图如…

从0学Spring Boot框架(Spring Boot配置文件与Spring Boot日志文件)

文章目录 1. 什么是Spring Boot&#xff1f;2. 如何创建Spring Boot项目&#xff1f;3. 验证Spring Boot项目的创建3.1 补充添加依赖3.2 代码示例 4. Spring Boot配置文件4.1 配置文件的作用4.2 配置文件的格式4.2.1 properties的语法4.2.2 yml的语法4.2.3 properties与yml的对…

想把PDF转成Word?这三个免费在线工具不容错过!

在日常工作和学习中&#xff0c;我们经常会遇到需要将PDF文件转为Word文档的情况。本文将介绍三种不同的PDF转Word的方法。 首先是推荐的PDF转Word网站&#xff1a;记灵在线工具&#xff08;http://remeins.com)。 这是一个功能非常强大的PDF在线处理网站&#xff0c;可以完全…

CNI_02_Flannel 跨主机通信Overlay Network三种实现

文章目录 一、前言二、跨主机网络三、UDP模式四、VXLAN模式4.1 VXLAN完全在内核态中构建Overlay Netwok覆盖网络4.2 VXLAN模式整个流程步骤1&#xff1a;网络请求从容器到宿主机步骤2&#xff1a;根据目的容器IP在Node1宿主机上找到正确的route路由步骤3&#xff1a;构建内部数…

深度学习实战项目(一)-基于cnn和opencv的车牌号识别

深度学习实战项目(一)-基于cnn和opencv的车牌号识别 网上大部分是关于tensorflow&#xff0c;使用pytorch的比较少&#xff0c;本文也在之前大佬写的代码的基础上&#xff0c;进行了数据集的完善&#xff0c;和代码的优化&#xff0c;效果可比之前好一点。 数据集 数据集来自…

AutoCV:Python基础总结

目录 Python基础总结前言Python基础课程总结第一课&#xff1a;开发环境和基本数据类型第二课&#xff1a;控制流程和函数第三课&#xff1a;闭包和根号2的求解第四课&#xff1a;类和三大神器第五课&#xff1a;文件IO和pickle、json第六课&#xff1a;作用域、模块和包、Data…

IDM下载器|Windows系统经典下载工具idm6.41|IDM如何在线视频下载工具 |下载视频教程

IDM全称Internet Download Manager,是一种将下载速度提高最多5倍的专业下载工具,支持大部分文件格式下载和基本所有的下载链接,无视网址本身下载限速,直接达到电脑该有的网速。 下载更快更可靠 下载INTERNET DOWNLOAD MANAGER(IDM下载器)开始您的极速下载旅程&#xff0c;永远…

鲲志说 我的创作纪念日(2023-05-07)

目录 前言有时候缘分就是这么巧&#xff01;努力终会有所获日常规划成就憧憬 前言 今天是个特殊的日子&#xff0c;是我成为创作者的第2048天。但不仅仅是因此今天才特殊&#xff0c;更重要的是因为你&#xff0c;今天才特殊&#xff0c;值得纪念。不管前路如何&#xff0c;积…

微信小程序开发19__第三方UI组件Vant Weapp的应用

为了提高小程序的开发效率&#xff0c; 可以考虑使用第三方 UI 组件来实现界面的视觉统一。 本文以有赞第三方 UI 组件库 Vant Weapp 为例&#xff0c;介绍如何使用自定义组件 实现一个小程序。 Vant Weapp 是一款轻量、 可靠的小程序UI组件库&#xff0c; 与有赞移动端组…

数字图像处理-绪论

数字图像处理-绪论 文章目录 前言一、闲谈二、什么是数字图像处理&#xff1f;2.1. 什么是数字图像&#xff1f;2.1.1. 可见光图像2.1.2. 不可见光图像 2.2. 什么是数字图像处理&#xff1f; 三、数字图像处理的前世今生3.1. 数字图像处理的前世3.2. 数字图像处理的今生 四、数…

计网笔记 01 概述 计算机网络体系结构、参考模型

文章目录 前言1、计网概述1.1 概念、组成、功能、分类1.1.1 概念1.1.2 计网组成1.1.2 计网分类 1.2 标准化工作及相关组织1.2.1 标准的分类 1.3 性能指标★★★1.3.1 速率相关性能指标1.3.2 时延相关指标 2、体系结构&参考模型★★★★★&#xff08;对应王道视频7-10p 相当…

【MySQL学习】MySQL 内置函数

文章目录 一、日期函数二、字符串函数三、数学函数四、其他函数 一、日期函数 函数名称功能描述current_data()获取当前日期current_time()获取当前时间current_timestamp()获取当前时间戳date()返回datetime的日期部分date_add(date, interval d_value_type)以date为基础&…

【2023/05/07】汇编语言

Hello&#xff01;大家好&#xff0c;我是霜淮子&#xff0c;2023倒计时第2天。 Share Stray birds of summer come to my window to sing and fly away. And yellow leaves of autumn,which have no songs,flutter and full there with a sigh. 译文&#xff1a; 夏天的鸟&…

网络学习笔记

【1】路由器与交换机的区别与联系 https://blog.csdn.net/baidu_32045201/article/details/78305586 交换机&#xff1a;用于局域网内网的数据转发 路由器&#xff1a;用于连接局域网和外网 【2】IP地址 1&#xff09;IP地址是Internet中主机的标识 2&#xff09;Internet中…

OpenCV学习12 用色调、饱和度和亮度表示颜色

BGR转HSV 效果&#xff1a; 代码&#xff1a; #include <iostream> #include <opencv2/imgproc/imgproc.hpp> #include <opencv2/highgui/highgui.hpp>using namespace cv;int main() {Mat dog imread("/home/jason/work/01-img/dog.png");// -…

Codeforces Round 871 (Div. 4)——G题讲解

蒟蒻来讲题&#xff0c;还望大家喜。若哪有问题&#xff0c;大家尽可提&#xff01; Hello, 大家好哇&#xff01;本初中生蒟蒻讲解一下G. Hits Different! 上绿名喽&#xff01; G. Hits Different 题目描述 In a carnival game, there is a huge pyramid of cans with 20…

SmartSoftHelp 自定义开源C#代码生成器

​​​​​​蓦然回首终结者SmartSoftHelp开发辅助工具MiniLite2.0迷你版 V3.5 自定义生成 dbhelper Model BLL DAL sqltxt UI 方便快捷&#xff0c;支持自编码&#xff0c;自编译&#xff0c;自己修改生成代码内容和格式&#xff0c;方便快捷... 开源代码生成说明: 1.目录…

python+django汽车4S店零配件保养服务管理系统

汽车4S服务管理系统包括三种用户。管理员、普通员工、客户。 开发语言&#xff1a;Python 框架&#xff1a;django/flask Python版本&#xff1a;python3.7.7 数据库&#xff1a;mysql 数据库工具&#xff1a;Navicat 开发软件&#xff1a;PyCharm django 应用目录结构管…

vue diff算法与虚拟dom知识整理(5) 手写一个自己的h函数

本文的意义在于教会大家如何手写一个h函数 上文中 我们简单理解了一下h函数 他的作用是构建一个虚拟的dom节点 掌握这个函数还是很有必要的 首先 你想要写出来 还是得去看原版的ts代码 这边 我们没必要把太多注意力放在TS上 所以 我们这边是看ts代码 然后 仿写js代码 我们在…

Faster RCNN在pycharm中运行

文章目录 1 代码2 文件说明3 代码解析5 数据6 自制数据集6.1 创建文件夹6.2 标注图片 7 开始训练 1 代码 参考B站up主&#xff1a;霹雳吧啦Wzgit clone https://github.com/WZMIAOMIAO/deep-learning-for-image-processing 2 文件说明 首先找到faster_rcnn ├── backbone: …