0


卷积神经网络CNN的数据回归预测,多输入单输出模型。(主要应用于风速,负荷,功率)

%% 清空环境变量
warning off % 关闭报警信息
close all % 关闭开启的图窗
clear % 清空变量
clc % 清空命令行
tic
% restoredefaultpath

%% 导入数据
P_train = xlsread('data','training set','B2:G191')';
T_train= xlsread('data','training set','H2:H191')';
% 测试集——44个样本
P_test=xlsread('data','test set','B2:G45')';
T_test=xlsread('data','test set','H2:H45')';
%% 划分训练集和测试集
M = size(P_train, 2);
N = size(P_test, 2);

%% 数据归一化
[p_train, ps_input] = mapminmax(P_train, 0, 1);
p_test = mapminmax('apply', P_test, ps_input);

[t_train, ps_output] = mapminmax(T_train, 0, 1);
t_test = mapminmax('apply', T_test, ps_output);

%% 数据的一个转换,转换成MATLAB的CNN的输入数据形式,是4-D形式的,最后一维就是样本数
trainD=reshape(p_train,[size(p_train,1),1,1,M]);%训练集输入
testD =reshape(p_test, [size(p_train,1),1,1,N]); %测试集输入
targetD = t_train;%训练集输出
targetD_test = t_test;%测试集输出

%% CNN模型建立

layers = [
imageInputLayer([size(p_train,1) 1 1]) %输入层参数设置
convolution2dLayer(3,16,'Padding','same')%卷积层的核大小、数量,填充方式
reluLayer %relu激活函数
fullyConnectedLayer(1) % 输出层神经元
regressionLayer]; % 添加回归层,用于计算损失值
%% 模型训练与测试

options = trainingOptions('adam', ...
'MaxEpochs',500, ...
'MiniBatchSize',128, ...
'InitialLearnRate',0.05, ...

标签: 人工智能

本文转载自: https://blog.csdn.net/qq_43916303/article/details/128091646
版权归原作者 关注:智能算法及其模型预测 所有, 如有侵权,请联系我们删除。

“卷积神经网络CNN的数据回归预测,多输入单输出模型。(主要应用于风速,负荷,功率)”的评论:

还没有评论