神经网络BP算法求代码
每个客户的输入信息包含:前5年的数据,每年的数据均包括:系列A:总数A1;成功数A2;失败数A3;未完成数A4;A1=A2+A3+A4;系列B:总数B1;成功数B2;失败...
每个客户的输入信息包含:
前5年的数据,每年的数据均包括:
系列A:总数A1;成功数A2;失败数A3;未完成数A4;A1=A2+A3+A4;
系列B:总数B1;成功数B2;失败数B3;未完成数B4;B1=B2+B3+B4;
系列C:总数C1;成功数C2;失败数C3;未完成数C4;C1=C2+C3+C4;
输出要求:
1. 客户类型:
总和Z=A1+B1+C1,当A,B,C中任一项的比重最多时,该客户就属于该类型,例如:
当C1/Z最大时,该客户属于C型;
当A1/Z=B1/Z且最大时,该客户属于AB型;
2. 客户成功率/品质:
以系列A为例,成功率=A2/(A2+A3);
当成功率大于等于80%,则该客户品质为优;
当成功率大于等于60%但小于80%,则该客户品质为良;
当成功率大于等于40%但小于60%,则该客户品质为中;
3. 根据前5年的数据,推算出后1年的数据。 展开
前5年的数据,每年的数据均包括:
系列A:总数A1;成功数A2;失败数A3;未完成数A4;A1=A2+A3+A4;
系列B:总数B1;成功数B2;失败数B3;未完成数B4;B1=B2+B3+B4;
系列C:总数C1;成功数C2;失败数C3;未完成数C4;C1=C2+C3+C4;
输出要求:
1. 客户类型:
总和Z=A1+B1+C1,当A,B,C中任一项的比重最多时,该客户就属于该类型,例如:
当C1/Z最大时,该客户属于C型;
当A1/Z=B1/Z且最大时,该客户属于AB型;
2. 客户成功率/品质:
以系列A为例,成功率=A2/(A2+A3);
当成功率大于等于80%,则该客户品质为优;
当成功率大于等于60%但小于80%,则该客户品质为良;
当成功率大于等于40%但小于60%,则该客户品质为中;
3. 根据前5年的数据,推算出后1年的数据。 展开
1个回答
展开全部
输入节点数为3x3x5=45,输出节点数为3x3+2=11,隐节点数通过试凑法得出。
BP神经网络的Matlab代码见附件,修改节点数、增加归一化和反归一化过程即可。
BP算法,误差反向传播(Error Back Propagation, BP)算法。BP算法的基本思想是,学习过程由信号的正向传播与误差的反向传播两个过程组成。由于多层前馈网络的训练经常采用误差反向传播算法,人们也常把将多层前馈网络直接称为BP网络。
1)正向传播:输入样本->输入层->各隐层(处理)->输出层
注1:若输出层实际输出与期望输出(教师信号)不符,则转入2)(误差反向传播过程)
2)误差反向传播:输出误差(某种形式)->隐层(逐层)->输入层
其主要目的是通过将输出误差反传,将误差分摊给各层所有单元,从而获得各层单元的误差信号,进而修正各单元的权值(其过程,是一个权值调整的过程)。
注2:权值调整的过程,也就是网络的学习训练过程(学习也就是这么的由来,权值调整)。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询