基于机器学习、遥感和Penman-Monteith方程的农田蒸散发混合模型研究_刘燕_2022
基于机器学习、遥感和Penman-Monteith方程的农田蒸散发混合模型研究_刘燕_2022
- 摘要
- 关键词
- 1 绪论
- 2 数据与方法
- 2.1 数据
- 2.2 机器学习算法
- 2.3 Penman-Monteith方程
- 2.4 Medlyn公式
- 2.5 模型性能评估
- 3 基于机器学习算法的混合模型估算农田蒸散量的评价与比较
- 4 利用人工神经网络算法和遥感植被指数改善PM方程估算农田蒸散量的精度
- 5 结论
摘要
本文的研究内容旨在发展能够准确获取全球或区域尺度蒸散量的混合模型,主要工作包括:
(1)构建了六种不同的混合蒸散模型。这六种混合模型基于六种传统的机器学习算法,分别是KNN、RF、SVM、XGBoost、ANN、LSTM。然后使用17个全球分布的农田通量站点的涡度协方差通量塔的通量数据构建模型。
(2)分析了十种不同的输入因子组合对混合模型估算农田蒸散量性能的影响。将气象数据分别和一种、两种、三种以及四种遥感数据输入到机器学习方法中,构建气孔导度模型,进而运用Penman-Monteith(PM)方程计算蒸散。
(3)评估了六种基于机器学习的混合模型在使用相同的输入变量下估算蒸散的精度,以得到一种较优的基于机器学习的估算蒸散方法。
(4)构建Medlyn-Penman-Monteith模型。将得到的较优的混合机器学习模型和Medlyn-PM模型比较,以得到适用于不同的环境条件的模型,提升模型模拟区域尺度农田蒸散的精度,能够为区域尺度准确估算农田蒸散提供方法支持。
(5)研究了ANN-PM模型在干旱环境下的准确性。利用ANN-PM模型的模拟值与观测值之间的相关系数(r)来评估模型的性能。通过比较ANN-PM模型模拟蒸散值与观测值之间的时间序列图,研究模型是否能捕捉干旱站点蒸散的时间序列变化。
关键词
蒸散;机器学习;遥感;Penman-Monteith方程
1 绪论
本文的主要研究内容如下:
(1)基于六种不同的ML算法,使用全球17个通量站点的气象数据和中分辨率成像光谱仪(Moderate-resolution Imaging Spectroradiometer, MODIS)数据构建了估算蒸散的六种混合模型,并优化模型的参数。
(2)分析十种不同的输入变量组合对混合模型的影响。将十种输入因子分别输入到混合模型中,比较每种模型的相关系数和均方根误差来衡量不同的变量组合。进一步比较基于机器学习算法的六种混合模型使用相同的输入变量估算蒸散的性能,得到了一种性能较优的混合模型。
(3)将上述得到的基于ML算法的混合模型与构建的Medlyn-PM模型比较,评估其估算蒸散的性能。最后研究性能较好的混合模型在干旱环境下的准确性。
2 数据与方法
2.1 数据
2.1.1 通量站点数据
本文使用来自FLUXNET2015数据集的5个气象因子数据和观测ET数据,日尺度上时间连续的气象数据包括气温(Temperature, Ta)、降水(Precipitation, P)、大气二氧化碳浓度(Carbon dioxide concentration, Ca)、太阳辐射(Solar radiation, SW)和饱和水汽压差(Vapor Pressure Deficit, VPD)。
2.1.2 遥感数据
MODIS数据包括归一化差异植被指数(NDVI)、增强植被指数( EVI)、植被近红外反射率(NIRv) 和 短 波 红 外 波 段 (SWIR)。
2.2 机器学习算法
六种机器学习算法(KNN、RF、SVM、XGBoost、ANN、LSTM)
2.3 Penman-Monteith方程
本研究构建的六种基于ML算法的混合模型和Medlyn-PM模型都是基于PM方程的物理框架,主要差异在于Gs的计算。PM方程的计算公式如下:
2.4 Medlyn公式
基于PM方程的ET区域尺度建模的关键是要准确地量化表面电导,这是ET建模中不确定性的最大来源。因此,Medlyn等将最优气孔行为理论与光合作用模型相结合,为表征Gs提供了一个新的生物物理框架。该Gs模型的计算方法如下:
本文将Medlyn模型与ML方法相结合,研究哪种纯粹基于ML的Gs方法或者Medlyn模型和ML的集成可以表现得更好。
2.5 模型性能评估
r、RMSE、MAE
3 基于机器学习算法的混合模型估算农田蒸散量的评价与比较
4 利用人工神经网络算法和遥感植被指数改善PM方程估算农田蒸散量的精度
4.1 基于Medlyn公式的混合模型
4.2 干旱气候下ET估计模型的评估
4.3 Medlyn公式的参数优化
4.4 实验结果分析
4.4.1 ANN-PM模型与Medlyn-PM模型的比较
4.4.2 评估ANN-PM模型在干旱气候下估算蒸散的性能
5 结论
主要结论如下:
(1)不同模型的最优参数:基于KNN模型的K值为5,基于RF模型和XGBoost模型的max_depth分别为8和7,基于ANN模型和LSTM模型的隐含层数都为2、每层神经元数分别是48和40,基于Medlyn模型的待定系数g0=0.06、g1=3.94。
(2)与使用一种RS因子的混合模型相比,使用两种RS因子的混合模型呈现了较好的结果(RMSE=18.60-26.29 W m-2,r=0.87-0.96);使用三种或四种RS因子的混合模型表现出的性能和使用两种RS因子的混合模型的性能相似。
(3)基于不同的ML算法的混合模型中,ANN-PM模型表现出较强地估算蒸散的能力(RMSE=18.67-20.69 W m-2,r=0.90-0.94)。
(4)ANN-PM模型和Medlyn-PM模型相比,ANN-PM模型在估算农田蒸散方面具有较好的性能(RMSE=19.23-19.71 W m-2,r=0.93),拟合效果好,精度较高且适用范围广。
(5)ANN-PM模型能较好地捕捉干旱站点(DE-Rus,US-Tw2,US-Tw3和US- Twt)ET的时间序列变化。ANN-PM模型在干旱站点估算蒸散的性能是合理的,其在干旱站点预测的ET与观测值的平均r是0.87,所有站点的平均r是0.86。
相关文章:

基于机器学习、遥感和Penman-Monteith方程的农田蒸散发混合模型研究_刘燕_2022
基于机器学习、遥感和Penman-Monteith方程的农田蒸散发混合模型研究_刘燕_2022 摘要关键词 1 绪论2 数据与方法2.1 数据2.2 机器学习算法2.3 Penman-Monteith方程2.4 Medlyn公式2.5 模型性能评估 3 基于机器学习算法的混合模型估算农田蒸散量的评价与比较4 利用人工神经网络算法…...

博客 cn 站搭建 v3 v3.1
1. 架构设计 v3.1 版本 2. v2.x 存在的痛点 在v2.x版本中,围绕 服务器 遇到了两个主要的问题: 服务器成本高:博客以静态页面为主,理论上可以实现无服务器部署,但是为了防止恶意攻击,不得不使用服务器进…...

2024全国水科技大会暨流域水环境治理与水生态修复论坛(六)
论坛召集人 冯慧娟 中国环境科学研究院流域中心研究员 刘 春 河北科技大学环境与工程学院院长、教授 一、会议背景 为深入贯彻“山水林田湖是一个生命共同体”的重要指示精神,大力实施生态优先绿色发展战略,积极践行人、水、自然和谐共生理念&…...

Python实战:读取MATLAB文件数据(.mat文件)
Python实战:读取MATLAB文件数据(.mat文件) 🌈 个人主页:高斯小哥 🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程 👈 希望得到您的订阅…...

spring boot3登录开发-3(账密登录逻辑实现)
⛰️个人主页: 蒾酒 🔥系列专栏:《spring boot实战》 🌊山高路远,行路漫漫,终有归途。 目录 前置条件 内容简介 用户登录逻辑实现 创建交互对象 1.创建用户登录DTO 2.创建用户登录VO 创建自定义登录业务异…...

Django后端开发——ORM
文章目录 参考资料ORM-基础字段及选项字段类型练习——添加模型类应用bookstore下的models.py数据库迁移——同步至mysqlmysql中查看效果字段选项Meta类定义示例:改表名应用bookstore下的models.py终端效果练习——改表名+字段选项修改应用bookstore下的models.py终端效果ORM基…...
AI模型训练的初步整理
明天会有人来给我们讲AI方面的课,我也一直想整理一下这方面的知识,今天也趁着这个机会做一下功课,算是预习。 首先,AI的模型训练可以分为: 增量学习(Incremental Learning) 增量学习允许模型在…...

【Java从入门到精通】Java Number Math 类
Java Number & Math 类 一般地,当需要使用数字的时候,我们通常使用内置数据类型,如:byte、int、long、double 等。 实例 int a 5000; float b 13.65f; byte c 0x4a; 然而,在实际开发过程中,我们…...

SQL字符集
目标:了解字符集的概念,掌握MySQL数据库存储数据的字符集逻辑以及设置方式 字符集概念 MySQL字符集关系 解决乱码问题 字符集设置原理 1、字符集概念 目标:了解字符集概念,掌握字符集存储和读取的实现原理 概念 字符集:charset或者character set&am…...

openssl 生成nginx自签名的证书
1、命令介绍 openssl req命令主要的功能有,生成证书请求文件, 查看验证证书请求文件,还有就是生成自签名证书。 主要参数 主要命令选项: -new :说明生成证书请求文件 -x509 :说明生成自签名证书 -key :指定已…...
adb push 使用
adb push命令用于将文件从本地计算机推送到Android设备。要使用adb push命令,需要先连接Android设备并启动ADB调试模式。以下是使用adb push命令的基本步骤: 打开终端(命令提示符)。 使用cd命令导航到存储要推送文件的文件夹。 …...

【Docker】构建pytest-playwright镜像并验证
Dockerfile FROM ubuntu LABEL maintainer "langhuang521l63.com" ENV TZAsia/Shanghai #设置时区 #安装python3依赖与下载安装包 RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone \&& apt update \&&…...

算法沉淀——穷举、暴搜、深搜、回溯、剪枝综合练习四(leetcode真题剖析)
算法沉淀——穷举、暴搜、深搜、回溯、剪枝综合练习四 01.解数独02.单词搜索03.黄金矿工04.不同路径 III 01.解数独 题目链接:https://leetcode.cn/problems/sudoku-solver/ 编写一个程序,通过填充空格来解决数独问题。 数独的解法需 遵循如下规则&am…...

如何在java中使用 Excel 动态函数生成依赖列表
前言 在Excel 中,依赖列表或级联下拉列表表示两个或多个列表,其中一个列表的项根据另一个列表而变化。依赖列表通常用于Excel的业务报告,例如学术记分卡中的【班级-学生】列表、区域销售报告中的【区域-国家/地区】列表、人口仪表板中的【年…...

07 MyBatis之高级映射 + 懒加载(延迟加载)+缓存
1. 高级映射 例如有两张表, 分别为班级表和学生表 自然, 一个班级对应多个学生 像这种数据 , 应该如果如何映射到Java的实体类上呢? 这就是高级映射解决的问题 以班级和学生为例子 , 因为一个班级对应多个学生 , 因此学生表中必定有一个班级编号字段cid 但我们在学生的实体…...

MT8791迅鲲900T联发科5G安卓核心板规格参数_MTK平台方案定制
MT8791安卓核心板是一款搭载了旗舰级配置的中端手机芯片。该核心板采用了八核CPU架构设计,但是升级了旗舰级的Arm Cortex-A78核心,两个大核主频最高可达2.4GHz。配备了Arm Mali-G68 GPU,通过Mali-G88的先进技术,图形处理性能大幅提…...
java:Java中的数组详解
目录 Java数组的定义和特点: Java数组的初始化和赋值 Java数组的常用操作 1. 遍历数组 2. 获取数组长度 3. 访问数组元素 4. 数组的拷贝 多维数组 数组的排序和查找 冒泡排序: 快速排序 : 二分查找: 数组的应用: Java数…...

Modern C++ std::visit从实践到原理
前言 std::visit 是 C17 中引入的一个模板函数,它用于对给定的 variant、union 类型或任何其他兼容的类型执行一个访问者操作。这个函数为多种可能类型的值提供了一种统一的访问机制。使用 std::visit,你可以编写更通用和灵活的代码,而无需关…...

谷歌gemma2b windows本地cpu gpu部署,pytorch框架,模型文件百度网盘下载
简介 谷歌DeepMind发布了Gemma,这是一系列灵感来自用于Gemini相同研究和技术的开放模型。开放模型适用于各种用例,这是谷歌非常明智的举措。有2B(在2T tokens上训练)和7B(在6T tokens上训练)模型,包括基础和指令调整版本。在8192个token的上下文长度上进行训练。允许商业使…...

数据结构-查找与排序
数据结构再往后就是比较零散的各种操作,查找与排序是其中最常出现的,今天来总结一下常用的查找与排序所用的方法 查找 顺序查找 最简单的查找方式,遍历,然后比较 bool search1(int *a,int n,int k){for (int i1;i<n;i){//遍…...

DBAPI如何优雅的获取单条数据
API如何优雅的获取单条数据 案例一 对于查询类API,查询的是单条数据,比如根据主键ID查询用户信息,sql如下: select id, name, age from user where id #{id}API默认返回的数据格式是多条的,如下: {&qu…...
【学习笔记】深入理解Java虚拟机学习笔记——第4章 虚拟机性能监控,故障处理工具
第2章 虚拟机性能监控,故障处理工具 4.1 概述 略 4.2 基础故障处理工具 4.2.1 jps:虚拟机进程状况工具 命令:jps [options] [hostid] 功能:本地虚拟机进程显示进程ID(与ps相同),可同时显示主类&#x…...

day36-多路IO复用
一、基本概念 (服务器多客户端模型) 定义:单线程或单进程同时监测若干个文件描述符是否可以执行IO操作的能力 作用:应用程序通常需要处理来自多条事件流中的事件,比如我现在用的电脑,需要同时处理键盘鼠标…...

ubuntu22.04有线网络无法连接,图标也没了
今天突然无法有线网络无法连接任何设备,并且图标都没了 错误案例 往上一顿搜索,试了很多博客都不行,比如 Ubuntu22.04右上角网络图标消失 最后解决的办法 下载网卡驱动,重新安装 操作步骤 查看自己网卡的型号 lspci | gre…...

GraphQL 实战篇:Apollo Client 配置与缓存
GraphQL 实战篇:Apollo Client 配置与缓存 上一篇:GraphQL 入门篇:基础查询语法 依旧和上一篇的笔记一样,主实操,没啥过多的细节讲解,代码具体在: https://github.com/GoldenaArcher/graphql…...
xmind转换为markdown
文章目录 解锁思维导图新姿势:将XMind转为结构化Markdown 一、认识Xmind结构二、核心转换流程详解1.解压XMind文件(ZIP处理)2.解析JSON数据结构3:递归转换树形结构4:Markdown层级生成逻辑 三、完整代码 解锁思维导图新…...

C# winform教程(二)----checkbox
一、作用 提供一个用户选择或者不选的状态,这是一个可以多选的控件。 二、属性 其实功能大差不差,除了特殊的几个外,与button基本相同,所有说几个独有的 checkbox属性 名称内容含义appearance控件外观可以变成按钮形状checkali…...
iOS 项目怎么构建稳定性保障机制?一次系统性防错经验分享(含 KeyMob 工具应用)
崩溃、内存飙升、后台任务未释放、页面卡顿、日志丢失——稳定性问题,不一定会立刻崩,但一旦积累,就是“上线后救不回来的代价”。 稳定性保障不是某个工具的功能,而是一套贯穿开发、测试、上线全流程的“观测分析防范”机制。 …...
大模型智能体核心技术:CoT与ReAct深度解析
**导读:**在当今AI技术快速发展的背景下,大模型的推理能力和可解释性成为业界关注的焦点。本文深入解析了两项核心技术:CoT(思维链)和ReAct(推理与行动),这两种方法正在重新定义大模…...

LangChain + LangSmith + DeepSeek 入门实战:构建代码生成助手
本文基于 Jupyter Notebook 实践代码,结合 LangChain、LangSmith 和 DeepSeek 大模型,手把手演示如何构建一个代码生成助手,并实现全流程追踪与优化。 一、环境准备与配置 1. 安装依赖 pip install langchain langchain_openai2. 设置环境变…...