基于神经网络的植被 fAPAR 估算模型

Author

仝大伟

Published

June 22, 2026

📦 源代码: GitHub 仓库

项目概述

本项目构建了一个基于全连接神经网络(Feedforward Neural Network)的端到端回归预测工作流,利用气象、植被和土壤等 10 个生态因子估算光合有效辐射吸收比(fAPAR)。完整流程包括:数据标准化 → 数据集划分 → 模型训练与自动寻优 → 测试集独立评估 → 未知数据预测。

技术路径

本研究采用多源传感器数据融合策略,集成无人机多光谱影像提供的光谱反射率特征与点云数据(Point-cloud)派生的三维结构参数。针对植被指数在覆盖度较高时的”敏感度饱和”(Saturation effect)问题,通过引入随机森林(Random Forest)与神经网络(Neural Networks)等非参数化机器学习算法,能够更有效地捕捉复杂冠层结构下的非线性响应关系,提升生物物理变量反演的鲁棒性。

实验配置

数据集划分

参数 配置值
训练集 / 验证集 / 测试集 70% / 15% / 15%
归一化方式 Min-Max 归一化
目标变量 fapar(取值范围 0~1)

输入特征(10 个)

序号 特征名 含义
1 logpre 降水量(对数)
2 logvpd 饱和气压差(对数)
3 chi 叶片经济性状指数
4 logppfd 光合有效辐射(对数)
5 gtmp 温度
6 AI 干旱指数
7 loggpp 总初级生产力(对数)
8 soc 土壤有机碳
9 logtp 全磷(对数)
10 logtn 全氮(对数)

神经网络架构

Input (10) → Dense(64, ReLU) → Dense(32, ReLU) → Dense(1, Linear)
参数 配置值
隐藏层数 2
各层神经元数 (64, 32)
激活函数 ReLU
输出层激活 Linear
优化器 Adam
损失函数 MSE(均方误差)
训练轮数 100 Epochs

实验结果

训练收敛过程

  • 收敛稳定性:训练集与验证集的 Loss 和 MAE 曲线在约 80 轮后进入平稳期,最终 Loss 稳定在 ~0.002,MAE 稳定在 ~0.031
  • 过拟合检验:训练曲线与验证曲线高度贴合,未出现验证集损失止跌回升的现象,表明网络结构对当前特征规模具有良好的泛化能力

Loss 收敛曲线

Loss convergence curve

Loss 收敛曲线

MAE 收敛曲线

MAE convergence curve

MAE 收敛曲线

测试集评估指标

指标 说明
0.95 决定系数,模型解释了 95% 的数据变异性
NASH 0.95 纳什效率系数,与 R² 一致
MAE 0.03 平均绝对误差,对应 fAPAR 0~1 区间,预测精度 ~97%
RRMSE 14.03% 相对均方根误差,远低于遥感行业 20% 的优秀线

测试集散点图分析

预测值与实测值的散点分布在 1:1 线两侧,趋势线与 1:1 完美预测线几乎完全重合。全区间(低值到高值)无系统性偏差,表明模型在不同 fAPAR 水平均具有稳定的预测能力。

Test set prediction vs observation scatter plot

测试集预测 vs 实测散点图

模型选择策略

采用验证集最优 Epoch 自动选择机制:

  1. 训练过程中每轮保存完整模型权重(epoch_XX.keras
  2. 训练结束后自动回溯验证集 Loss 曲线,锁定 Loss 最低的 Epoch
  3. 加载该 Epoch 的权重作为最终模型(trial1_NN_model.keras

该策略避免了手动设置早停阈值,确保模型在欠拟合与过拟合之间取得最佳平衡。

代码实现

核心代码位于 estimation.py,串联数据划分、训练、测试、预测全流程:

# 项目结构
DeepFapar/
├── estimation.py              # 主入口
├── config/
│   ├── splits_params.py       # 数据集划分与归一化参数
│   └── NN_params.py           # 神经网络超参数
├── processing/
│   ├── splits_processing.py   # 数据预处理
│   └── NN_processing.py       # 模型训练与推理
├── utils/
│   ├── metrics.py             # 评估指标
│   └── example_dataset_*.xlsx # 数据集
└── outputs/                   # 实验输出

结论

本实验基于 10 个生态因子构建的 2 层全连接神经网络(64-32),在 fAPAR 估算任务上取得了优异的泛化性能:

  • R² = 0.95,模型具备强解释力
  • MAE = 0.03,预测精度达到 ~97%
  • RRMSE = 14.03%,满足遥感行业优秀标准(<20%)
  • 训练过程无过拟合,模型结构与数据规模匹配良好

结果表明,基于气象-植被-土壤多源因子的神经网络方法能够有效估算 fAPAR,为植被光合作用监测提供了可靠的数据驱动方案。