本篇文章主要为学习其模型思想。

引言

卷积神经网络( CNN) 作为在图像处理、计算机视觉等领域被广泛应用的模型,其特殊的网络结构通过共享权重的特性可以很好地处理高维稀疏特征,对非时序特征的空间结构关系进行有效建模。将时序概念引入网络结构的门控循环单元神经网络( GRU) 和长短期神经网络( LSTM) 作为循环神经网络( RNN) 的特殊变种,被广泛地应用到了各个领域,并取得了不错的效果。不仅很好地解决了 RNN 的梯度消失和梯度爆炸的问题,而且能够充分挖掘时间序列数据的时序性、非线性的关系。但是难以较好地表达非时序性特征的空间结构,影响了预测的精度。
为了精准预测出菇房内多点温湿度的空间分布情况,本文提出一种基于 CNN-GRU 的菇房多点温湿度预测模型。通过传感器网络采集出菇房不同区域的环境数据,将室外历史气象数据、室内小气候历史数据、环境分布特征、加湿特征及通风特征按照时间序列构造二维矩阵作为输入,采用 CNN 挖掘数据中蕴含反映温室环境数据相互联系的高维有效特征,将提取的特征向量构造为时间序列,输 入 到GRU 网络进行多点温湿度预测。

CNN-GRU 环境预测模型

卷积神经网络

卷积神经网络主要包括卷积层、池化层和全连接层,采用局部连接和权值共享的方式。卷积层对原始数据中更高层次、更抽象的特征进行提取,充分
挖掘数据的内部联系,池化层又称为下采样层,可以有效降低网络的复杂度,减少训练参数的数目,对特征进行降维。CNN 网络结构如图1 所示。

门控循环单元神经网络

为 了 克 服 RNN 的长期依赖问题HOCHREITER 等在 1997 年提出了长短期记忆神经网络( LSTM) ,通过将隐藏层的神经元替换成具有 3 个门结构的特殊细胞状态控制信息,从而解决了梯度消失、梯度爆炸等问题,实现了信息的记忆和更新。
由于 LSTM 的内部结构非常复杂会导致训练的时间过长,CHO 等在 LSTM 的基础上提出新变体门控循环单元神经网络( GRU) ,它具有更加简洁的模型结构,在保证预测精度的同时减少了网络训练的参数,收敛速度更快。GRU 相对于 LSTM 的内部结构最大的改进在于将 LSTM 中的 3 个门结构简化为更新门和重置门 2 个门结构,具有更高的计算效率。更新门主要决定被添加到当前状态信息中的历史信息量,传递的历史信息越多其值越大。重置门主要决定历史信息被遗忘的程度,被忘记的历史信息越多其值越小。GRU 内部结构单元如图2 所示。

门控循环单元神经网络计算公式为:

CNN-GRU 网络混合模型

影响出菇房内各点温湿度的因素包括室外空气温度、室外空气相对湿度、室外风速、室内基质温度、室内光照强度等相互独立的时间序列特征以及环境
分布特征、通风特征、加湿特征等非时序性特征。为了耦合这些影响温室出菇房内温湿度的特征信息,充分挖掘这些特征的内部潜在联系及空间规律,对温室出菇房的温湿度空间分布情况进行精准预测,本文将卷积神经网络( CNN) 与门控循环单元神经网络( GRU) 相结合,构建了基于 CNN-GRU 的菇房多点温湿度预测模型,网络结构如图 3 所示。

( 1) 输入层。将出菇房内某一时刻的温湿度与其相关的室外空气温度、室外空气相对湿度、室外风速、室内基质温度、室内光照强度、环境分布特征、通风特征和加湿特征串联成全新的时间序列特征向量,将出菇房室外的历史气象数据、室内的历史小气候数据表达为时间步长 × 特征向量的二维矩阵,对其预处理后输入预测模型中。
( 2) CNN 层。CNN 层主要捕捉输入的历史序列中深层次的时间、空间特征规律,根据输入数据非线性、稀疏 性、强耦合性的特点,设 计 4 层 卷 积 层
( Conv2D) ,卷积核数目依次为 16、16、32、32,并选取ReLU 激活函数进行激活。每经过 2 次连续卷积进行一次最大池化( MaxPooling2D) ,对提取的高维特征进行降维,压缩数据,加快运行效率。为了充分利用现有的出菇房室外气象数据、室内环境分布数据、非时序多特征数据,将卷积核尺寸设为 3 × 3,池大小为 2,最后通过 Flatten 操作,将其提取的深层次抽象特征转换为全局特征向量作为 GRU 层的输入。
( 3) GRU 层。GRU 层对 CNN 层提取的全局特征向 量 进 行 学 习,经过不断改进可得,构 建 2 层GRU 结构达到了最好的预测效果,激活函数采用
ReLU 激活函数,神经元数目分别为 64、128,最后将全连接层( Dense) 的输出经过反归一化得 20 min 后的温湿度。

实验

实验数据获取

实验地点为北京市农林科学院日光温室出菇房,共 4 间,每间面积约 90 m2
,总高度约 6 m,室内装有加湿喷雾设备。实验期间相邻 2 间出菇房内栽
植不同基质的平菇,出菇方式为袋装,采用的码堆栽培方式有普通式、架杆式、花式 3 种,每种码堆方式堆 3 ~ 4 层菌袋,行与行之间的走道间距为 0. 5 m 左右,适宜的温度为 5 ~ 30℃,适宜的空气相对湿度为85% ~ 90% 。为符合平菇的种植要求,防止病害发生,出菇房内需常开窗进行换气通风,如遇持续恶劣天气时需人工进行关闭,出菇房内的加湿喷雾设备的阈值设定为 90% ,当相对湿度高于 90% 时,加湿喷雾设备自动关闭。有时会在临近傍晚时分将加湿器关闭以减少电力消耗,同时关闭窗户盖下保温被保持室内温湿度,在第 2 天清晨或中午时卷起保温被并同时开窗通风。如果白天开窗通风换气或天气恶劣,相对湿度可能达不到所需的需求,需根据实际情况进行人工喷湿。

实验数据预处理

异常数据处理

温室出菇房内的相对湿度较大,长时间放置于出菇房内进行监测的传感器的精度会受到一定的影响。同时由于白天的通风换气、外界气候变化使得
出菇房的相对湿度达不到所需的要求,因此会根据实际情况进行人工喷湿,存在着人为干扰,加上网络传输的质量、设备故障等问题,使得传感器在进行数据采集的过程中出现数据异常、数据缺失等情况。这些因素都会对预测模型的精度造成一定的影响,因此针对短时数据的缺失采用线性插值法进行插补,即

若数据连续缺失较多或其缺失时间跨度较大,则将天气状况相同或者相临近几天中同一时刻的数据对其进行填补。对于数据异常处理则采用均值法
对数据进行平滑修复,即

归一化处理

为了消除出菇房室内外环境参数量纲的差异对预测的精度造成不良影响,本文对各影响因子和目标变量进行归一化处理。计算公式为:

模型评价指标

为了评估模型的预测效果与精度,选用平均绝对误差( MAE) 、均方根误差( RMSE) 、平均绝对百分比误差( MAPE) 3 个指标对其进行评价[31],MAE、RMSE、MAPE 越小,表明模型的预测结果更加精准。MAE、RMSE、MAPE 的计算公式为:

式中 N———预测结果总个数
yi———第 i 个采样点实际温湿度
yi———第 i 个采样点预测温湿度
为了比较各模型方法的预测效率,本文选取训练时间作为其评价标准,在模型训练的损失函数值趋于稳定时将其记录,训练时间越短其效率越高,损
失函数采用均方误差。
实验所使用的计算机硬件配置如下: 处理器为Intel( R) Core( TM) i5-8250U,内存 8 GB,操作系统为 64 位 Windows 10 系 统,GPU 显 卡 NVIDIA
GeForce MX150 2G。软件框架结构为 Keras 深度学习工 具,以 Tensorflow 深 度 学 习 框 架 ( 版 本 为GPU2. 0) 作为后端支持,编程语言为 Python( 版本为3. 7) ,集成开发环境( IDE) 为 Pycharm。

模型训练

采用 CNN-GRU 神经网络构建温室出菇房多点温湿度预测模型,作为评价出菇房的整体环境状态。对于时间步长的选取,若时间步长过长则会造成数
据冗余,影响模型的收敛速度,若时间步长过短,则不能对模型的输出进行完全充分的表达,影响其预测精度,设置时间步长为 9。利用 Adam 优化算法不断地调整模型参数,使模型的性能达到最优。为了避免模型陷入局部最小值,经过多次实验,初始学习率设置为 0. 001,每迭代 100 次学习率调整为原来的 10% ,迭代 200 次后损失值趋于稳定值,效果达到最优。

实验结果

通过对比实验,分别使用BP,LSTM,GRU与CNN-GRU对比得出结果。

基于 CNN-GRU 的菇房多点温湿度预测方法研究 学习记录相关推荐

  1. 基于注意力机制的 CNN-BiGRU 短期电力负荷预测方法

    提出了一种基于 Attention 机制的CNN-BiGRU(卷积神经网络+双向GRU+注意力机制)短期电力负荷预测方法,该方法将历史负荷数据作为输入,搭建由一维卷 积层和池化层等组成的 CNN 架构 ...

  2. 基于FPGA实现的高速串行交换模块实现方法研究

    基于FPGA实现的高速串行交换模块实现方法研究 https://wenku.baidu.com/view/9a3d501a227916888486d7ed.html 转载于:https://www.c ...

  3. 一种基于Gradient Boosting的公交车运行时长预测方法

    一种基于Gradient Boosting的公交车运行时长预测方法 赖永炫1,2, 杨旭3, 曹琦4, 曹辉彬1,2, 王田5, 杨帆6 1 厦门大学信息学院,福建 厦门 361005 2 厦门大学深 ...

  4. 基于Kaggle心脏病数据集的数据分析和分类预测-StatisticalLearning统计学习实验报告

    基于Kaggle心脏病数据集的数据分析和分类预测-StatisticalLearning统计学习实验报告 一.实验准备 本数据来源于kaggle,包含14个维度,303个样本,具体的变量说明如下表所示 ...

  5. 基于迁移学习的旋转机械故障诊断方法研究学习笔记

    基于迁移学习的旋转机械故障诊断方法研究学习笔记 现在大一点的神经网络模型也要求数据量的足够大,但是对于小样本的数据,有一些神经网络模型也能够处理的很好 2. 这是现在神经网络也要求的数据最好能够独立同 ...

  6. 论文学习——基于循环神经网络的电信行业容量数据预测方法

    文章目录 0 封面 1 标题 title 2 摘要 abstract 3 关键字 keywords 4 总结 conclusion 5 引言 introduction 6 介绍 LSTM 6.1 LS ...

  7. wps 模拟分析 规划求解_【论文】基于双层规划的应急物资邮政运输模型优化方法研究...

    戳上面的蓝字关注我们哦! 基于双层规划的应急物资邮政运输模型优化方法研究 周海霞1,2, 梅育荣1,2, 吕福如1,2, 孙知信1,2 1 南京邮电大学国家邮政局邮政行业技术研发中心(物联网技术),江 ...

  8. ansys 内聚力模型_基于内聚力模型(CZM)的单筋拉拔数值分析方法研究

    基于内聚力模型( CZM )的单筋拉拔数值分析方法研究 景剑 1 , 强峰 2 , 施凯 1 [摘 要] [摘 要]目前化学植筋粘结性能数值模拟中界面单元均以双弹簧单元 为主,但是模拟结果与相应的试验 ...

  9. 基于注意力机制的循环神经网络对 金融时间序列的应用 学习记录

    摘要: 概况论文内容,包含解决的问题,解决的方法,成果 金融时间序列由于高噪声性以及序列间的相关性,导致传统模型的预测精度和泛化能力往往较低.为了克服这一问题,提出一种基于注意力机制的循环神经网络预测 ...

最新文章

  1. 2021-2027全球与中国经颅磁刺激仪(TMS)市场现状及未来发展趋势
  2. SparkR对R的支持情况
  3. jQuery 分页插件 jPages 使用
  4. python内置函数表_python学习系列--python内置函数(一)
  5. 不止性能优化,移动端 APM 产品研发技能
  6. QT信号和槽函数学习笔记
  7. react学习(32)----onref
  8. 错误检测dP-bitstream-ei_flag runRestrictRef
  9. 手机端使用ghelper_Anki手机端使用指南(一)
  10. 1030利用三层交换机实现VLAN间通信
  11. python21天打卡Day6-元组
  12. 深度学习TF—6.神经网络过拟合及reduce overfitted
  13. 【学习OpenCV4】聊聊图像格式
  14. python语言标识符首字符不能是汉字_python二级电子教案 第2章 Python语言基本语法元素...
  15. Unity打开.exe文件
  16. 小学老师如何与不同性格的家长沟通?
  17. 推荐几个IDEA插件,Java开发者撸码神器。
  18. 比特率 波特率 数据传输速率 区别;波特率与比特率--转换公式
  19. 当心!共享单车二维码暗藏信息安全隐患
  20. 【移动开发】2022 年 12 大移动应用程序开发趋势

热门文章

  1. 如何删除文件权限中的@符号
  2. 基于智慧杆的井盖物联网监测应用
  3. 使用mpf画出k线图和唐奇安通道线
  4. 在查找预编译头时遇到意外的文件结尾。是否忘记了向源中添加“#include stdafx.h”?错误解决办法
  5. 【论文阅读】Causal Imitative Model for Autonomous Driving
  6. 程序员:为什么受伤的总是我
  7. 性李 起一个如诗如梦一般的名字 三个字组成
  8. Description Type Target runtime Apache Tomcat v8.5 is not defined.
  9. c语言春季高考试题,2018年春季高考数学真题完整
  10. gcc编译命令的常用选项——强烈推荐大家使用 -Wall 选项