基于分位数回归的长短期记忆神经网络(QRLSTM)的MATLAB实现(源代码)

分位数回归的长短期神经记忆网络介绍:
QRLSTM(Quantile Regression Long Short-Term Memory)分位数回归神经网络是一种结合了长短期记忆(LSTM)神经网络和分位数回归的模型。这种神经网络结构旨在对数据的不同分位数进行回归预测,而不仅仅是预测均值。分位数回归的长短期记忆神经网络结合了LSTM的序列建模能力和分位数回归的非参数特性,可以更全面地了解数据的分布情况,在金融领域、气象预测等需要对不确定性进行建模的领域有着广泛的应用。
通过训练QRLSTM模型,可以得到不同分位数下的预测结果,从而更好地理解数据的分布情况,并能够提供更全面的风险评估和决策支持。
分位数回归根据是不同分位数下自变量的变化情况,以便于更好的根据不同分位点下的信息进行分析解释。当我们不仅希望研究响应变量的期望均值,而且希望能探索响应 变量的全局分布,普通的线性回归就不再起作用,这时候就需要分位数回归了。1978年 Koenker和Bassett提出了分位数回归的概念,弥补了最小二乘法估计存在的缺陷,处理了其在有离群值、多峰值的样本的拟合,解决了最小二乘法完成无法比如异方差、尖峰等多种问题数据的分析的相关问题,可以描述响应变量的全局特征,可以挖掘到更为丰富的信息,另外分位数回归估计采用的是加权的最小绝对离差和(weighted lest absolute deviation,WLAD)法进行稳健估计,使得存在误差的模型上的估计方法依旧可以使用。 许启发等提出了一种改进的分位数,这种改进后的条件分位数和传统的均值回归方法相比能够大幅提高预测的精确度。事实上,均值回归是特殊的分位数回归,就是分为点为 0.5的情况,所以改进后的条件分位数除了这一点还有很多分位点,可以更好地描绘负荷在不同分位点的分布情况,且该方法还能推广延伸到条件概率分布,是非参数统计方法之一。

图源来自论文:A hybrid carbon price prediction model based-combinational estimation strategies of quantile regression and long short-term memory
QRLSTM网络搭建:

%   for i = 0.05:0.15:0.95 % 90%置信区间
                          
    layers = [
        sequenceInputLayer([L, 1, 1], "Name", "sequence")                 % 建立输入层,输入数据结构为[f_, 1, 1]
        flattenLayer("Name", "flatten")                                    % 网络铺平层
        lstmLayer(lstmnumber,'Name','lstm1',"OutputMode", "last")                    % lstm层
        fullyConnectedLayer(1, "Name", "fc")                               % 全连接层
        quanRegressionLayer('out',i)];                      % 分位数回归层
   
%%  参数设置
options = trainingOptions('adam', ...      % Adam 梯度下降算法
    'MaxEpochs', 100, ...                 % 最大迭代次数
    'InitialLearnRate', 1e-2, ...          % 初始学习率为0.01
    'LearnRateSchedule', 'piecewise', ...  % 学习率下降
    'LearnRateDropFactor', 0.1, ...        % 学习率下降因子 0.1
    'LearnRateDropPeriod', 90, ...        % 经过90次训练后 学习率为 0.01 * 0.1
    'Shuffle', 'every-epoch', ...          % 每次训练打乱数据集
    'Verbose', 1);

训练结果:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
完整代码获取:QRLSTM代码

  • 4
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

沅_Yuan

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值