2023.08.27 学习周报

文章目录

  • 摘要
  • 文献阅读
    • 1.题目
    • 2.重点
    • 3.引言
    • 4.方法
    • 5.实验结果
    • 6.结论
  • 深度学习
  • Majorization-Minimization算法
    • 1.基本思想
    • 2.要求
    • 3.示意图
  • 总结


摘要

This week, I read a computer science on the prediction of atmospheric pollutants in urban environments based on coupled deep learning models and sensitivity analysis. First, a coupled model combining attention mechanisms, convolutional neural networks and long and short term memory units is proposed to predict O3 and PM2.5 levels as well as AQI in the atmosphere. Secondly, the correlation degree between the predicted value and the measured value of this model is greater than 0.90, which is better than the other four models. Finally, sobol-based sensitivity analysis is used to identify the variables that contribute the most to the model prediction results. Therefore, on the premise of not affecting the prediction performance of the model, the removal of the variable that contributes the least to the prediction result can improve the modeling efficiency and reduce the calculation cost. In addition, I learn the physical laws and mathematical equations of air pollutant transmission.

本周,阅读了一篇基于耦合深度学习模型和敏感性分析的城市环境大气污染物预测的文章。首先,提出了一个结合注意力机制、卷积神经网络和长短期记忆单元的耦合模型,用于预测大气中的O3、PM2.5水平以及AQI。其次,该模型预测值与实测值的关联程度大于0.90,优于其他四种模型。最后,采用基于sobol的敏感性分析来识别对模型预测结果贡献最大的变量。于是,在不影响模型预测性能的前提下,去除对预测结果贡献最小的变量,可以提高建模效率,降低计算成本。此外,我学习了大气污染物传输的物理规律与数学方程。


文献阅读

1.题目

Prediction of atmospheric pollutants in urban environment based on coupled deep learning model and sensitivity analysis

2.重点

在这里插入图片描述
1.将CNN、LSTM和注意力机制结合起来进行大气预测;
2.提出的模型优于其他模型,预测数据与观测数据之间的差值R的平方大于0.9。
3.敏感性分析确定了对污染物影响最大的因素。(通过敏感性系数识别对模型目标输出贡献最大的变量,它简化了模型结构,可以分析模型输入变量与目标输出之间的不确定关系,增加了模型的适用性。)
4.删除对输出贡献不大的变量可以提高建模效率。
5.污染物的关键因素在整个期间和COVID-19爆发之前保持相似。

3.引言

1.问题
1)CNN-LSTM混合算法虽然在一定程度上提高了回归任务的精度,但在时间维度上时间特征的重要性并不一致。
2)只使用标准的CNN和LSTM组合很难反映不同特征的重要性,从而导致对特征重要性的错误评估。
3)局部灵敏度分析计算量较小,但可能忽略参数之间的相互作用。

2.解决方案
1)将CNN与LSTM单元相结合,可以捕获序列的特征和隐藏的时间特征。
2)引入注意力机制,根据每个特征的贡献分配不同的权重,进一步增强模型捕获特征的能力。
3)全局敏感性分析可以同时分析了多个输入变量对模型目标输出的影响,有助于揭示不同时期影响环境空气质量的关键因素。

3.研究过程
采用基于sobol的全球敏感性分析,以新冠肺炎疫情为时间边界,检验疫情防控措施在不同时期是否影响了大气污染物与气象因子之间的复杂关系。

4.方法

1.数据集
收集了北京2015年1月1日至2022年7月9日的大气污染数据(包括PM2.5、PM10、SO2、NO2、O3和CO)和气象数据(包括风速(WS)、风向(WD)、相对湿度(RH)、降水(PR)、气压§、温度(T)、露点(DP)和太阳辐射(SI)),其中用两天相邻数据的平均值插值和填充缺失值。

2.模型
1)CNN模块负责提取输入数据的特征,注意力机制根据特征的重要性对CNN提取的特征赋予不同的权重,LSTM模块接收特征权值,并将其应用于学习和预测任务。
2)通过CNN的卷积层滑动提取特征,池化层降低提取的特征维数,提取的特征通过全连通层作为向量H输出:
在这里插入图片描述
3)注意力机制对CNN提取的H=[p1, p2,…,pn]中包含的特征赋予不同的权重,使用Softmax函数将这些特征表示为张量。
4)使用以下四个指标来衡量模型的性能:均方根误差(RMSE)、平均绝对误差(MAE)、均方误差(MSE)和决定系数(R2)。

3.Sobol敏感性分析
1)使用Sobol进行全局敏感性分析,以确定模型中最具影响力的参数,并删除对输出影响很小甚至于没有影响的参数。
2)基于方差的Sobol灵敏度分析方法采用蒙特卡罗抽样,根据每个参数对输出目标的贡献进行灵敏度分析。假设模型y=f(x1, x2,…,xn)和xi (i = 1,2,…,n)服从[0,1]均匀分布,则f(x)可分解为:
在这里插入图片描述
3)Sobol证明这种分解是唯一的,并且多次积分可以找到每个分解项。f(x)的总方差为:
在这里插入图片描述
4)偏差:
在这里插入图片描述
5)灵敏度系数Si1,i2,…,is为:
在这里插入图片描述
其中:Si为xi的一阶灵敏度指数,表示单个变量对模型输出的影响。

5.实验结果

1.O3、PM2.5和AQI的变化趋势
在这里插入图片描述
1)与封城前相比,封城期间PM2.5浓度和AQI浓度急剧下降,O3略有上升趋势。这与污染物形成机制的不同有关。
2)夏季太阳辐照强度高,地表温度升高,近地表空气受热,空气对流增加,有利于污染物的扩散和沉积。
3)春季西北地区沙尘暴频发,在风的作用下,污染物被输送到北京。
4)秋季天气条件稳定,太阳辐照强度减弱,而冬季气温下降,气象条件不利于垂直对流,导致空气质量下降。

2.AC-LSTM模型性能评价
在这里插入图片描述
1)提出的模型对于O3、PM2.5和AQI的预测都取得了满意的结果,数据中似乎没有任何异常值。
2)散点图证实了观测值与所提出模型的预测值之间存在很强的正线性相关。

3.与其他模型比较
1)AC-LSTM模型对O3、PM2.5和AQI的预测值与实测值的相关系数最高,一致性最好。
2)五个模型对某些峰值的拟合程度相对较差,这可能与天气和其他因素的突然变化有关。
3)对于预测数据和观测数据的一致性,深度学习模型优于机器学习模型。

4.敏感性分析
在这里插入图片描述
1)太阳辐射、PM2.5和露点是与O3浓度相关程度最大的因子,CO、PM10和NO2对PM2.5浓度影响较大,而颗粒物和NO2对AQI的影响最为显著。
2)CO是PM2.5最重要的影响因素,这可能是因为它们的来源相似。第一种,交通排放、煤炭燃烧、生物质燃烧等。另一种,空气中的CO、SO2、氮氧化物等大气污染物可以通过一系列大气化学反应生成PM2.5。
3)敏感性分析结果显示,在整个时间段内PM2.5、PM10和NO2是关键因素。

5.消融实验
依次减去对模型输出贡献最小的变量,观察模型预测精度的变化。
在这里插入图片描述
1)当去掉对模型贡献最小的变量时,模型预测指标表现出很小的波动。当剔除敏感性指标较为显著的变量后,模型的各项指标发生突变。即表现为R2减小,RMSE、MAE、MSE增大。
2)RMSE、MAE和MSE随着输入变量的移除而稳步增加,表明没有单一变量可以准确预测这些污染物水平。
3)实验结果表明,随着敏感度指标较高的参数被去除,AC-LSTM模型的预测性能下降。

6.结论

1.提出了一种利用注意力机制的CNN-LSTM大气预测模型,并将其应用于北京周边地区的污染情况。
2.实验结果表明,AC-LSTM模型优于CNN-LSTM、LSTM、SVR和RF模型,O3、PM2.5和AQI的观测值与预测值之间的R2值分别为0.95、0.92和0.96,但部分峰值的预测值未能达到预期。
3.基于Sobol的敏感性分析方法,发现太阳辐照度是整个时期影响O3的最重要因素,CO水平是影响PM2.5浓度的主要因素,PM2.5和PM10是影响AQI的最主要因素。
4.封城前、封城后的敏感性分析表明,PM2.5和太阳辐照度与O3密切相关,而影响PM2.5的关键因素在不同时期有所不同。PM2.5、PM10和NO在整个阶段与疫情前基本相同。
5.消融实验表明,减少输入次数使AC-LSTM模型预测结果的R2对O3、PM2.5和AQI分别降低5%、1%和5%,均在可接受范围内。

深度学习

  1. 基于牛顿运动定律,假设大气污染物在空气中受到多个力的作用,从而影响其传输和扩散。
    1)扩散力:大气污染物在空气中由于浓度梯度而产生的分子扩散,使得污染物向低浓度区域扩散。
    2)对流力:大气中的气流和气流的变化会影响污染物的传输,将污染物从一个地区带到另一个地区。
    3)沉降力:大气中的重力会使得颗粒状的污染物向下沉降,其速率与污染物的大小和密度有关。
    4)扩散和湍流混合:大气中存在的湍流可以将污染物混合到更大的空间范围内。
    将上述力结合起来,建立一个基本的多维作用力模型来描述大气污染物的传输过程,但这种简化的模型只能适用一些基本的情况。因为大气污染物传输受到许多因素的影响,如地形条件、气象因素、污染源分布等。

2.大气污染物传输涉及的数学方程
1)弥散方程
在这里插入图片描述
其中:C是污染物的浓度,t是时间,D是扩散系数,nabla^2表示浓度梯度的二阶导数。
2)对流扩散方程
在这里插入图片描述
其中:u是流速矢量,表示污染物在风中的传输速度。
3)Navier-Stokes方程
在这里插入图片描述
在三维情况下,该方程描述速度场随时间的变化。引入一个附加的输运方程来描述污染物浓度场C的变化:
在这里插入图片描述
其中:u是流体速度,D是污染物的扩散系数,S是污染物的源项。
4)具体步骤
初始条件: 给定初始时刻的污染物浓度分布和流体速度场。
求解方程: 利用描述污染物输运的方程,结合已知的流体速度场,求解污染物浓度场随时间和空间的演化。
模拟和预测: 基于求解得到的污染物浓度场,可以进行数值模拟和预测,以获得污染物在空间中的传输过程和分布情况。
运动轨迹分析: 通过分析污染物浓度场的变化,可以获得污染物在不同时间段内的运动轨迹。
5)Eulerian和Lagrangian
Eulerian描述基于固定点的观察,用来跟踪污染物浓度随时间和位置的变化。Lagrangian描述则是基于污染物微粒的运动轨迹,更适用于描述颗粒状污染物的传输。

Majorization-Minimization算法

1.基本思想

需要优化一个函数 f(x), 但是直接优化这个 f(x) 太难了。比如, 这个函数是个非凸的函数,我们直接求 f(x) 极小化是很困难的事情。于是,可以找另外一个函数 u(xk, x),这个 u(xk, x) 是对原来的目标函数 f(x) 在点 xk 处的一个近似,这个时候我们就转而去优化 u(xk, x) 来达到优化 f(x) 的目的。

2.要求

1)u(xk, x) 是可微分的(凸),这样就很容易对 u(xk, x) 求优化;
2)u(xk, x) 是对 f(x) 的一个近似,如果 u(xk, x) 不近似于 f(x) 就无法达到通过优化 u(xk, x) 来近似优化 f(x) 的目的。

3.示意图

在这里插入图片描述
假设 x0 在A点,构造一个在函数 f(x) 上面的函数 u(xk, x),我们通过找到 u 的最小值B点,在下一步 x1 移动到和B横坐标一样的 C点,于是写出表达式:
在这里插入图片描述
为什么要保证 u(xk, x) 在函数 f(x)上呢?
这是因为 u(xk, x) 是 f(x) 的一个替身,我们极小化 u(xk, x) 就是在极小化 f(x) 的上界,就是间接的在极小化 f(x)。于是写出表达式:
在这里插入图片描述
因此,C点比B点低比A点低,目标函数的值就不会上升了,而是期望目标函数的值能下降。


总结

本周,我学习了大气污染物传输的物理规律和数学方程,以及Majorization-Minimization算法,理解其中的优势点。下周,我将继续阅读大量文献和学习其中知识点,逐步推进论文写作。

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

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

相关文章

Xposed API详解

Xposed API详解 Hook修改变量Hook普通方法回调函数XC_MethodHookXC_MethodReplacement Hook获取参数与返回值获取参数获取返回值 Hook构造函数无参构造有参构造 Hook复杂函数Hook自定义类参数Hook替换函数与函数置空替换函数函数置空 Hook内部类与匿名类内部类匿名类 Xposed主动…

【Python】PySpark

前言 Apache Spark是用于大规模数据(large-scala data)处理的统一(unified)分析引擎。 简单来说,Spark是一款分布式的计算框架,用于调度成百上千的服务器集群,计算TB、PB乃至EB级别的海量数据…

Xposed常用逆向函数

1. 创建Xposed工程 在Android Studio中新建一个app工程&#xff0c;修改其中的 AndroidManifest.xml 文件&#xff0c;在<application></application>标签中增加如下代码 <meta-dataandroid:name"xposedmodule"android:value"true" />…

Xposed环境安装

一、Xposed 框架实现 Hook 的原理介绍 Zygote是Android的核心&#xff0c;每运行一个app&#xff0c;Zygote就会fork一个虚拟机实例来运行app&#xff0c; Xposed Framework深入到了Android核心机制中&#xff0c;通过改造Zygote来实现一些很牛逼的 功能。Zygote的启动配置在i…

Xposed 使用教程

Xposed作为Android开发中的神器&#xff0c;功能强大之处就不做过多介绍了&#xff0c;本文主要讲解一些常用的API&#xff0c;基本包含常用的Hook操作。 Hook静态变量 Class cla XposedHelpers.findClass(claName, loadPackageParam.classLoader); XposedHelpers.setStatic…

xposed android 4.4.2,xposed新版54

xposed新版54是一款好用的系统工具&#xff0c;软件安全&#xff0c;无需root权限&#xff0c;下载相对应功能板块即可在应用内实现应用多开、虚拟步数、以及qq&#xff0c;微信等多种功能&#xff0c;方便又实用&#xff01; 软件介绍 系统功能增强&#xff0c;如后台管制&…

Xposed安装

记录一下自己安装xposed的过程。网上很多xposed的安装教程&#xff0c;里面各种都是直接跳转到官网地址下载Xposed&#xff0c;但国内打不开&#xff0c;提示如下&#xff1a; 因此只能下载对应版本zip包进行本地安装&#xff0c;下载对应zip包放到“ /sdcard/Android/data/de…

android8 检测xposed,Xposed检测与自定义Xposed

Xposed检测与自定义Xposed 前言: Xposed检测 1、遍历App安装列表检测 2、自造异常检测堆栈信息。 3、检查关键Java方法是否变为native方法 4、反射XposedHelper类和XposedBridge类 5、检测Xposed相关文件 6、Root检测 7、安全建议 自定义Xposed 一、修改XposedBridge.jar包名 …

xposed android4.4,应用管理Xposed

应用管理Xposed是一款安卓应用管理xposed模块&#xff0c;可以帮助你更好的管理自己手机的各种应用的权限&#xff0c;应用使用需要先阅读了解一下使用的方法&#xff0c;非常强大的一款插件&#xff0c;欢迎大家前来下载。 新版特性 1. 为部分列表也添加基本筛选。 2. 在主页显…

android xposed 简书,Xposed 入坑篇

device-2018-04-12-101001.png 接下来开始敲代码了 美滋滋(皮一下很开心) 上一张整个工程的图 QQ截图20180412102021.png 以下是Test和Tutorial的代码 package com.zed.xposed.demo; import de.robv.android.xposed.IXposedHookLoadPackage; import de.robv.android.xposed.Xpo…

Xposed 入门

Xposed的原理 Android基于Linux&#xff0c;第一个启动的进程自然是init进程&#xff0c;该进程会 启动所有Android进程的父进程——Zygote(孵化)进程&#xff0c;该进程的启动配置在 /init.rc脚本中&#xff0c;而Zygote进程对应的执行文件是/system/bin/app_process&#xf…

Xposed

[Xposed framework] (概述) 记录学习文章&#xff0c;这里介绍一下Xposed framework&#xff0c;它可以让你修改ROM&#xff0c;无需修改任何APK或flashing.快速入门&#xff0c;请看Xposed上XDA 之android basic 101&#xff1a; http://www.youtube.com/watch?vuRR0Flqx9M8 …

Xposed安装与使用

xposed是什么&#xff1f; 一个很牛逼的框架&#xff0c;可以在不修改APK的情况下影响程序的运行&#xff0c;比如&#xff1a; 直接把APP的界面改成自己想要的样去掉界面里不喜欢的东西&#xff0c;自动抢红包消息防撤回步数修改等等 Xposed的工作原理 在开始修改之前&…

【Android】Xposed 框架解析

前言 Xposed这位老兄大家可能不认识&#xff0c;微信自动抢红包大家听过吧、微信记录器作弊大家听过吧、地理位置模拟大家听过吧&#xff0c;我很负责任的告诉大家&#xff0c;这些都是Xposed干的&#xff0c;对的&#xff0c;就是它&#xff0c;相信大家充着“谁抢我红包”的…

Android之Xposed框架完全使用指南

文章目录 Xposed环境搭建Xposed简介Xposed原理Xposed的安装 Xposed插件开发Xposed插件编写流程Xposed开发之Hook构造函数相关API无参构造函数的hook有参构造函数的hook实际效果 Xposed开发之修改属性相关API修改静态字段和成员字段实际效果 Xposed开发之hook一般函数相关APIhoo…

深入理解Android(三):Xposed详解

编者按&#xff1a;随着移动设备硬件能力的提升&#xff0c;Android系统开放的特质开始显现&#xff0c;各种开发的奇技淫巧、黑科技不断涌现&#xff0c;InfoQ特联合《深入理解Android》系列图书作者邓凡平&#xff0c;开设深入理解Android专栏&#xff0c;探索Android从框架到…

Xposed入门教程

2019年8月27日16时51分47秒以前一直没机会接触Android Hook方式的逆向今天有空试了下&#xff0c;以前也很少写这种东西&#xff0c;今天第一次&#xff0c;认真写下&#xff0c;记录一下?准备 准备搞太极的&#xff0c;但是Xposed都不会&#xff0c;不好搞&#xff0c;所以就…

RabbitMQ---订阅模型-Topic

订阅模型-Topic • Topic类型的Exchange与Direct相比&#xff0c;都是可以根据RoutingKey把消息路由到不同的队列。只不过Topic类型Exchange可以让队列在绑定Routing key 的时候使用通配符&#xff01; • Routingkey 一般都是有一个或多个单词组成&#xff0c;多个单词之间以…

PostgreSQL命令行工具psql常用命令

1. 概述 通常情况下操作数据库使用图形化客户端工具&#xff0c;在实际工作中&#xff0c;生产环境是不允许直接连接数据库主机&#xff0c;只能在跳板机上登录到Linux服务器才能连接数据库服务器&#xff0c;此时就需要使用到命令行工具。psql是PostgreSQL中的一个命令行交互…

pyreverse+Graphviz 快速理清整个项目中的代码结构

作用 &#xff1a; 分析代码中的调用关系&#xff0c;帮助快速理清代码。 安装方法&#xff1a;以windows为例 • 从官网下载 https://www.graphviz.org/download/ 安装• 记得将其添加到系统路径• 运行下面命令来检查安装是否完成&#xff1a; dot -V• 安装Pyreverse&…