如何做网站图片切换,哈尔滨网站建设推广,建设网上商城网站的目的和意义,万网可以花钱做网站微❤关注“电气仔推送”获得资料#xff08;专享优惠#xff09;
主要内容#xff1a;
LSTM-AdaBoost负荷预测模型先通过 AdaBoost集成算法串行训练多个基学习器并计算每个基学习 器的权重系数,接着将各个基学习器的预测结果进行线性组合,生成最终的预测结果。代码中的LST…微❤关注“电气仔推送”获得资料专享优惠
主要内容
LSTM-AdaBoost负荷预测模型先通过 AdaBoost集成算法串行训练多个基学习器并计算每个基学习 器的权重系数,接着将各个基学习器的预测结果进行线性组合,生成最终的预测结果。代码中的LSTM可以替换为任意的机器学习算法。
部分程序
%% 数据归一化 [inputn,inputps]mapminmax(input_train,0,1); [outputn,outputps]mapminmax(output_train); inputn_testmapminmax(apply,input_test,inputps); %% 获取输入层节点、输出层节点个数 inputnumsize(input_train,1); outputnumsize(output_train,1); disp(/) disp(LSTM神经网络结构...) disp([输入层的节点数为,num2str(inputnum)]) disp([输出层的节点数为,num2str(outputnum)])
numFeatures inputnum; %特征为一维 numResponses outputnum; %输出也是一维 numHiddenUnits1 25; %创建LSTM回归网络指定LSTM层的隐含单元个数。可调 layers [ ... sequenceInputLayer(numFeatures) %输入层 lstmLayer(numHiddenUnits1, OutputMode, sequence) fullyConnectedLayer(numResponses) %为全连接层,是输出的维数。 regressionLayer]; %其计算回归问题的半均方误差模块 。即说明这不是在进行分类问题。 %指定训练选项求解器设置为adam 1000轮训练。 %梯度阈值设置为 1。指定初始学习率 0.01在 125 轮训练后通过乘以因子 0.2 来降低学习率。 options trainingOptions(adam, ... MaxEpochs,1000, ... GradientThreshold, 1, ... InitialLearnRate,0.01, ... LearnRateSchedule,piecewise, ...%每当经过一定数量的时期时学习率就会乘以一个系数。 LearnRateDropFactor, 0.01, ... LearnRateDropPeriod,600, ... %乘法之间的纪元数由 LearnRateDropPeriod控制。可调 Verbose,0, ... %如果将其设置为true则有关训练进度的信息将被打印到命令窗口中。默认值为true。 Plots,training-progress); %构建曲线图 将training-progress替换为none net0 trainNetwork(inputn,outputn,layers,options); an0 predict(net0,inputn_test); %预测结果反归一化与误差计算 test_simu0mapminmax(reverse,an0,outputps); %把仿真得到的数据还原为原始的数量级 %误差指标 error0 output_test - test_simu0; mse0mse(output_test,test_simu0) %% 标准LSTM神经网络作图 figure plot(output_test,b-,markerfacecolor,[0.5,0.5,0.9],MarkerSize,6) hold on plot(test_simu0,r--,MarkerSize,6) title([mse误差,num2str(mse0)]) legend(真实y,预测的y) xlabel(样本数) ylabel(负荷值)
训练进度 预测结果 预测误差