第五十六周:文献阅读

目录

摘要

Abstract

文献阅读:应用于地表水总磷浓度预测的可解释CEEMDAN-FE-LSTM-Transformer混合模型

一、现有问题

二、提出方法

三、方法论

1、CEEMDAN(带自适应噪声的完全包络经验模式分解)

2、FE(模糊熵 )

3、 LSTM-Transformer

4、SHAP(特征选择与解释)

四、所提出的方法(CF-LT模型)

五、研究实验

1、数据集

2、评估指标

3、实验过程

4、实验结果

六、代码实现

总结


摘要

本周阅读的文献《Interpretable CEEMDAN-FE-LSTM-Transformer Hybrid Model for Predicting Total Phosphorus Concentrations in Surface Water》提出了一种用于预测地表水中总磷(TP)的浓度预测模型CF-LT,该模型融合了完全集成经验模态分解带自适应噪声(CEEMDAN)、模糊熵(FE)、长短期记忆(LSTM)网络与Transformer架构。首先利用CEEMDAN-FE对原始数据集进行预处理,通过将特征分解为多个固有模态函数(IMFs),并基于模糊熵值重组为高频、中频、低频和趋势成分,以反映数据的不同方面。其次,模型的LSTM部分与Transformer相结合,通过在编码器和解码器中嵌入Transformer的位置编码,增强了对输入数据时间序列依赖性的捕捉能力。CF-LT模型不仅提升了总磷浓度预测的精度,还通过SHAP方法提供了预测结果的可解释性,为理解影响地表水总磷浓度变化的主要驱动因素提供了科学依据,对水体富营养化管理和生态健康评估具有重要价值。

Abstract

The literature "Interpretable CEEMDAN-FE-LSTM Transformer Hybrid Model for Predicting Total Phosphorus Concentrations in Surface Water" read this week proposes a concentration prediction model CF-LT for predicting total phosphorus (TP) in surface water. This model integrates fully integrated empirical mode decomposition with adaptive noise (CEEMDAN), fuzzy entropy (FE), long short-term memory (LSTM) network, and Transformer architecture. Firstly, CEEMDAN-FE is used to preprocess the original dataset by decomposing features into multiple intrinsic mode functions (IMFs) and recombining them into high-frequency, intermediate frequency, low-frequency, and trend components based on fuzzy entropy values to reflect different aspects of the data. Secondly, the LSTM part of the model is combined with the Transformer, which enhances the ability to capture the temporal dependencies of input data by embedding the Transformer's position encoding in the encoder and decoder. The CF-LT model not only improves the accuracy of predicting total phosphorus concentration, but also provides interpretability of prediction results through the SHAP method, providing scientific basis for understanding the main driving factors affecting changes in total phosphorus concentration in surface water. It has important value for water eutrophication management and ecological health assessment.

文献阅读:应用于地表水总磷浓度预测的可解释CEEMDAN-FE-LSTM-Transformer混合模型Interpretable CEEMDAN-FE-LSTM-transformer hybrid model for predicting total phosphorus concentrations in surface watericon-default.png?t=N7T8https://doi.org/10.1016/j.jhydrol.2024.130609

PDF:Interpretable CEEMDAN-FE-LSTM-transformer hybrid model for predicting total phosphorus concentrations in surface water (sciencedirectassets.com)

一、现有问题

在当前环境科学研究中,准确预测地表水中总磷(Total Phosphorus, TP)浓度面临着严峻挑战,这主要归因于磷的生物地球化学循环机制复杂性。湖泊等淡水系统中的磷输入量增加导致严重的富营养化问题,而传统机器学习模型在处理高维数据时易出现过拟合或欠拟合问题,且难以建立长期数据依赖关系以进行长期预测,限制了其预测效率与准确性。此外,这些“黑箱”模型在工程应用上缺乏透明度,限制了实际操作中的信任度和可解释性。

二、提出方法

提出了一种创新的混合模型——CEEMDAN-FE-LSTM-Transformer(CF-LT)模型,该模型结合了多种先进技术,包括完全集成经验模态分解自适应噪声、模糊熵、长短时记忆网络,以及Transformer架构。数据分频重构的引入有效地解决了以前的机器学习模型在面对高维数据时遇到的过度拟合和欠拟合问题,而注意力机制克服了这些模型在进行长期预测时无法建立数据之间的长期依赖关系的问题,目的在于提高预测总磷浓度的精确度与可解释性。

三、方法论

1、CEEMDAN(完全自适应噪声集合经验模态分解)

作为一种先进的时间序列分析方法,CEEMDAN通过在经验模态分解(EMD)过程中加入自适应噪声,有效减少了传统EMD中存在的模式混叠问题。它能将原始信号分解为一系列固有模态函数(IMFs),每个IMF代表信号的不同时间尺度特征,从而使得复杂信号的分析更加直观和准确。在本研究中,CEEMDAN用于处理来自泰湖三个监测站的每日水质数据,将总磷浓度与其他水质参数如水温、pH值、溶解氧等分离成不同频带的信号,为后续的特征重组和模型训练打下基础。

2、FE(模糊熵 )

此方法被用来评估时间序列的不确定性和复杂度,通过计算相邻数据点间相似度来反映时间序列的规律性。在CEEMDAN分解后,基于FE的结果对IMFs进行分类,将其分为高频、中频、低频和趋势成分,即IMFH、IMFM、IMFL和IMFT,这一步骤称为“分频重构”。这种重组方式不仅降低了数据的维度,还增强了数据的规律性,有助于模型学习关键特征。

3、 LSTM-Transformer

LSTM能够选择性地遗忘旧信息、存储新信息,并决定如何更新隐藏状态,特别适合处理如时间序列数据这类需要记住历史信息的任务。相较于传统的循环神经网络,Transformer通过自注意力(Self-Attention)机制,实现了序列数据中所有元素的相互依赖关系的并行计算,显著提高了模型处理长序列数据的能力和效率。它由编码器和解码器组成,编码器通过多头自注意力层捕捉输入序列的全局依赖,而解码器则在编码器输出的基础上预测序列的下一个元素。弥补了LSTM在处理长序列时的不足。模型中的编码器和解码器结构包含多头自注意力层和前馈网络,通过位置编码注入序列顺序信息。多头注意力的结构如下图所示:

其中K和V相同。当给定Q、K和V的相同组合时,模型应该学习不同的信息,例如捕获不同的子空间表示(短期和长期依赖)。多头注意力层使用h组线性投影变换Q、K和V。转换后的Q、K和V的h个集合是并行计算的。最终,这些h个注意力值的输出被组合,并且结果由另一线性投影生成。为了避免在解码过程中将未来知识泄漏到当前预测时间点,解码器层使用掩蔽多头注意力。

LSTM-Transformer模型,即在编码器和解码器中,LSTM的隐藏层被Transformer位置编码取代,以建立输入数据之间的时间依赖关系。

4、SHAP(特征选择与解释)

为了提高模型的可解释性,研究采用了Shapley Additive Explanations方法。SHAP基于博弈论的Shapley值概念,为每个特征分配一个贡献值,表明其对模型预测结果的影响程度。这种方法能够具体展示哪些输入特征对最终预测结果起到了决定性作用。SHAP value最大的优势是SHAP能对于反映出每一个样本中的特征的影响力,而且还表现出影响的正负性。

当我们进行模型的 SHAP 事后解释时,需要明确标记已知数据集(设有 M 个特征变量,n 个样本),原始模型 f,以及原始模型 f 在数据集上的所有预测值。贡献值计算:

四、所提出的方法(CF-LT模型)

CF-LT模型的构建结合了上述技术的优点,形成了一个多层次、多维度的数据处理与预测框架。首先,利用CEEMDAN对原始数据进行预处理,将复杂的高维数据分解为不同频率的IMFs及趋势项,再利用FE对这些IMFs进行分类重组,降低维度同时保留关键信息。其次,将重构后的特征输入到LSTM-Transformer混合架构中,其中LSTM层捕获短期时间依赖,而Transformer通过自注意力机制强化了长期依赖的学习能力。模型输入包括水温、pH值、溶解氧、化学需氧量、电导率、浊度、氨氮和总氮等多个水质参数。

  1. 模型输入包含两个特征输入。编码器层包含水温(WT),pH值(PH),溶解氧(DO),化学需氧量(COD),电导率(EC),浊度(TU),铵(NH3-N)和总氮(TN)的数据,解码器层包含第一预测时间点之前七天的TP时间序列。
  2. 在通过LSTM和线性层之后,两个特征数据集分别被发送到编码器层和解码器层。
  3. 两个子层组成编码器层。多头注意力层计算输入特征的注意力矩阵,然后前馈层改变数据维度。最后,数据被输入到下一个编码器或解码器层。
  4. 三个子层构成解码器层。在掩蔽多头注意力层已经计算输入特征的注意力矩阵之后,多头注意力层从编码器层的输出建立注意力连接。前馈层将其传递到下一个解码器层或线性层以获得最终的模型输出。 
  5. 最终,在训练数据集上确定每个频率的最佳模型,并用于从测试数据集获得预测。将所有频率的预测结果相加,以确保TP浓度的最佳预测。

五、研究实验

1、数据集

本研究的数据集来源于中国江苏省环境监测中心提供的泰湖流域三个国家水质监测站——姚巷桥、直湖港和观渡桥站的水质量监测数据。数据涵盖了从2015年1月1日至2020年12月31日的每日观测记录,涉及九个水质指标:水温(WT)、pH值、溶解氧(DO)、化学需氧量(COD)、电导率(EC)、浊度(TU)、氨氮(NH3-N)、总氮(TN)和总磷(TP)。

2、评估指标

模型的性能评估采用了几项关键指标:决定系数(R²),均方误差(MSE),以及平均绝对百分比误差(MAPE)。R²衡量模型预测值与实际值的拟合程度,接近1表示模型预测能力强;MSE衡量预测误差的平方和,值越小说明预测误差越小;MAPE则从百分比角度反映预测误差的大小,值越低意味着预测越准确。

3、实验过程

实验过程包括数据预处理、模型训练和测试。建立了一个完整的实验程序,以评估所提出的模型在不同的数据集和预测时间窗口的性能。首先,数据经过CEEMDAN-FE方法进行预处理,通过添加自适应噪声的完全集成经验模态分解去除信息干扰,提取多尺度信息,并利用模糊熵降低子信号的数量。接着,将处理后的数据按75%和25%的比例分为训练集和测试集。训练阶段,将预处理的训练数据集输入到LSTM-Transformer模型。使用反向传播和Adam优化器更新模型权重,并采用网格搜索来识别LSTMTransformer模块的最佳超参数,确保模型在不同预测时间窗口(7天、5天、3天、1天)下的性能最佳。

4、实验结果

模型性能比较

将最佳训练模型应用于测试数据集,表总结了CF-LT、LSTM、Transformer、CF-L和CF-T模型在不同站点和不同预测时间窗下给出的TP浓度预测。所提出的CF-LT模型给出了所有三个评估指标的最佳结果。就R2而言,CF-LT模型的范围为0.37至0.87,而次佳的CF-L和CF-T模型分别为0.32-0.84和0.35-0.86。这表明,将LSTM的长期记忆与Transformer的注意力机制相结合,可以提高预测精度。将最差的LSTM和Transformer模型与CF-L和CF-T模型进行比较,MAPE的范围从8.94%-20.62%(LSTM)和8.91%-18.73%(Transformer)变为8.29%-19.56%(CF-L)和7.82%-17.55%(CF-T)。这些结果表明,数据分解和分频建模通过捕获更多隐藏在原始数据中的信息来显着提高预测准确性。

影响TP浓度预测的因素

采用平均绝对SHAP值(MASV)量化输入特征(WT、PH、DO、COD、EC、TU、TN、NH3-N、TP)对TP预测结果的贡献程度,MASV越大,对模型预测结果的影响越大。研究表明,除了过去的TP浓度序列本身,总氮(TN)和浊度(TU)是影响TP预测的两个主要因素。这表明,TP的变化不仅受历史浓度的直接影响,还与非点源污染排放及水体中氮磷比相关联的藻类生长动态紧密相关。特别是,TN与TP之间的显著相关性,强调了两者在湖泊营养盐循环中的耦合效应,突显了非点源氮输入对磷浓度预测的重要性。

TP浓度预测中TU和TN贡献的动态演变

在不同时间窗口内,TU和TN对TP浓度预测的贡献呈现出动态变化,尤其在雨季更为显著。通过分析2020年全年在姚巷桥、直湖港和观渡桥三个监测站的数据发现,TU和TN的平均绝对SHAP值(MASV)在湿季达到高峰,暗示了非点源污染在此期间的增强。在姚巷桥站,尽管存在特定平季时段TN也有较高MASV值,这可能归因于该地区点源污染的输入。相比之下,观渡桥站的TN贡献度更高,这与该区域周围耕地较多,而非林地或城市土地占主导的其他两站不同,导致非点源污染类型和主要贡献因子存在差异。这些发现表明,CF-LT模型不仅能有效预测TP浓度,还能揭示环境条件变化下TP响应机制的动态,为理解和管理湖泊富营养化提供宝贵洞见。

六、代码实现

CEEMDAN和FE数据预处理

def ceemdan_fe_preprocessing(data):# CEEMDAN分解imfs, residue = ceemdan(data, **ceemdan_params)# 计算各个IMF的模糊熵fe_values = []for imf in imfs:fe_values.append(fuzzy_entropy(imf)) # 假定fuzzy_entropy为计算模糊熵的函数# 根据FE值重组IMFsimfs_sorted = [imf for _, imf in sorted(zip(fe_values, imfs))]imf_hf, imf_mf, imf_lf, imf_trend = imfs_sorted[:4], imfs_sorted[4:8], imfs_sorted[8:12], imfs_sorted[12:]return np.concatenate((imf_hf, imf_mf, imf_lf, imf_trend), axis=1)# 应用到数据上
preprocessed_data = ceemdan_fe_preprocessing(original_data)

构建LSTM-Transformer混合模型        

def get_positional_encoding(max_len, d_model):pe = np.zeros((max_len, d_model))position = np.arange(0, max_len).reshape(-1, 1)div_term = np.exp(np.arange(0, d_model, 2) * -(np.log(10000.0) / d_model))pe[:, 0::2] = np.sin(position * div_term)pe[:, 1::2] = np.cos(position * div_term)return pedef transformer_encoder(inputs, d_model, num_heads, ff_dim):x = MultiHeadAttention(num_heads=num_heads, key_dim=d_model)(inputs, inputs)x = LayerNormalization()(Add()([inputs, x]))x = Dense(ff_dim, activation='relu')(x)x = Dense(d_model)(x)x = LayerNormalization()(Add()([inputs, x]))return xdef transformer_decoder(inputs, encoder_outputs, d_model, num_heads, ff_dim):# 注意力机制,包括自注意力和编码器-解码器注意力# 这里简化了多头注意力和残差连接的具体实现return decoder_outputinput_features = Input(shape=(input_shape)) # 假定input_shape为特征维度
lstm_out = LSTM(lstm_units)(input_features) # LSTM层# 假设我们已经得到了位置编码向量
pos_encodings = get_positional_encoding(max_seq_length, d_model)# 将LSTM输出与位置编码结合,然后送入Transformer
transformer_in = Add()([lstm_out, pos_encodings])
transformer_encoded = transformer_encoder(transformer_in, d_model, num_heads, ff_dim)# 解码器部分可以类似实现
decoder_output = transformer_decoder(decoder_input, transformer_encoded, d_model, num_heads, ff_dim)output_layer = Dense(output_dim, activation='linear')(decoder_output)
model = Model(inputs=input_features, outputs=output_layer)model.compile(optimizer=Adam(learning_rate), loss='mse')

总结

研究开发了一种可解释的CEEMDAN-FE-LSTM-Transformer混合模型,针对地表水中总磷浓度预测,该模型通过先进的数据预处理技术和深度学习模型的融合,显著提高了预测精度,并通过SHAP提供了清晰的特征解释。实验结果证实了模型的有效性,尤其是对关键环境因素的识别,为水体富营养化管理和污染控制提供了有力的工具。未来的研究方向可以考虑迁移学习和物理-深度学习模型的结合,进一步提高模型的泛化能力和解释力。

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

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

相关文章

Vue3【十】07使用ref创建基本类型的响应式数据以及ref和reactive区别

Vue3【十】07使用ref创建基本类型的响应式数据以及ref和reactive区别 ref 也可以创建对象类型的响应式数据,不过要使用.value ref 处理对象数据的时候,底层数据还是reactive格式的 reactive 重新分配一个新对象,会失去响应式可以使用Object.a…

保姆级 | MySQL的安装配置教程(非常详细)

一、下载Mysql 官网步骤 MySQLhttps://www.mysql.com/进入官网首页 点击DOWNLOADS 点击MySQL Community (GPL) Downloads 点击 小页面直接进入 MySQL :: Download MySQL Installerhttps://dev.mysql.com/downloads/installer/点击“Download”下载最新版本,其他…

【吊打面试官系列】MySQL 中 InnoDB 支持的四种事务隔离级别名称,以及逐级之间的区别?

大家好,我是锋哥。今天分享关于 【MySQL 中 InnoDB 支持的四种事务隔离级别名称,以及逐级之间的区别?】面试题,希望对大家有帮助; MySQL 中 InnoDB 支持的四种事务隔离级别名称,以及逐级之间的区别&#xf…

碳素钢化学成分分析 螺纹钢材质鉴定 钢材维氏硬度检测

碳素钢的品种主要有圆钢、扁钢、方钢等。经冷、热加工后钢材的表面不得有裂缝、结疤、夹杂、折叠和发纹等缺陷。尺寸和允许公差必须符合相应品种国家标准的要求。 具体分类、按化学成分分类 : 碳素钢按化学成分(即以含碳量)可分为低碳钢、中…

机器学习笔记 - stable diffusion web-ui安装教程

一、Stable Diffusion WEB UI 屌丝劲发作了,所以本地调试了Stable Diffusion之后,就去看了一下Stable Diffusion WEB UI,网络上各种打包套件什么的好像很火。国内的也就这个层次了,老外搞创新,国内跟着屁股后面搞搞应用层,就叫大神了。 不扯闲篇了,我们这里从git源码直接…

问题:11单位内部人员对行政机关作出的行政处分不服,可申请行政复议. #其他#微信

问题:11单位内部人员对行政机关作出的行政处分不服,可申请行政复议. 参考答案如图所示

问题:脾梗塞时,下列情况最符合的是 #职场发展#知识分享#媒体

问题:脾梗塞时,下列情况最符合的是 A、脾肿大 B、脾区摩擦感 C、两者均有 D、两者均无 参考答案如图所示

uniapp视频组件层级太高,解决方法使用subNvue原生子体窗口

目录 前言 先看一下uniapp官网的原话: subNvue的一些参数介绍 subNvues使用方法: 绑定id 显示 subNvue 弹出层 subNvue.show() 参数信息 subNvue.hide() 参数信息 在使用subNvue 原生子体窗口 遇到的一些问题 前言 nvue 兼容性 以及使用方式 控…

把ROS程序作为桌面图标双击启动

1 写launch文件 把ROS程序写成一个launch文件&#xff0c;例如 powerline_with_rviz.launch <launch><!-- Load camera parameters --><rosparam file"$(find choose_powerline)/config/camera_params.yaml" command"load"/><!-- …

深入理解并应用KTT求解约束性极值问题

KT 很简单&#xff0c;口诀记心端&#xff0c;等式求最优&#xff0c;不等式验证——小飞打油 以后每期尝试编一句口诀&#xff0c;帮助大家记忆&#xff0c;可以是打油诗&#xff0c;也可以是类似“奇变偶不变&#xff0c;符号看象限”的口诀&#xff0c;如果编的不好&#xf…

Docker 常用命令以及镜像选择

目录 1.Docker基本组成 2.镜像选择 2.1、镜像推荐选择方案 2.2版本选择 3.Docker 命令 3.1镜像管理 拉取镜像&#xff1a; 列出镜像&#xff1a; 删除镜像&#xff1a; 构建镜像&#xff1a; 3.2容器管理 运行容器 列出运行中的容器和所有容器 停止容器 启动重启…

为什么要将Modbus转成MQTT

什么是Modbus Modbus 是一种串行通信协议&#xff0c;最初由Modicon&#xff08;现在的施耐德电气Schneider Electric&#xff09;于1979年开发&#xff0c;用于可编程逻辑控制器&#xff08;PLC&#xff09;之间的通信。Modbus协议设计简单&#xff0c;易于部署和维护&#xf…

从零入手人工智能(2)——搭建开发环境

1.前言 作为一名单片机工程师&#xff0c;想要转型到人工智能开发领域的道路确实充满了挑战与未知。记得当我刚开始这段旅程时&#xff0c;心中充满了迷茫和困惑。面对全新的领域&#xff0c;我既不清楚如何入手&#xff0c;也不知道能用人工智能干什么。正是这些迷茫和困惑&a…

M1Pro 使用跳板机

Mac (M1 Pro) 通过Iterm2 使用跳板机 1、由于堡垒机&#xff08;跳板机&#xff09;不能支持mac系统终端工具&#xff0c;只支持xshell等win生态。所以我们需要先安装iterm2 装iterms教程 这里头对rz、sz的配置不详细。我们可以这样配置&#xff1a; where iterm2-send-zmod…

Windows 11中删除分区的几种方法,总有一种适合你

序言 想从Windows 11 PC中删除一个分区,以便将空间重新分配给现有分区或创建一个新分区吗?我们将为你介绍删除Windows 11分区的多种方法。 删除Windows上的分区时会发生什么 删除分区时,Windows会擦除该分区的内容,并将该分区从电脑上的任何位置删除。你将丢失保存在该分…

单元测试覆盖率

什么是单元测试覆盖率 关于其定义&#xff0c;先来看一下维基百科上的一段描述&#xff1a; 代码覆盖&#xff08;Code coverage&#xff09;是软件测试中的一种度量&#xff0c;描述程序中源代码被测试的比例和程度&#xff0c;所得比例称为代码覆盖率。 简单来理解&#xff…

C语言实现map数据结构 key—value对应

1.首先43行 createKeyValuePair(char*key ,int value)这个函数就是给一个keyValuePair *pair的指针来通过内存分配将数据key和value存入这个pair指针所对应的内存空间 2.52行freeKeyValuePair这个函数是释放内存空间 3.头文件 struct结构体KeyValuePair就是一个指针一个值 4…

GO语言 服务发现概述

https://zhuanlan.zhihu.com/p/32027014 明明白白的聊一下什么是服务发现-CSDN博客 一、服务发现 是什么 在传统的系统部署中&#xff0c;服务运行在一个固定的已知的 IP 和端口上&#xff0c;如果一个服务需要调用另外一个服务&#xff0c;可以通过地址直接调用。 但是&…

软件巨头SAP裁员优厚条件,吸引5300名员工争相离职

导语 大家好&#xff0c;我是社长&#xff0c;老K。专注分享智能制造和智能仓储物流等内容。 新书《智能物流系统构成与技术实践》 在科技行业的大潮中&#xff0c;SAP公司近日因一项颇具争议的裁员计划而备受瞩目。但这次裁员风波并未如往常般引发员工的强烈抗议&#xff0c;反…

msvcr120.dll丢失怎样修复?为什么msvcr120.dll文件很重要

msvcr120.dll​ 是一个属于 Microsoft Visual C 2013 Redistributable package 的动态链接库文件。这个文件对于运行使用 Visual Studio 2013 开发的应用程序是必要的&#xff0c;因为它包含了C运行时库的一部分功能&#xff0c;这些功能是标准C库中与输入/输出操作、字符串操作…