基于深度神经网络DNN区间预测,深度神经网络DNN的核密度估计下置信区间预测。DNN-KDE区间预测。多变量区间预测,单变量也可做请私聊。区间预测(区间覆盖率PICP、区间平均宽度百分比PIN

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

res = xlsread('数据集.xlsx');
%%
num_size = 0.8;% 训练集占数据集比例
dataran = 0; %不打乱数据
%%
    %%  数据分析
    outdim = 1;                                  % 最后一列为输出
    num_samples = size(res, 1);                  % 样本个数
    num_train_s = round(num_size * num_samples); % 训练集样本个数
    AA1 = res(1:num_train_s,:);
    AA2 = res(num_train_s+1:end-1,:);
    AA3 = res(end,:);
    clear res;
    if dataran == 1 
        AA1 = AA1(randperm(size(AA1, 1)), :);         % 打乱数据集
        AA2 = AA2(randperm(size(AA2, 1)), :);         % 打乱数据集
    end
    res=[AA1;AA2;AA3];
    f_ = size(res, 2) - outdim;                  % 输入特征维度
    %%  划分训练集和测试集
    P_train = res(1: num_train_s, 1: f_)';
    T_train = res(1: num_train_s, end)';
    M = size(P_train, 2);

    P_test = res(num_train_s + 1: end, 1: f_)';
    T_test = res(num_train_s + 1: end, end)';
    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);

智能算法及其模型预测