基于机器学习的青藏高原高寒沼泽湿地蒸散发插补研究_王秀英_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点校准 ,碰到大面积范围无法保证精准度)&…...

基于ASP.NET+ SQL Server实现(Web)医院信息管理系统
医院信息管理系统 1. 课程设计内容 在 visual studio 2017 平台上,开发一个“医院信息管理系统”Web 程序。 2. 课程设计目的 综合运用 c#.net 知识,在 vs 2017 平台上,进行 ASP.NET 应用程序和简易网站的开发;初步熟悉开发一…...

智能在线客服平台:数字化时代企业连接用户的 AI 中枢
随着互联网技术的飞速发展,消费者期望能够随时随地与企业进行交流。在线客服平台作为连接企业与客户的重要桥梁,不仅优化了客户体验,还提升了企业的服务效率和市场竞争力。本文将探讨在线客服平台的重要性、技术进展、实际应用,并…...

CocosCreator 之 JavaScript/TypeScript和Java的相互交互
引擎版本: 3.8.1 语言: JavaScript/TypeScript、C、Java 环境:Window 参考:Java原生反射机制 您好,我是鹤九日! 回顾 在上篇文章中:CocosCreator Android项目接入UnityAds 广告SDK。 我们简单讲…...
2023赣州旅游投资集团
单选题 1.“不登高山,不知天之高也;不临深溪,不知地之厚也。”这句话说明_____。 A、人的意识具有创造性 B、人的认识是独立于实践之外的 C、实践在认识过程中具有决定作用 D、人的一切知识都是从直接经验中获得的 参考答案: C 本题解…...

C# 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...

算法笔记2
1.字符串拼接最好用StringBuilder,不用String 2.创建List<>类型的数组并创建内存 List arr[] new ArrayList[26]; Arrays.setAll(arr, i -> new ArrayList<>()); 3.去掉首尾空格...
【生成模型】视频生成论文调研
工作清单 上游应用方向:控制、速度、时长、高动态、多主体驱动 类型工作基础模型WAN / WAN-VACE / HunyuanVideo控制条件轨迹控制ATI~镜头控制ReCamMaster~多主体驱动Phantom~音频驱动Let Them Talk: Audio-Driven Multi-Person Conversational Video Generation速…...

HarmonyOS运动开发:如何用mpchart绘制运动配速图表
##鸿蒙核心技术##运动开发##Sensor Service Kit(传感器服务)# 前言 在运动类应用中,运动数据的可视化是提升用户体验的重要环节。通过直观的图表展示运动过程中的关键数据,如配速、距离、卡路里消耗等,用户可以更清晰…...

SiFli 52把Imagie图片,Font字体资源放在指定位置,编译成指定img.bin和font.bin的问题
分区配置 (ptab.json) img 属性介绍: img 属性指定分区存放的 image 名称,指定的 image 名称必须是当前工程生成的 binary 。 如果 binary 有多个文件,则以 proj_name:binary_name 格式指定文件名, proj_name 为工程 名&…...
MySQL JOIN 表过多的优化思路
当 MySQL 查询涉及大量表 JOIN 时,性能会显著下降。以下是优化思路和简易实现方法: 一、核心优化思路 减少 JOIN 数量 数据冗余:添加必要的冗余字段(如订单表直接存储用户名)合并表:将频繁关联的小表合并成…...