上海交通大学学报(自然版), 2021, 55(9): 1080-1086 doi: 10.16183/j.cnki.jsjtu.2020.433

基于互信息理论与递归神经网络的短期风速预测模型

王岩a, 陈耀然a, 韩兆龙a,b,c, 周岱,a,b,c, 包艳a,b,c

a. 上海交通大学 船舶海洋与建筑工程学院, 上海 200240

b.上海交通大学 海洋工程国家重点实验室, 上海 200240

c.上海交通大学 水动力学教育部重点实验室,上海 200240

Short-Term Wind Speed Forecasting Model Based on Mutual Information and Recursive Neural Network

WANG Yana, CHEN Yaorana, HAN Zhaolonga,b,c, ZHOU Dai,a,b,c, BAO Yana,b,c

a. School of Naval Architecture, Ocean and Civil Engineering, Shanghai Jiao Tong University, Shanghai 200240, China

b. State Key Laboratory of Ocean Engineering, Shanghai Jiao Tong University, Shanghai 200240, China

c. Key Laboratory of Hydrodynamics of the Ministry of Education, Shanghai Jiao Tong University, Shanghai 200240, China

通讯作者: 周 岱,男,教授,博士生导师,电话(Tel.):18964941977;E-mail:zhoudai@sjtu.edu.cn

责任编辑: 孙伟

收稿日期: 2020-12-25  

基金资助: 上海市教育委员会科研创新计划自然科学重大项目(2019-01-07-00-02-E00066)
国家自然科学基金(51879160)
国家自然科学基金(42076210)
国家自然科学基金(11772193)
上海市“东方学者”计划(TP2017013)
上海市曙光学者计划(19SG10)

Received: 2020-12-25  

作者简介 About authors

王岩(1994-),男,河北省保定市人,硕士生,研究方向为机器学习在风电中的应用 。

摘要

风速的波动性和随机性为风电并网造成安全隐患,提高风速预测精度对于风电系统的稳定和风能发展十分重要.提出一种基于互信息(MI)理论和递归神经网络(RNN)的短期风速预测组合新模型(MI-RNN).该模型利用MI理论选择最优的历史风速序列长度(τ),通过每τ步预测下一时间点风速的方式,将历史风速数据输入RNN中进行模型训练,并由训练后的RNN模型输出最终的风速预测结果.将MI-RNN模型应用于风电场的风速数据集中,与传统机器学习风速预测模型进行比较,以验证模型的预测精度.结果显示,MI-RNN模型的预测精度更高,预测稳定性更强,并且能够准确预测未来风向,有望应用于含空间维度的风电场的风速预测.

关键词: 风速预测; 风能; 互信息理论; 深度学习; 递归神经网络; 风电场

Abstract

The volatility and randomness of wind speed have caused potential safety hazards to wind power grid integration. Improving wind speed forecasting is crucial to the stability of wind power systems and the development of wind energy. A novel short-term wind speed forecasting model (MI-RNN) was proposed based on mutual information (MI) and recursive neural network (RNN). In this model, the MI theory was introduced to select the optimal length of historical wind speed sequence (τ), and the method of using each τ step to forecast wind speed at the next time point was adopted to input the historical wind speed data into RNN for model training. The final wind speed forecasting result was output by the trained RNN model. Besides, the MI-RNN model was applied to the wind speed dataset collected from a wind farm and the forecasting accuracy was compared with that of the traditional wind forecasting methods. The results show that the MI-RNN model has achieved a higher forecasting accuracy compared with the commonly used wind farm wind speed forecasting methods, and can accurately forecast the future wind direction, which is expected to be applied to wind speed forecasting of wind farms with spatial dimensions.

Keywords: wind speed forecasting; wind energy; mutual information (MI); deep learning; recurrent neural network (RNN); wind farm

PDF (3483KB) 元数据 多维度评价 相关文章 导出 EndNote| Ris| Bibtex  收藏本文

本文引用格式

王岩, 陈耀然, 韩兆龙, 周岱, 包艳. 基于互信息理论与递归神经网络的短期风速预测模型[J]. 上海交通大学学报(自然版), 2021, 55(9): 1080-1086 doi:10.16183/j.cnki.jsjtu.2020.433

WANG Yan, CHEN Yaoran, HAN Zhaolong, ZHOU Dai, BAO Yan. Short-Term Wind Speed Forecasting Model Based on Mutual Information and Recursive Neural Network[J]. Journal of shanghai Jiaotong University, 2021, 55(9): 1080-1086 doi:10.16183/j.cnki.jsjtu.2020.433

风能是一种清洁、经济的可再生能源.但是,风速的间歇性和波动性导致风力发电机的输出功率难以预测,进而为风电并网、能源输送和风电场制定交易计划等造成困难[1].开展风电场短期(未来1 h内)风速预测成为解决上述问题的关键[2].

目前,主要利用统计方法进行风电场的短期风速预测[3].该方法利用历史风速数据,建立历史风速与未来风速之间的统计模型而预测风速,具体方法包括时间序列和机器学习等[4].时间序列模型是线性统计模型,而风速序列模型是波动性和随机性较强的非线性统计模型,因此时间序列法预测风速的效果不佳[5].

机器学习是人工智能的一个分支,其在风速预测方面具有较强的非线性建模能力.人工神经网络(ANN)是典型的机器学习方法,其从信息处理的角度对人脑神经元网络进行抽象表达,进而建立非线性数学模型[6].Santhosh等[7]利用经验模态分解,将原始风速分解为多个子序列,并利用ANN分别对子序列进行建模预测.结果显示,相较于基于时间序列法的风速预测模型,基于ANN的模型的预测误差显著降低.支持向量机(SVM)作为另一种机器学习方法,其主要思想为先利用一个预设函数将原始输入和输出数据映射到高维特征空间,然后在该空间进行线性回归,使误差最小化.范曼萍等[8]利用SVM建立历史风速与未来风速之间的数学模型,并利用改进粒子群算法优化SVM的参数,通过收缩因子改进粒子速度更新方式.结果显示,基于SVM风速预测结果的平均相对误差为3.72%,预测精度显著提高.然而,ANN和SVM等传统机器学习方法模型仅将历史数据进行统一输入,而未充分考虑风速序列随时间的变化趋势,因此难以得到关于时间序列问题的高精度风速预测结果.

针对上述问题,提出一种风电场短期风速预测组合新模型,即基于互信息(MI)和递归神经网络(RNN)的短期风速预测模型(MI-RNN).将该模型应用于美国加利福尼亚州某风电场的2个风速数据集,进行数值实验,并与ANN和SVM进行比较分析,评价模型的预测精度.不同于上述机器学习方法,该模型中RNN加入t时刻的隐藏状态作为记忆单元,该隐藏状态中记录着t时刻的输出值,同时作为下一时刻的输入值,由此可以更有效地解决时间序列问题[9].该模型的创新点包括:①利用MI选择用于预测未来风速的历史风速长度,能够更有效地利用历史信息且无冗余数据,进而显著提高预测精度;②利用带记忆单元的RNN提取历史风速数据与未来风速之间的映射关系,历史信息提取能力更高.

1 理论方法

1.1 输入变量选择与MI理论

输入变量的选择对模型的预测能力有重要影响.针对建立的风速预测模型,给定历史风速序列(Ft-1, Ft-2, …, Ft-τ),进行下一时刻风速(Ft)的预测,历史风速序列的长度(τ)由选择的输入变量决定.若τ太短,则历史数据中包含的信息太少,模型精度低;若τ太长,则模型参数优化困难且包含冗余历史信息,模型精度低且训练时间长.

MI理论能够衡量一个随机变量中包含另一个随机变量的信息量.假设2个随机变量(X1, Y1)的联合分布为p(x1, y1),边缘分布为p(x1)和p(y1),则互信息I(x1;y1)为联合分布和边缘分布的相对熵[10]:

I(x1;y1)= x1X1y1Y1p(x1,y1)log p(x1,y1)p(x1)p(y1)

1.2 递归神经网络

RNN是用于解决时间序列问题的机器学习模型,一个时间序列中的时间点对应一个普通前馈神经网络,并在每个时间点加入一个记忆单元记录其输出值,将输出值传递给下一时刻[11],数学表达式为

ht=σ(UXt+Wht-1)

Ot=f(ht)

式中:h为状态值;σ(·)为状态激活函数;Ut时刻输入的权重;Wt-1时刻状态的权重;XO为神经网络的输入值和输出值;f(·)为生成神经网络输出值的函数.

图1τ=3的RNN模型图,时间序列中共包括3个时刻(t-1, t, t+1)的神经网络.本文将风速作为神经网络的输入值,Ot+1为RNN的最终预测值.每个时刻计算得到的隐藏层状态Ot-1均将传给下一时刻,从而保证前一时刻提取的历史信息可以传递到下一时刻.因此,图中Ot-1应为Xt的预测值,当采用每τ个风速预测一步时,则会产生τ个输出值,只保留最后一个输出值作为最终预测值.

图1

图1   RNN模型结构图

Fig.1   RNN structure


模型的训练过程即确定参数WU的过程.训练过程的本质为优化,优化目标为缩小预测值与观测值的误差.利用误差函数对WU求梯度,训练过程中逐渐降低梯度值至0附近,从而确定模型参数.然后,将历史数据输入到RNN中并输出最终预测结果.

2 MI-RNN模型

2.1 模型基本信息

图2为MI-RNN流程图.其中,上标xy表示经分解后的风速方向,下标表示时刻;F为风速观测值,θ为风向观测值, F^θ^分别为MI-RNN模型预测的风速值和风向值,β为预报提前量.对于序列(Ft-1, Ft-2, …, Ft-τ),通过MI选择最优时间步长τ,利用每τ个历史风速观测值预测t-1+β时刻风速的方式,将历史风速观测值序列输入到RNN中,训练模型并建立(Ft-1, Ft-2, …, Ft-τ)到 Ft-1+βx的非线性映射.

图2

图2   MI-RNN流程图

Fig.2   Flow chart of MI-RNN


为了实现带有风向的风电场风速预测,将风速数据进行正交分解:

Fix=FicosθiFiy=Fisinθi

式中:i=1, 2, …, t-1.然后使用MI-RNN模型预测t-1+β时刻的风速并进行组合:

F^t-1+βx=f(F1x,F2x,,Ft-1x)F^t-1+βy=f(F1y,F2y,,Ft-1y)

2.2 基于MI理论选择时间步长

图3I(τ)-τ变化曲线.其中,I(τ)为FtFt-τ之间的互信息,是一个递减函数.可以通过选择互信息阈值(IC)来确定τ值大小.通常依据经验选择IC,本文选择IC=2,确定时间步长τ = 6.

图3

图3   I(τ)-τ曲线

Fig.3   I(τ) versus τ


2.3 RNN模型训练

将历史风速观测值数据以某时刻为界划分为训练集和测试集,训练集用于训练RNN模型,测试集用于测试模型的预测结果是否准确.当模型训练完成后,输入τ个新历史风速序列,RNN模型将输出新的风速预测值.

3 数值算例

3.1 算例1

为验证MI-RNN模型的性能,选择SVM和 ANN作为比较模型,讨论MI-RNN模型的风速预测精度.利用Adam优化算法进行模型训练,3个模型均使用scikit-learn机器学习库[12]和PyTorch框架[13].

3.1.1 间隔15 min的风速数据集 采用美国加利福尼亚州某风电场的风速数据,并对模型进行测试和训练.每间隔15 min得到一个风速观测值,数据集总量为480个,80%的数据用作训练集,20%的数据用作测试集.图4为风速观测值数据集的曲线,表1为统计信息.其中, F-σFFminFmax分别为观测值的平均值、标准差、最小值和最大值.

图4

图4   观测间隔为15 min的风速数据集

Fig.4   Wind speed dataset with an interval of 15 min


表1   观测间隔为15 min的风速数据集统计信息

Tab.1  Wind speed dataset statistics at an interval of 15 min

数据量/个F-/
(m·s-1)
σF/
(m·s-1)
Fmin/
(m·s-1)
Fmax/
(m·s-1)
训练集测试集
384968.4512.4382.48114.642

新窗口打开| 下载CSV


3.1.2 模型评估指标 模型评估指标能够评价模型预测结果的精度.分别利用均方根误差(RMSE)、平均绝对误差(MAE)和决定系数(R2)对模型点预测结果进行统计.

RMSE和MAE用于描述预测值与观测值的误差情况,但区别在于:RMSE对预测值与观测值的偏差进行了一次平方,容易将误差放大[14];R2用于评价风速预测模型的平均预测精度[15].公式如下:

RMSE= 1Tei=1Te(F^i-Fi)2

MAE= 1Tei=1Te| F^i-Fi|

R2=1- i=1Te(F^i-Fi)2i=1Te(Fi-F-i)2

式中:Te为总观测量.RMSE和MAE越接近0,R2越接近于1,则模型的预测精度越高.

3.1.3 结果与讨论 为加强模型预测结果的可视化,对3个模型的预测和评估结果作图,如图5~8所示.

图5

图5   预测误差统计

Fig.5   Forecasting error statistics


图6

图6   观测间隔为15 min的风速预测结果

Fig.6   Wind speed forecasting results at an interval of 15 min


图7

图7   模型在不同指标下的评估结果

Fig.7   Evaluation results of the models at different indicators


图8

图8   风速预测结果分布图

Fig.8   Distribution of wind speed forecasting results


图5中,MI-RNN模型的预测误差平均值的绝对值最小(小于0.1 m/s),SVM模型次之(约为 0.2 m/s),ANN模型最大(大于0.3 m/s).3个模型预测误差的中位数和平均值相差较小,1/4~3/4分位数据范围的宽度相差较小(约为1.2 m/s).MI-RNN 和ANN模型的预测误差均有大于0的离群值,但MI-RNN模型的离群值较少.结果表明:与ANN和SVM模型相比,MI-RNN模型预测结果的平均误差最小,且离群值较少,预测精度更佳.

图6中,MI-RNN模型的预测值与观测值相差较小,且在风速小或大的情况下均能够精准预测.而ANN和SVM模型的预测值与观测值相差较大,存在明显预测误差.其中,SVM模型在风速较小时误差较大,在风速较大时误差更大;ANN模型在风速小或大时误差均较大.结果表明:与ANN和SVM模型相比,MI-RNN模型的预测精度更高,且在不同风速范围下的预测稳定性更佳.

图7中,MI-RNN模型的RMSE和MAE值均最小,R2值最大,说明MI-RNN模型的预测精度最高.3个模型在3个评估指标下的详细统计结果如图表2所示.其中,MI-RNN模型的R2值最大,且其RMSE和MAE值比ANN模型的均降低了50%以上, 比SVM模型的分别降低了约21%和41%.进一步表明MI-RNN模型在提高预测精度方面的优势明显.

表2   模型在不同指标下的统计结果

Tab.2  Statistical results of models at different indicators

模型RMSE/(m·s-1)MAE/(m·s-1)R2
MI-RNN0.2370.1920.992
ANN0.4900.4370.965
SVM0.2990.3250.977

新窗口打开| 下载CSV


图8中,直线由预测值等于观测值的数据点组成,MI-RNN的预测结果均匀地分布在直线附近,数据点距离直线较近,表明MI-RNN模型的预测结果更接近于观测值,且不受风速大小影响.而ANN模型的预测结果距离直线较远,且在直线下方的数据点较多,说明ANN模型的预测误差较大,且预测结果更容易低于观测值.在风速较大时,SVM模型的数据点更多地集中在直线下方,说明其预测结果在风速较大时更容易低于观测值.

综上所述,相比于ANN和SVM模型,MI-RNN模型能够显著提高风速预测精度,且预测稳定性良好,可以更精准地预测未来风速.

3.2 算例2

探讨不同预报提前量条件下MI-RNN模型的预测效果以及风向预测性能.

3.2.1 间隔5 min的风速数据集 采用美国加利福尼亚州某风电场一年的风速数据作为模型的训练数据和测试数据.每间隔5 min得到一个风速观测值,数据总量为 105120 个,80%的数据用做训练集,20%的数据用作测试集,统计信息如表3所示.其中, θ-σθ分别为风向观测值的平均值和标准差.

表3   观测间隔为5 min的风速数据集的统计信息

Tab.3  Wind speed dataset statistics at an interval of 5 min

数据量/个F-(m·s-1)σF(m·s-1)θ-/(°)σθ/(°)
训练集测试集
84096210249.744.429.744.42

新窗口打开| 下载CSV


3.2.2 结果与讨论 为加强模型预测结果的可视化,选择测试集中前96个时间点的数据进行结果展示.对3个模型在不同预报提前量下的预测误差结果作图,如图9所示.当预测间隔为5 min时,MI-RNN模型的风速预测结果如图10所示,其矢量图如图11所示.

图9

图9   模型在不同预报提前量下的RMSE对比

Fig.9   Comparison of RMSE at different forecasting advances


图10

图10   预测间隔为5 min的风速预测结果

Fig.10   Wind speed forecasting results at an interval of 5 min


图11

图11   风速预测结果矢量图

Fig.11   Vector of wind speed forecasting result


图9中,各模型的预测误差均随着β值的增大而逐渐增大,说明 Ft-1+βx与(Ft-1, Ft-2, …, Ft-τ)之间的相关性随着β值的增大而减小.当β=1时,相比于3.1节中的误差,图9中各模型的误差均更小.原因一方面为RMSE先对偏差进行了一次平方,误差被放大;另一方面为本算例数据平均风速和标准差更大,变化更剧烈,预测更困难.当β值相同时,各模型之间横向对比结果显示:MI-RNN模型的预测误差比ANN和SVM模型的预测误差更小.表明MI-RNN模型在不同预报提前量下的预测精度比ANN和SVM模型更高.

图10中, MI-RNN模型的风速预测值与观测值相差很小,在不同风速变化区间表现稳定,预测精准;在图11中,MI-RNN模型的预测风向与观测风向值之间的误差也较小.说明MI-RNN模型不仅能够降低风速预测误差,还能够精确地预测未来风向信息.

4 结论

风速的波动性和随机性给风电并网造成安全隐患,影响风能利用质量,高精度的风速预测是解决该问题的方法之一.本文提出MI-RNN模型,并将MI-RNN模型应用于美国加利福尼亚州某风电场真实数据集,验证模型的预测精度,同时使用RMSE、 MAE和R2等指标评估模型的点预测结果,主要结论如下:

(1) ANN和SVM模型对风速在不同变化区间的预测精度不稳定;在风速较大时,易出现预测值小于观测值的情况.

(2) 相对于ANN和SVM模型,MI-RNN模型在不同预报提前量下的预测结果误差均最小,风速预测精度更高,且风速越大其精度提升越显著;同时能够准确预测未来风向.

(3) MI-RNN模型能够应用于风电场短期(未来1 h内)风速预测,提高风电场输出功率预测精度,降低大规模风电并网安全隐患.

文中研究了单个空间点的风速预测,下一步将研究深度学习方法在含空间维度的风电场风速预测中的应用.

参考文献

ZHANG Z D, YE L, QIN H, et al.

Wind speed prediction method using shared weight long short-term memory network and Gaussian process regression

[J]. Applied Energy, 2019, 247:270-284.

DOI:10.1016/j.apenergy.2019.04.047      URL     [本文引用: 1]

CHEN J, ZENG G Q, ZHOU W, et al.

Wind speed forecasting using nonlinear-learning ensemble of deep learning time series prediction and extremal optimization

[J]. Energy Conversion and Management, 2018, 165:681-695.

DOI:10.1016/j.enconman.2018.03.098      URL     [本文引用: 1]

KHOSRAVI A, MACHADO L, NUNES R.

Time-series prediction of wind speed using machine learning algorithms: A case study Osorio wind farm, Brazil

[J]. Applied Energy, 2018, 224:550-566.

DOI:10.1016/j.apenergy.2018.05.043      URL     [本文引用: 1]

MORENO S R, LEANDRO D S C.

Wind speed forecasting approach based on Singular Spectrum Analysis and Adaptive Neuro Fuzzy Inference System

[J]. Renewable Energy, 2018, 126:736-754.

DOI:10.1016/j.renene.2017.11.089      URL     [本文引用: 1]

张驰.

风电场短期风速预测若干问题研究

[D]. 南京:东南大学, 2017.

[本文引用: 1]

ZHANG Chi.

Research on some issues of short-term wind speed forecasting for wind farms

[D]. Nanjing: Southeast University, 2017.

[本文引用: 1]

JAHANGIR H, GOLKAR M A, ALHAMELI F, et al.

Short-term wind speed forecasting framework based on stacked denoising auto-encoders with rough ANN

[J]. Sustainable Energy Technologies and Assessments, 2020, 38:100601.

DOI:10.1016/j.seta.2019.100601      URL     [本文引用: 1]

SANTHOSH M, VENKAIAH C, KUMAR D M V.

Ensemble empirical mode decomposition based adaptive wavelet neural network method for wind speed prediction

[J]. Energy Conversion and Management, 2018, 168:482-493.

DOI:10.1016/j.enconman.2018.04.099      URL     [本文引用: 1]

范曼萍, 周冬.

基于改进粒子群优化LS-SVM的短期风速预测

[J]. 电力学报, 2020, 35(2):123-128.

[本文引用: 1]

FAN Manping, ZHOU Dong.

Shortterm wind speed prediction based on improved particle swarm optimization LS-SVM

[J]. Journal of Electric Power, 2020, 35(2):123-128.

[本文引用: 1]

HOCHREITER S, SCHMIDHUBER J.

Long short-term memory

[J]. Neural Computation, 1997, 9(8):1735-1780.

DOI:10.1162/neco.1997.9.8.1735      URL     [本文引用: 1]

TRAPPENBERG T, OUYANG J, BACK A.

Input variable selection: Mutual information and linear mixing measures

[J]. IEEE Transactions on Knowledge and Data Engineering, 2006, 18(1):37-46.

DOI:10.1109/TKDE.2006.11      URL     [本文引用: 1]

LIU H, MI X W, LI Y F.

Smart multi-step deep learning model for wind speed forecasting based on variational mode decomposition, singular spectrum analysis, LSTM network and ELM

[J]. Energy Conversion and Management, 2018, 159:54-64.

DOI:10.1016/j.enconman.2018.01.010      URL     [本文引用: 1]

PEDREGUSA F, VAROQUAUX G, GRAMFORT A, et al.

Scikit-learn: Machine learning in python

[J]. Journal of Machine Learning Research, 2011, 12:2825-2830.

[本文引用: 1]

PASZKE A, GROSS S, MASSA F, et al.

Pytorch: An imperative style, high-performance deep learning library

[C]// 33rd Conference on Neural Information Processing Systems (NeurIPS 2019). Vancouver, Cana-da: NeurIPS, 2019: 8026-8037.

[本文引用: 1]

CHAI T, DRAXLER R R.

Root mean square error (RMSE) or mean absolute error (MAE)?—Arguments against avoiding RMSE in the literature

[J]. Geoscientific Model Development, 2014, 7(3):1247-1250.

DOI:10.5194/gmd-7-1247-2014      URL     [本文引用: 1]

QUININO R C, REIS E A, BESSEGATO L F.

Using the coefficient of determination R2 to test the significance of multiple linear regression

[J]. Teaching Statistics, 2013, 35(2):84-88.

DOI:10.1111/test.2013.35.issue-2      URL     [本文引用: 1]

/