国内做网站最好的公司,新浪微博登录网页版,电子商务静态网站建设心得,电子商务的网站开发目录 背景介绍
1、径向基神经网络结构 2、符号说明
3、计算网络输出 4、计算能量函数
网络学习步骤
步骤1、先将能量函数E写成各参数的复合函数结构
步骤2、求E关于各参数的偏导
步骤3、求各参数的调整量
步骤4、计算各参数的调整量
5、按照步骤1-步骤4编写RBF神经网络…目录 背景介绍
1、径向基神经网络结构 2、符号说明
3、计算网络输出 4、计算能量函数
网络学习步骤
步骤1、先将能量函数E写成各参数的复合函数结构
步骤2、求E关于各参数的偏导
步骤3、求各参数的调整量
步骤4、计算各参数的调整量
5、按照步骤1-步骤4编写RBF神经网络学习程序
6、网络拟合效果与各个参数的关系
6.1 拟合效果与学习次数的关系 6.2 拟合效果与隐含层神经元个数的关系 6.3 学习效率对训练效果的影响
7、添加动量因子的RBF神经网络学习 背景介绍
某消费品女性顾客流失率 周数 流失率 周数 流失率 1 0.531731985 31 0.906074968 2 0.599828865 32 0.910126947 3 0.644564773 33 0.91328894 4 0.671027441 34 0.917005814 5 0.697281167 35 0.920081668 6 0.717013297 36 0.924666569 7 0.732752613 37 0.928067079 8 0.745040151 38 0.932732111 9 0.75565936 39 0.936609264 10 0.763524144 40 0.940518784 11 0.779177473 41 0.94417839 12 0.792189854 42 0.946870779 13 0.806571209 43 0.958960328 14 0.813644571 44 0.961151737 15 0.822233807 45 0.963206107 16 0.826976013 46 0.964973998 17 0.837737352 47 0.967341306 18 0.842773177 48 0.96778647 19 0.854878049 49 0.968232044 20 0.859771055 50 0.970466082 21 0.863536819 51 0.974362934 22 0.865907219 52 0.98011496 23 0.869966906 53 0.98424337 24 0.872734818 54 0.987633062 25 0.875641915 55 0.991046183 26 0.878079332 56 0.995581505 27 0.881514601 57 0.997785861 28 0.886842845 58 1 29 0.891857506 59 1 30 0.898078292 60 1
女性消费商品品牌的黏性非常重要但同时商品又是有生命周期的所以客户群体也会有生命周期老客户会逐渐流失新客户不断加入进来如此便形成了良性客户族新陈代谢。我们需要对客户流失概率进行研究以便做出一些客户关怀和维系的动作以减少客户流失从而使得客户价值最大化。
上表的意义某女装品牌假设第一次购买的客户为新客户则第一周有11865人只买了第一次而后再未购买的客户为6309人。新增客户表示第一周购买之后在后面数周又购买第二次的人数不重复计算。
各周损失率计算方法如下 从未购买的人数/118650.531731 从未购买的人数/11865-13470.599838 … 请用神经网络分析客户任意时间长度没有回头购买的流失率。
1、径向基神经网络结构
径向基神经网络由输入层、隐含层和输出层构成三层前向网络隐含层采用径向基函数为激励函数一般是高斯函数。 2、符号说明
样本输入,容量为n;样本输出r 隐含层的神经元个数第i个神经元的中心和宽度;i1,2,…,rwi 第i个神经元的权值,i1,2,…,r;
3、计算网络输出 设神经网络输入和输出都是线性的则整个隐含层的输入就是样本输入隐含层的输出也是样本输出因此(对第j个样本的)为j1,2,…,n 4、计算能量函数 用最小二乘法拟合参数ci,σi,wi的最佳值。
网络学习步骤
步骤1、先将能量函数E写成各参数的复合函数结构 步骤2、求E关于各参数的偏导 i1,2,…,r
步骤3、求各参数的调整量
为了计算方便先规范样本输入和输出都是行向量(n)权值、中心和宽度向量w,c,σ都是列向量(r)则e(yj-Oj)为n维行向量dji(xj-ci)为n×r矩阵,(pji)p(xj,ci,σi)也是n×r矩阵。则各参数调整量按负梯度方向进行为
步骤4、计算各参数的调整量 i1,2,…,r
其中lrw,lrc,lrσ表示相应参数的学习进度速度。
5、按照步骤1-步骤4编写RBF神经网络学习程序
function [o,eb,s1]BRF(X,Y,lrw,lrc,lrs,sig,r,n)
xmapminmax(X);
[y,s1]mapminmax(Y);
mlength(y);
wrand(r,1)0.1;
crand(r,1);
srand(r,1)0.2;
eb[];
for k1:nd1dist(c,x);d2d1.^2;ss[];for i1:rsrones(1,m)*s(i)^2;ss[ss;sr];endpexp(-d2./ss);o[];for j1:mfor i1:rwp(i)w(i)*p(i,j);endo[o,sum(wp)];endey-o;errsum(e.^2)^0.5;if errsigXtdatetime;disp(Xt);break;endeb[eb,err];dw[];dc[];ds[];for i1:rdw[dw;sum(e.*p(i,:))];dc[dc;w(i)/s(i)^2*sum(e.*p(i,:).*d1(i,:))];ds[ds;w(i)/s(i)^3*sum(e.*p(i,:).*d2(i,:))]; endwwlrw*dw;cclrc*dc;sslrs*ds;
end
t1:m;
plot(t,y,*,t,o,-);legend(ʵ¼ÊÖµ,Ô¤²âÖµ);
6、网络拟合效果与各个参数的关系
6.1 拟合效果与学习次数的关系 取定权学习效率为lrw0.035,中心权值学习lrc 0.01,宽度学习效率为lrs0.01,神经元个数r8残差容量sig0.001分别对练习次数n502005008001500残差效果进行对比结果如图程序见下
clear
Axlsread(d:\kehu.xlsx);
YA;
X1:60;
t1:length(X);
r8;sig0.001;lrw0.035;lrc0.01;lrs0.01;
n50;
[o,eb1,s1]BRF(X,Y,lrw,lrc,lrs,sig,r,n);
subplot(5,1,1);
bar(eb1);
n200;
[o,eb2,s1]BRF(X,Y,lrw,lrc,lrs,sig,r,n);
subplot(5,1,2);
bar(eb2);
n500;
[o,eb3,s1]BRF(X,Y,lrw,lrc,lrs,sig,r,n);
subplot(5,1,3);
bar(eb3);
n800;
[o,eb4,s1]BRF(X,Y,lrw,lrc,lrs,sig,r,n);
subplot(5,1,4);
bar(eb4);
n1500;
[o,eb5,s1]BRF(X,Y,lrw,lrc,lrs,sig,r,n);
subplot(5,1,5);
bar(eb5);clear
Axlsread(d:\kehu.xlsx);
YA;
X1:60;
t1:length(X);arf0.002;n1500;
r10;sig0.003;lrw0.0035;lrc0.0035;lrs0.0035;6.2 拟合效果与隐含层神经元个数的关系
取定权学习效率为lrw0.035,中心学习lrc0.01,宽度学习效率为lrs0.01,残差容量sig0.001学习次数定为n800分别隐含层神经元数r4,8,12,16效果进行对比结果如图程序见下
clear
Axlsread(d:\kehu.xlsx);
YA;
X1:60;n600;
t1:length(X);
sig0.001;lrw0.035;lrc0.01;lrs0.01;
[o,eb1,s1]BRF(X,Y,lrw,lrc,lrs,sig,4,n);
[o2,eb2,s2]BRF(X,Y,lrw,lrc,lrs,sig,8,n);
[o3,eb3,s3]BRF(X,Y,lrw,lrc,lrs,sig,12,n);
[o4,eb4,s4]BRF(X,Y,lrw,lrc,lrs,sig,14,n);
ebmaxmax(eb1);
eb2eb2(eb2ebmax);
eb3eb3(eb3ebmax);
eb4eb4(eb4ebmax);
subplot(2,2,1),bar(eb1);
subplot(2,2,2),bar(eb2);
subplot(2,2,3),bar(eb3);
subplot(2,2,4),bar(eb4);学习效果与神经元数关系 由图可以看出 1、r较小时残差震荡厉害但误相对较小 2、r较大时残差震荡不大但收敛慢。 6.3 学习效率对训练效果的影响
取定中心学习lrc0.01,宽度学习效率为lrs0.01,残差容量sig0.001学习次数定为n1000隐含层神经元数r8。让权学习效率分别取lrw0.001,0.005,0.02,0.08,将效果进行对如图.
clear
Axlsread(d:\kehu.xlsx);
YA;
X1:60;n1000;
t1:length(X);
sig0.001;r8;lrc0.01;lrs0.01;
[o1,eb1,s1]BRF(X,Y,0.001,lrc,lrs,sig,r,n);
[o2,eb2,s2]BRF(X,Y,0.005,lrc,lrs,sig,r,n);
[o3,eb3,s3]BRF(X,Y,0.02,lrc,lrs,sig,r,n);
[o4,eb4,s4]BRF(X,Y,0.1,lrc,lrs,sig,r,n);
ebmaxmax(eb1);
eb2eb2(eb2ebmax);
eb3eb3(eb3ebmax);
eb4eb4(eb4ebmax);
subplot(2,2,1),bar(eb1);
subplot(2,2,2),bar(eb2);
subplot(2,2,3),bar(eb3);
subplot(2,2,4),bar(eb4);不同权学习效率效果对比 由图可以看出权值过于小和过于大学习效果都不太理想lrw0.02学习效果最好。 取定权学习效率lrw0.02,宽度学习效率为lrs0.01,残差容量sig0.001学习次数定为n1000隐含层神经元数r8。让中心学习效率分别取lrw0.001,0.005,0.02,0.08,将效果进行对如图
clear
Axlsread(d:\kehu.xlsx);
YA;
X1:60;n1000;
t1:length(X);
sig0.001;r8;lrw0.02;lrs0.01;
[o1,eb1,s1]BRF(X,Y,lrw,0.001,lrs,sig,r,n);
[o2,eb2,s2]BRF(X,Y,lrw,0.005,lrs,sig,r,n);
[o3,eb3,s3]BRF(X,Y,lrw,0.02,lrs,sig,r,n);
[o4,eb4,s4]BRF(X,Y,lrw,0.1,lrs,sig,r,n);
ebmaxmax(eb1);
eb2eb2(eb2ebmax);
eb3eb3(eb3ebmax);
eb4eb4(eb4ebmax);
subplot(2,2,1),bar(eb1);
subplot(2,2,2),bar(eb2);
subplot(2,2,3),bar(eb3);
subplot(2,2,4),bar(eb4);中心学习效率与学习效果关系对比 由图可以看出当其他参数不变时中心学习效率不能太小也不能太大给出的四个值中lrc0.005时学习效果最佳。 取定权学习效率lrw0.02,中心学习效率为lrc0.005,残差容量sig0.001学习次数定为n1000隐含层神经元数r8。让宽度学习效率分别取lrs0.001,0.005,0.025,0.1,将效果进行对如图
clear
Axlsread(d:\kehu.xlsx);
YA;
X1:60;n1000;
t1:length(X);
sig0.001;r8;lrw0.02;lrc0.005;
[o1,eb1,s1]BRF(X,Y,lrw,lrc,0.001,sig,r,n);
[o2,eb2,s2]BRF(X,Y,lrw,lrc,0.005,sig,r,n);
[o3,eb3,s3]BRF(X,Y,lrw,lrc,0.025,sig,r,n);
[o4,eb4,s4]BRF(X,Y,lrw,lrc,0.1,sig,r,n);
ebmaxmax(eb1);
eb2eb2(eb2ebmax);
eb3eb3(eb3ebmax);
eb4eb4(eb4ebmax);
subplot(2,2,1),bar(eb1);
subplot(2,2,2),bar(eb2);
subplot(2,2,3),bar(eb3);
subplot(2,2,4),bar(eb4);宽度学习效率对残差影响 由图(8)可以看出不同宽度学习效率对残差影响较大给出的四个值中lrs0.005的网络学习效果最好。 给定r8,n20000,lrw0.02,lrc0.005,lrs0.005sig0.001对网络进行深度训练训练效果如图
clear
Axlsread(d:\kehu.xlsx);
YA;
X1:60;n20000;
t1:length(X);
sig0.001;r8;lrw0.02;lrc0.005;lrs0.005;
[o1,eb1,s1]BRF(X,Y,lrw,lrc,lrs,sig,r,n);
t1:length(Y);
ymapminmax(reverse,o1,s1);
subplot(2,1,1);
plot(t,Y,*,t,y,-);legend(ʵ¼ÊÖµ,Ô¤²âÖµ);
subplot(2,1,2);
eb1eb1(eb110);
bar(eb1);最佳学习效率的学习效果
7、添加动量因子的RBF神经网络学习
由前面的计算可知当学习时间短参数取得稍微不恰当网络学习为出现两个严重问题 1 残差震荡现象严重 2收敛速度慢。 对于2可以增加学习时间而对于1震荡现象不尽早消除会陷入局部极值普遍做法是在负梯度方向加入干扰因子称为动量因子。新的参数公式如下i1,2,…,r
其中fw,fc,fσ分别为权、中心、宽度的动量因子系数Δw-1是权的动量因子-1的意思把上一次的调整方向当作这次的动量方向。关于c和s的解释一样。
利用前面找到的个最佳参数添加动量因子编制一个RBF神经网络学习程序
function [o,eb,s1]BRFr(X,Y,lrw,lrc,lrs,fw,fc,fs,sig,r,n)
xmapminmax(X);
[y,s1]mapminmax(Y);
mlength(y);
wrand(r,1);
c2*rand(r,1)-1;
srand(r,1)0.1;
eb[];
wrzeros(r,1);
crwr;
srwr;for k1:nd1dist(c,x);d2d1.^2;ss[];for i1:rsr1ones(1,m)*s(i)^2;ss[ss;sr1];endpexp(-d2./ss);o[];for j1:mfor i1:rwp(i)w(i)*p(i,j);endo[o,sum(wp)];endey-o;errsum(e.^2)^0.5;if errsigXtdatetime;disp(Xt);break;endeb[eb,err];dw[];dc[];ds[];for i1:rdw[dw;sum(e.*p(i,:))];dc[dc;w(i)/s(i)^2*sum(e.*p(i,:).*d1(i,:))];ds[ds;w(i)/s(i)^3*sum(e.*p(i,:).*d2(i,:))];endwwlrw*dwfw*wr;cclrc*dcfc*cr;sslrs*dsfs*sr;wrdw;crdc;srds;
end利用前面找到的个最佳参数添加动量因子编制一个RBF神经网络学习程序
clear
Axlsread(d:\kehu.xlsx);
YA;
X1:60;n1000;
t1:length(X);
sig0.001;r8;lrw0.02;lrc0.005;lrs0.005;
fc0.001;fw0.01;fs0.001;
[o1,eb1,s1]BRFr(X,Y,lrw,lrc,lrs,fw,fc,fs,sig,r,n);
t1:length(Y);
ymapminmax(reverse,o1,s1);
subplot(2,1,1);
plot(t,Y,*,t,y,-);legend(ʵ¼ÊÖµ,Ô¤²âÖµ);
subplot(2,1,2);
eb1eb1(eb110);
bar(eb1);加入动量因子的学习效果
由参数n1000计算效果得出如下结论 1学习时间短 2残差震荡先现象不明显 3收敛的一致性较好。