分类预测:人工神经网络什么是人工神经网络•神经网络起源于生物神经元的研究,其研究的主要对象是人脑•人脑是一个高度复杂的、非线性、并行处理系统,其中大约有1011个称为神经元的微处理单元。这些神经元之间互相连接,连接数目高达1015•人脑具有联想、推理、判断和决策的能力,对人脑的活动机理的研究一直是一种挑战•人脑智能的核心在于其连接机制,即由于大量简单处理单元(神经元)的巧妙连接,使得人脑成为一个高度复杂的大规模非线性自适应系统什么是人工神经网络•人工神经网络(ArtificialNeuralNetwork,ANN)是一种人脑的抽象计算模型•通过计算机程序实现对人脑系统的模拟,形成类似于生物神经元的处理单元,并希望通过这些处理单元的有机连接,解决现实世界的模式识别、联想记忆、优化计算等复杂问题•人工神经网络主要应用于分类预测和聚类方面人工神经网络算法概述•人工神经网络组成:•由相互连接的神经元,也称处理单元(ProcessingElement)组成。处理单元也称结点(Node)•处理单元之间的连接称为边,反映了各处理单元之间的关联性•关联性的强弱体现在边的权值上人工神经网络算法概述•人工神经网络的种类:从拓扑结构角度划分:•网络层数:两层神经网络、三层神经网络和多层神经网络结点的作用结点的个数人工神经网络算法概述•人工神经网络的种类:从连接方式角度划分:•层间连接•前馈式神经网络:连接是单向的,上层结点的输出是下层结点的输入。B-P、Kohonen•反馈式神经网络:除单向连接外,输出结点的输出又作为输入结点的输入。Hopfield•层内连接方式是指神经网络同层结点之间相互连接,如Kohonen网络•人工神经网络的种类:从学习方式角度划分:•感知机:采用有指导的学习方法•认知机:采用无指导的学习方法人工神经网络中的结点和意义•接收上层结点的输出作为本结点的输入,对输入进行计算后给出本结点的输出jniiijjXWU1加法器:激活函数:)(jjUfY人工神经网络中的结点和意义•各种激活函数:)0(0)0(1)(jjjUUUf)0(1)0(1)(jjjUUUfjUjeUf11)(jjUUjeeUf11)(人工神经网络中的结点和意义3,4,5处理单元的偏差为0,激活函数为(0,1)型Sigmoid函数:结点3:U为:1×0.2+0.5×0.5=0.45,激活函数值为:y1=f(0.45)=0.61结点4:U为:1×(-0.6)+0.5×(-1.0)=-1.1,激活函数值为:y2=f(-1.1)=0.25结点5:U为:0.61×1.0+0.25×(-0.5)=0.735,激活函数值为:y3=f(0.735)=0.68人工神经网络中的结点和意义•在加法器和激活函数的共同作用下,结点起到了一个超平面的作用•第一,如何定位一个超平面•第二,如果n维空间中的样本点线性不可分将会怎样人工神经网络建立的一般步骤•数据准备•数值型变量数据的标准化处理[0,1]•分类型变量•网络结构的确定•隐层层数和各隐层中隐结点的个数决定复杂度•网络结构不一定在模型建立之前就完全确定)1(log2kn有4、5、6个类别的分类变量都只需要3个变量即可人工神经网络建立的一般步骤•网络权值的确定•第一,初始化网络权值:默认为来自均值为0,取值范围在-0.5至0.5之间正态分布随机数•0附近、随机数、小区间•第二,计算各处理单元的加法器和激活函数值,得到样本的分类预测值•第三,比较样本的预测值与实际值并计算误差,根据误差值重新调整各网络权值•第四,返回到第二步感知机•B-P反向传播网络是一种前馈式、多层、感知机网络•每个样本都会提供关于输入输出变量数量关系的信息,应依次向每个样本学习,并根据误差调整网络权值•第一,0时刻,初始化各个网络权值和输出结点的偏差•第二,输入训练样本,t时刻:X=(X1(t),X2(t),…Xn(t))•第三,计算输出结点的预测值,t时刻)0(},1,1)0({)0(jijkjniWW))()()(()(1'ttXtWftYjnjiij当输出变量为数值型采用Sigmoid函数,为分类时一般采用[0,1]阶跃函数感知机的训练步骤•第四,计算输出结点期望值与预测值的误差,t时刻:•对于二分类输出变量,错判为0则为1,错判为1则为-1•第五,调整第i个输入结点和第j个输出结点之间的网络权值和偏差•第六,判断是否满足迭代终止条件。如果没有满足,则重新回到第二步kjtYtYtej1)()()(')()()1()()()()1(tetttXtetWtWjjjijijij)()()(tXtetWijijdelta规则感知机的训练步骤冲量学习率设为1,为0.1,为0,激活函数f=U)()()(tXtetWijijB-P反向传播网络•特点:•激活函数采用Sigmoid函数、包含隐层、反向传播•隐层的作用:实现非线性样本的线性化转化B-P反向传播网络•反向传播:•正向传播:样本信息从输入层开始,由上至下逐层被隐结点计算处理,上层结点的输出为下层结点的输入,最终被传播到输出层结点并得到预测结果。传播期间所有网络权值保持不变•反向传播:误差又被逐层反方向传回给输入结点。传播期间所有网络权值均得到调整。•这种正向传播和反向传播过程将不断重复,直到满足终止条件为止反向传播算法•计算某输出节点的预测误差:•输出节点的总误差:2122)))()()(()((21))(()((21))((21)(ttOtWftYtUftYtetEjmiiijjjjjjkjjtetE12))((21)(找到误差函数下降最快的方向和最大值如果t时刻权值W的偏导数存在,则W轴上的方向导数就是误差函数对W的偏导。由于Sigmoid激活函数处处可微,满足该条件。反向传播算法)()()1()()()()()()()()()()()()('''tOUftetWUfUftYtYtetetEtWtEtWijjijjjjjjjijij))(1()()('jjjUfUfUf)())(1)(()()(tOUfUftetWijjjij))(1)(()()(jjjjUfUftet结点j的局部梯度)()()(tOttWijij第l隐层第j个结点,局部梯度定义为输出误差经过神经网络依次反向传递,并计算每个结点的局部梯度)()())((')(11qijilijljtWttUft•网络结构的确定•采用经验值法•快速(Quick)训练法,只包含一个隐层,隐结点数默认为•多层训练法•动态调整法:•动态削剪法•动态增补法B-P反向传播网络:其他问题)20/)(,3max(oinn•学习率和冲量项•冲量项加快学习过程,甚至可以远离开平坦区域,通常该值的经验值为0.9B-P反向传播网络:其他问题)/)exp(log()1()(dtthighlow)())1()1(()1(tWtWtWtWijijijij•敏感性分析•敏感性分析的目的是要得到各输入变量对输出变量的敏感性系数,以及敏感性系数的排序结果•基于网络权值的Tchaban算法:•权积(WeightProduct)法:输入变量xi对输出变量yk的敏感性系数定义为B-P反向传播网络:其他问题LjjkijkiiktVtWtYtXQ1')()()()(•基本模型•调整模型:•Usebinarysetencoding•NeuralNet的Expert卡,选择Expert选项自行设置网络结构。如1个隐层,10个隐结点,在预测精度没有明显改善时仍然持续训练100周期等B-P反向传播网络应用示例对客户流失建立预测模型径向基函数网络•径向基函数(RadicalBasicFunction,RBF)网络是一种前馈式网络,Moody和Darken在1988年提出的。•径向基函数网络特点:•径向基函数网络是三层网络结构•隐结点采用径向基函数(因而得名径向基函数网络),输出结点采用线性加法器和Sigmoid激活函数•径向基函数网络的输入层和隐层之间的网络权值固定为1,只有隐层和输出层之间的网络权值需在学习过程调整,因此学习效率相对要高。径向基函数网络•隐结点:•径向基函数通常定义为空间中任意一点x到某个中心xc之间的欧氏距离的单调函数,记为ker(||x-xc||)•径向基函数网络中的隐结点采用的是高斯核函数•xc称为核函数的中心,称为宽度,h称为径向覆盖长度•关键是核中心xc和宽度的估计•隐结点为非线性函数,实现了输入层到隐层的非线性映射222||||||)ker(||cxxcexxhxxccexx222||||||)ker(||径向基函数网络•输出结点:•输出结点的输入,是隐结点的输出,是径向基函数•激活函数采用Sigmoid函数kihxxijjiiceWfY12||||)(22径向基函数网络的学习•第一,隐结点中的核中心xc和宽度的估计•Clementine采用K-means聚类,确定K个核中心xc•核函数宽度:•d1是本类中心与最近类中心之间的欧氏,d2是本类中心与次近类中心之间的距离221dd径向基函数网络的学习•第二,隐结点和输出结点间网络权值的调整•根据预测误差调整隐结点和输出结点的网络权值•样本输出变量的取值于它与类中心的距离,取决于各距离的加权。学习过程就是找到这些权重,以反映距离与输出变量取值之间的规律•示例:服务套餐类型和基本费用的预测)()()1(tWtWtWijijij)1()()(222||||'tWeYYtWijxxjjijiic