基于BP神经网络的特征变量筛选

作品简介

1、变量筛选 MIV算法的初步实现(增加或者减少自变量)

利用原始数据训练一个正确的神经网络

变量筛选 MIV算法的后续实现(差值计算)

MIV的值为各个项网络输出的MIV值 MIV被认为是在神经网络中评价变量相关的最好指标之一,其符号代表相 关的方向,绝对值大小代表影响的相对重要性。

2、部分代码

clc
clear
% 设置步长
interval=0.01;
% 产生x1 x2
x1=-1.5:interval:1.5;
x2=-1.5:interval:1.5;
% 产生x3 x4(噪声)
x=rand(1,301);
x3=(x-0.5)*1.5*2;
x4=(x-0.5)*1.5*2;
% 按照函数先求得相应的函数值,作为网络的输出。
F =20+x1.^2-10*cos(2*pi*x1)+x2.^2-10*cos(2*pi*x2);
%设置网络输入输出值
p=[x1;x2;x3;x4];
for i=1:n
 eval(['result_de',num2str(i),'=transpose(result_de',num2str(i),');'])
end
for i=1:n
 IV= ['result_in',num2str(i), '-result_de',num2str(i)];
 eval(['MIV_',num2str(i) ,'=mean(',IV,');'])
end


3、结果展示

MIV的值为各个项网络输出的MIV值 MIV被认为是在神经网络中评价变量相关的最好指标之一,其符号代表相 关的方向,绝对值大小代表影响的相对重要性。可根据MIV_1-MIV_4进行排序。



创作时间:2022-11-17 10:43:57