神经网络基础-感知机
1. 人工神经元如图1是大脑神经元(左)和人工神经元(右),人工神经元是大脑神经元抽象出来的数学模型,被称为M-P模型。树突相当于人工神经元的输入(Inputs),细胞核是人工神经元的operation区域(包含由weights得到的sum求和、threshold非线性判断段处理),轴突末梢是人工神经元的输出(Output)。图1 人类神经元与人工神经元2. 人工神经网络人工神经网络 是 大量神经
1. 人工神经元
如图1是大脑神经元(左)和人工神经元(右),人工神经元是大脑神经元抽象出来的数学模型,被称为M-P模型。
树突相当于人工神经元的输入(Inputs),细胞核是人工神经元的operation区域(包含由weights得到的sum求和、threshold非线性判断段处理),轴突末梢是人工神经元的输出(Output)。
图1 人类神经元与人工神经元
2. 人工神经网络
人工神经网络 是 大量神经元 以某种连接方式构成的机器学习模型。
人工神经网络的种类繁多
图2 人工神经网络的种类
3 感知机
感知机(Perceptron)是人工神经网络中最简单的一类,也称单层神经网络。
图3 感知机原理
感知机与M-P模型相似,二者包含Input和Output,感知机的计算过程相当于M-P模型的operatron部分,由一个线性变换<w,x>+b 和 一个非线性函数 组成。Perceptron模型改进之处在于,引入了输入和输出层的概念,也就是Input layer 和Output layer。
首先,线性变化部分,<w,x>表示 权重矩阵w 与 输入矩阵x 的乘法,b是偏置项。<w,x>+b可以理解为b的权重是1,x1*w1 + x2*w2 + ...... + xn*wn + 1*b,计算图表示为:
图4 感知机线性变换的理解
然后,将线性变换的结果放入非线性函数 ,这里称为激活函数。得到最终的output。
4 感知机的缺点
x1*w1 + x2*w2 + ...... + xn*wn + 1*b 是线性变换。
为了容易可视化,以二维变量为例,x1和x2是输入变量,计算 sum=x1*w1 + x2*w2 + b ,根据非线性函数,如果sum>0,output=1,否则output=0。
实际上,以x1和x2为坐标,在二维平面画图,x1*w1 + x2*w2 + b是一条直线,x1*w1 + x2*w2 + b>0时,output=1;另一侧x1*w1 + x2*w2 + b<=0,output=0。
二位平面被一条直线分割,直线的两侧是分类预测的结果。
图5 感知机模型二分类原理 (引自《统计学习方法》)
那么,为什么不能解决异或问题呢?
首先明确分类结果由一条直线分割。
假设输入变量 x1 和 x2 的取值范围都是{ 0 ,1} ,0是假,1是真。
坐标轴为x1、x2,圈和三角形代表 由逻辑运算得到的 不同类型的真实值。
我们的目标是,用x1*w1 + x2*w2 + b这条直线,把不同类型的真实值分开。
逻辑变量的与非、异或问题可以表示
图 6 异或问题分类结果
可见,逻辑变量x1和x2与或问题可以用直线分类,分类结果是正确的。
但异或问题无法用一条直线将不同类型的真实值分类,如果用一条直线将两个三角形和两个圆圈分开,只会得到错误的预测结果,因此不能解决异或问题。
更多推荐
所有评论(0)