神经网络-感知器.docx
1986年,Rumelhart, Hinton , Williams受到医学界人脑神经网络的启发,提出了神经网络,从神经网络开展出的深度学习,更是成为了当前热点,在科 研与商业领域占据重要位置。现在我们就从神经网络中最基本的感知器开始, 一起揭开神经网络的神秘面纱。感知器结构下列图展示了感知器的基本结构:输入结点。表示输入属性。输入信号X是一个n维向量,n表示记录的特征数量,向量X各个维度上的分量即对应特征的值。 输出结点。是一个数学装置,提供模型输出。包括加权求和和激活函数两局部。 权重W=31, 32, wno每个输入结点通过一个加权的链连接到输出结点。权重用来模拟神经元间神经键的链接强度。 输出信号输出结点通过计算输入的加权和,加上偏置项b,根 据激活函数产生输出。感知器数学表达式感知器模型可用如下数学式表示: 比=二/其中,为激活函数,常用的激活函数有:ReLU , tanh , sigmoid , sign等。训练一 个感知器模型,相当于根据数据不断调整权重和偏置,使得总误差尽量小。为了使公式表达更加简洁,b可以写成权重与x分量相乘的形式,即b=x0*30 ,其中30=b , x0=lo因此,感知器模型可以更简洁的表达为:y = <P(Ik=o =。(3 x)感知器模拟布尔函数布尔函数指输入与输出的取值范围都在。1内的函数。现有如下数据集,包含 三个布尔输入变量和一个输出变量,当三个输入变量中至少有两个为。时,y 取-1,当输入变量至少有两个大于0时,y取:1。XIX2X3100101110111001010011000当各输入结点到输出结点的权重全部取0.3,偏置取-0.4时,使用符号函数sign。作为激活函数,那么可用如下感知器公式来模拟此布尔函数:入 _ f L if 0.3X + 03x2 + 03xs - 0,4 > 0'if 0.3xx + 0,3x2 + 0.3xs - 0-4 < 0将数据集中每条样本带入上述公式,可以发现,均可满足相应结果。训练感知器模型训练阶段,就是调整参数使得输出和样例的实际输出一致。最重要的局部就是根据旧权重和每次计算的误差,调整得出新权重。算法流程steplD=(xi, yi) | i=l, 2, , n为原始数据集3(0)= 随机初始化权重向量;step2repeatfor对于每个样例(xi, yi) 计算预测输出y*for每个权值3 j aj(k+l) =3j(k) + 入(yi-y*(k)xij (1) 满足终止条件结束repeat人为学习率,3(k)是第k次循环后第i个输入的权值向量,Xij是Xi第j个属性 值。从权值更新公式(1 )中可以看出,新权值等于旧权值加上一个正比于误差 的值,如果预测正确,权值不变;如果(y-y*)>0 ,那么要提高正输入的权值,并 降低负输入的权值来提高预测输出值;如果(y-y*)<0 ,那么要降低正输入的权 值,并提高负输入的权值来降低预测输出值。为了控制权值每次的改变量,以免使得前面的调整失效,入控制在0-1之间, 越接近0新权重受旧权重影响越大,越接近1新权重受误差影响越大。在一些 情况下可以使用自适应的入,即前几次循环时人相对较大,后面循环中人逐渐减 小。使用限制感知器的决策边界是一个超平面,对于线性可分问题,可以收敛到一个最优 解,如果问题不是线性可分的,那么感知器算法不收敛。