基于机器学习的青藏高原高寒沼泽湿地蒸散发插补研究_王秀英_2022
基于机器学习的青藏高原高寒沼泽湿地蒸散发插补研究_王秀英_2022
- 摘要
- 关键词
- 1 材料和方法
- 1.1 研究区概况与数据来源
- 1.2 研究方法
- 2 结果和分析
- 2.1 蒸散发通量观测数据缺省状况
- 2.2 蒸散发与气象因子的相关性分析
- 2.3 不同气象因子输入组合下各模型算法精度对比
- 2.4 随机森林回归模型插补结果分析
- 3 讨论
- 4 结论
摘要
本文以青藏高原典型高寒沼泽湿地为观测研究站, 以实际蒸散发为研究对象, 结合气象因子(净辐射、气温、土壤热通量、风速、相对湿度、土壤含水率), 建立基于多元线性回归(MLR)、决策树(CART)、随机森林(RF)、支持向量回归(SVR)、多层感知机(MLP) 7种组合5类算法的预测模型, 找出对于蒸散发具有较高精度的插补方法, 实现实际蒸散发数据集的构建。
关键词
机器学习; 高寒沼泽湿地; 蒸散发; 交叉验证
1 材料和方法
1.1 研究区概况与数据来源
试验地位于中国气象局青海高寒生态气象野外科学试验基地隆宝试验站(简称隆宝站) (图1)。
本研究选取隆宝站2019年1–10月涡度相关系统所观测的原始数据(其他观测时段缺测)。本研究采用站点30 min的有效气象因子和蒸散发观测值研究机器学习算法的插补效果。将每月30 min气象因子净辐射(W·m–2)、气温(℃)、相对湿度(%)、土壤热通量(W·m–2)、风速(m·s–1)、土壤含水率(%)作为输入变量, 相应月份的30 min蒸散发观测值作为输出变量, 并将每月观测值的70%作为训练集, 30%作为测试集, 按月单独进行训练, 采用机器学习回归算法插补缺失或丢弃的数据以获得完整通量时间序列。
1.2 研究方法
1.2.1 多元线性回归算法
1.2.2 决策回归树算法
1.2.3 随机森林算法
1.2.4 支持向量回归算法
1.2.5 多层感知机算法
2 结果和分析
2.1 蒸散发通量观测数据缺省状况
本研究地点是以高寒沼泽湿地为下垫面的隆宝试验站, 其2019年1–10月(11、12月缺测)蒸散发通量观测数据缺失状况如表1所示, 2019年数据平均缺失率为17%。
2.2 蒸散发与气象因子的相关性分析
结果如表2所示, 研究区蒸散发与所选气象因子存在显著相关关系, 相关性大小关系为: 净辐射>土壤热通量>相对湿度>气温>风速>土壤温度>土壤含水率。
2.3 不同气象因子输入组合下各模型算法精度对比
根据表2气象因子与蒸散发相关性分析, 选取平均相关系数从大到小的气象因子为特征组合, 基于7个特征组合方案, 分别建立7个基于机器学习算法模型, 输入的气象因子模型特征组合及模型精度如表3、4所示。
不同气象因子对蒸散发的重要性不同, 利用算法模型中重要性估计方法, 可以得出主要影响蒸散发的气象因子, 图2给出了5个气象因子重要性排序(土壤温度和土壤含水率重要性几乎为0, 图中未作显示), 相对重要性从大到小依次为: 土壤热通量、净辐射、气温、风速、相对湿度
2.4 随机森林回归模型插补结果分析
2.4.1 模型参数调优
选用随机森林算法, 利用组合1进行蒸散值的插补, 为了提高随机森林回归模型插补精度 , 用交叉验证法(GridSearchCV), 寻找最优超参数。当参数max_features为0.9, max_depth为6时, 误差error_score达到最低(0.3左右), 此时, GridSearchCV返回的最优分数为0.90 (图3)。
2.4.2 插补结果分析
利用已训练好的插补模型对隆宝站2019年缺失蒸散发进行插补, 结果见表5所示。
图4为插补精度最高(10月)和最低(6月)两个月的插补效果。图5为随机森林插补精度最高(10月)和最低(6月)的插补精度验证图。
图6可以看出, 净辐射、土壤热通量、气温与蒸散发日尺度变化趋势基本一致, 呈正相关关系; 风速、相对湿度与蒸散发变化趋势相反, 呈负相关关系。
3 讨论
4 结论
(1)研究区蒸散发与所选气象因子存在显著相关关系, 相关性大小关系为: 净辐射>土壤热通量>
相对湿度>气温>风速>土壤温度>土壤含水率。
(2)依据随机森林模型中重要性估计方法, 高寒沼泽湿地影响蒸散发的气象因子相对重要性由大到小依次为: 土壤热通量、净辐射、气温、风速、相对湿度。
(3) 7种组合的5类机器学习算法模型的R2变化范围为0.58–0.83, RMSE变化范围为0.038–0.089 mm·30 min–1。5种算法模型的R2最大为随机森林算法, 最小为多层感知机算法。随机森林算法在不同气象因子组合下的插补表现最优, 在5个算法模型中拟合精度始终保持在最高值, RMSE在最低值, 精度和稳定性最佳。针对7种不同气象因子组合, 组合1 的随机森林效果最优。利用交叉验证法(GridSearchCV)搜索最优超参数, 返回的最优参数max_features为0.9, max_depth为6, 最优分数达到0.90。
相关文章:

基于机器学习的青藏高原高寒沼泽湿地蒸散发插补研究_王秀英_2022
基于机器学习的青藏高原高寒沼泽湿地蒸散发插补研究_王秀英_2022 摘要关键词 1 材料和方法1.1 研究区概况与数据来源1.2 研究方法 2 结果和分析2.1 蒸散发通量观测数据缺省状况2.2 蒸散发与气象因子的相关性分析2.3 不同气象因子输入组合下各模型算法精度对比2.4 随机森林回归模…...

Failed at the node-sass@4.14.1 postinstall script.
问题描述 安装sass # "node-sass": "^4.9.0" npm i node-sass报错如下 npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! node-sass4.14.1 postinstall: node scripts/build.js npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the node-sass4…...

【鸿蒙系统学习笔记】网络请求
一、介绍 资料来自官网:文档中心 网络管理模块主要提供以下功能: HTTP数据请求:通过HTTP发起一个数据请求。WebSocket连接:使用WebSocket建立服务器与客户端的双向连接。Socket连接:通过Socket进行数据传输。 日常…...

LabVIEW风力机智能叶片控制系统
LabVIEW风力机智能叶片控制系统 介绍了一种风力机智能叶片控制系统的开发。通过利用LabVIEW软件与CDS技术,该系统能够实时监测并调整风力机叶片的角度,优化风能转换效率。此项技术不仅提高了风力发电的稳定性和效率,而且为风力机的智能化管…...

HarmonyOS Stage模型 权限申请
配置声明权限 在module.json5配置文件中声明权限。不论是system_grant还是user_grant类型都需要声明权限,否则应用将无法获得授权。 {"module" : {// ..."requestPermissions":[{"name": "ohos.permission.DISCOVER_BLUETOOTH…...

标题:从预编译到链接:探索C/C++程序的翻译环境全貌
引言 在软件开发的世界里,我们通常会遇到两种不同的环境——翻译环境与运行环境。今天,我们将聚焦于前者,深入剖析C/C程序生命周期中至关重要的“翻译环境”,即从源代码到可执行文件这一过程中涉及的四个关键阶段:预编…...

深入理解单端模拟多路复用器DG406DW-E3 应用于高速数据采集、ATE系统和航空电子设备解决方案
DG406DW-E3是一款16通道单端模拟多路复用器设计用于将16个输入中的一个连接到公共端口由4位二进制地址确定的输出。应用包括高速数据采集、音频信号切换和路由、ATE系统和航空电子设备。高性能低功耗损耗使其成为电池供电和电池供电的理想选择远程仪器应用。采用44V硅栅CMOS工艺…...

Redis篇----第六篇
系列文章目录 文章目录 系列文章目录前言一、Redis 的持久化机制是什么?各自的优缺点?二、Redis 常见性能问题和解决方案:三、redis 过期键的删除策略?前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章…...

【LeetCode】509. 斐波那契数(简单)——代码随想录算法训练营Day38
题目链接:509. 斐波那契数 题目描述 斐波那契数 (通常用 F(n) 表示)形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是: F(0) 0,F(1) 1 F(n) F(n -…...

[OpenGL教程05 ] glAccum() 函数对累积缓存设置
Accumulation Buffer:累积缓存 一、说明 openGL编程之所以困难,是因为它是三维图表示;简简单单加入一个Z轴,却使得几何遮挡、光线过度、运动随影等搞得尤其复杂。它的核心处理环节是像素缓存,本篇的积累缓存就是其一个…...

BeautifulSoup的使用与入门
1. 介绍 BeautifulSoup是用来从HTML、XML文档中提取数据的一个python库,安装如下: pip install beautifulsoup4 它支持多种解析器,包括python标准库、lxml HTML解析器、lxml XML解析器、html5lib等。结合稳定性和速度,这里推荐使用lxml HT…...

LLM之RAG实战(二十七)| 如何评估RAG系统
有没有想过今天的一些应用程序是如何看起来几乎神奇地智能的?这种魔力很大一部分来自于一种叫做RAG和LLM的东西。把RAG(Retrieval Augmented Generation)想象成人工智能世界里聪明的书呆子,它会挖掘大量信息,准确地找到…...

Linux Docker 关闭开机启动
说说自己为什么需要关闭自启动:Linux中安装Docker后,自启动会占用80和443端口,然后使用自己的SSL认证,导致自己Nginx配置的SSL认证失效,网站通过https打开显示不安全。 Docker是一个容器化平台,它可以让开…...

处理器管理补充——线程
传送门:操作系统——处理器管理http://t.csdnimg.cn/avaDO 1.1 线程的概念 回忆:[未引入线程前] 进程有两个基本属性:拥有资源的独立单位、处理器调度和分配的基本单位。 引入线程以后,线程将作为处理器调度和运行的基本单位&…...

RESTful 风格是指什么
RESTful(Representational State Transfer)是一种基于 HTTP 协议的软件架构风格,用于设计网络应用程序的接口。它的设计理念是利用 HTTP 协议中的方法(如 GET、POST、PUT、DELETE 等)来对资源进行 CRUD,使得…...

Python 二维矩阵加一个变量运算该如何避免 for 循环
Python 二维矩阵加一个变量运算该如何避免 for 循环 引言正文方法1------使用 for 循环方法2------不使用 for 循环引言 今天写代码的时候遇到了一个问题,比如我们需要做一个二维矩阵运算,其中一个矩阵是 2x2 的,另一个是 2x1 的。在这个二维矩阵中,其中各个参数会随着一个…...

Nginx 配置详解
官网:http://www.nginx.org/ 序言 Nginx是lgor Sysoev为俄罗斯访问量第二的rambler.ru站点设计开发的。从2004年发布至今,凭借开源的力量,已经接近成熟与完善。 Nginx功能丰富,可作为HTTP服务器,也可作为反向代理服务…...

python读写文件操作的三大基本步骤
目录 基本步骤 常用函数 open()函数 close()函数 read()函数 readlines()函数 readline()函数 write()函数 writelines()函数 with语句 读写操作的应用: 拷贝文件 with 语句的嵌套 逐行拷贝 基本步骤 1. 打开文件:open(filepath, mode, en…...

《Go 简易速速上手小册》第3章:数据结构(2024 最新版)
文章目录 3.1 数组与切片:Go 语言的动态队伍3.1.1 基础知识讲解3.1.2 重点案例:动态成绩单功能描述实现代码扩展功能 3.1.3 拓展案例 1:数据分析功能描述实现代码扩展功能 3.1.4 拓展案例 2:日志过滤器功能描述实现代码扩展功能 3…...

雷达模拟触摸屏,支持tuio\鼠标\Touch
案例展示: 雷达精度测试 星秒雷达互动软件测试 功能说明: 雷达互动系统支持各种品牌雷达,支持4-256点校准(校准点越大精度越高 ,而市场上基本都是4点校准 ,碰到大面积范围无法保证精准度)&…...

一文了解大数据生态
大数据一词最早指的是传统数据处理应用软件无法处理的过于庞大或过于复杂的数据集。 现在,对“大数据”一词的使用倾向于使用预测分析、用户行为分析或者其他一些从大数据中提取价值的高级数据分析方法,很少用于表示特定规模的数据集。 定义 大数据是…...

Linux篇:指令
一 基本常识: 1. 文件文件内容文件的属性 2. 文件的操作对文件内容的操作对文件属性的操作 3. 文件的类型: d:目录文件 -:普通文件 4. 指令是可执行程序,指令的代码文件在系统的某一个位置存在的。/u…...

Linux eject命令教程:如何控制可移动介质的弹出和收回(附案例详解和注意事项)
Linux eject命令介绍 eject命令在Linux中用于弹出可移动介质,通常是CD-ROM、软盘、磁带或JAZ或ZIP磁盘。您还可以使用此命令来控制一些多盘CD-ROM切换器,一些设备支持的自动弹出功能,以及关闭一些CD-ROM驱动器的光盘托盘。 Linux eject命令…...

【已解决】PPT无法复制内容怎么办?
想要复制PPT文件里的内容,却发现复制不了,怎么办? 这种情况,一般是PPT文件被设置了以“只读方式”打开,“只读方式”下的PPT无法进行编辑更改,也无法进行复制粘贴的操作。 想要解决这个问题,我…...

六大设计原则 (SOLID)
一、设计原则概述 古人云: 有道无术,术可求.有术无道,止于术. 而设计模式通常需要遵循一些设计原则,在设计原则的基础之上衍生出了各种各样的设计模式。设计原则是设计要求,设计模式是设计方案,使用设计模式的代码则是具体的实现。 设计模式中主要有六大设计原则,简称为SOL…...

深度解析Sora的核心技术
Sora要解决的核心问题 Sora面临的挑战是将不同类型的视觉信息,如视频、文本、图像和声音等,整合为一种共同的表征形式。这种转换是实现统一训练过程的关键,旨在将各类数据集中到一个训练框架中,以便于进行大规模的统一学习。简而…...

设计模式面试系列-02
1. Java 中工厂模式有什么优势? 1、工厂模式是最常用的实例化对象模式,是用工厂方法代替new操作的一种模式。 2、利用工厂模式可以降低程序的耦合性,为后期的维护修改提供了很大的便利。 3、将选择实现类、创建对象统一管理和控制,从而将调用者跟我们的实现类解耦。 2. …...

MKdocs添加顶部公告栏
效果如图: docs/overrides下新建main.html ,针对main.html文件 树状结构如下: $ tree -a . ├── .github │ ├── .DS_Store │ └── workflows │ └── PublishMySite.yml ├── docs │ └── index.md │ └──overrides │…...

Android全新UI框架之常用ComposeUI组件
在Compose中,每个组件都是一个带有Composable注解的函数,被称为Composable。Compose已经预置了很多基于MD设计规范的Composable组件。 在布局方面,Compose提供了Column、Row、Box三种布局组件(感觉跟flutter差不多),类似于传统视图…...

网络防御保护综合练习
一、实验拓扑 二、实验要求 1, Fw1和Fw2组成主备模式的双机热备 2,DMZ区存在两台服务器,现在要求生产区的设备仅能在办公时间(9:00 - 18:00)访问,办公区的设备全天都可以访问。 3,办…...