对于下图中的两类点,如果只考虑两个特性,需要使用非线性的多项式才能很好的建立一个分类模型,如 g ( θ 0 + θ 1 x 1 + θ 2 x 2 + θ 3 x 1 x 2 + θ 4 x 1 2 x 2 + . . . ) g(\theta_0+\theta_1x_1+\theta_2x_2+\theta_3x_1x_2+\theta_4x_1^2x_2+...) g(θ0+θ1x1+θ2x2+θ3x1x2+θ4x12x2+...):
但是假如存在成百上千的相关特征,如果希望使用这些特征来构建一个非线性的多项式模型,特征组合后的数量十分惊人。比如将100个特征进行两两组合为 x 1 x 2 、 x 1 x 3 、 . . . 、 x 99 x 100 x_1x_2、x_1x_3、...、x_{99}x_{100} x1x2、x1x3、...、x99x100,也存在近5000个组合,更别提为了获取更多的相关性而采取三三组合等等。
多于多特征的数据,增加特征并不是一个好的选择。以汽车分类为例,汽车图片为50*50像素大小,将每个像素视为一个特征,图中模型通过汽车图片的两个像素点构建模型。但是光靠两个像素点(即两个特征),分类效果肯定很差。如果此时两两特征进行组合构建一个多项式模型,会出现约三百万的特征:
下图中整个流程被称为前向传播:
关于图中的标记如下:
将上述公式转换为向量表示会更加简便:
以第一个式子为例,将其转换为 a 1 ( 2 ) = g ( z 1 ( 2 ) ) a^{(2)}_1=g(z_1^{(2)}) a1(2)=g(z1(2)),其中 z 1 ( 2 ) z_1^{(2)} z1(2)的2表示和第二层相关。以此类推,上述隐藏层单元的计算式子变为:
a 1 ( 2 ) = g ( z 1 ( 2 ) ) a^{(2)}_1=g(z_1^{(2)}) a1(2)=g(z1(2))
a 2 ( 2 ) = g ( z 2 ( 2 ) ) a^{(2)}_2=g(z_2^{(2)}) a2(2)=g(z2(2))
a 3 ( 2 ) = g ( z 3 ( 2 ) ) a^{(2)}_3=g(z_3^{(2)}) a3(2)=g(z3(2))
当 x = [ x 0 , x 1 , x 2 , x 3 ] T , z ( 2 ) = [ z 1 ( 2 ) , z 2 ( 2 ) , z 3 ( 2 ) ] T x=[x_0,x_1,x_2,x_3]^T,z^{(2)}=[z_1^{(2)},z_2^{(2)},z_3^{(2)}]^T x=[x0,x1,x2,x3]T,z(2)=[z1(2),z2(2),z3(2)]T时:
z ( 2 ) = θ ( 1 ) x z^{(2)}=\theta^{(1)}x z(2)=θ(1)x
a ( 2 ) = g ( z ( 2 ) ) a^{(2)}=g(z^{(2)}) a(2)=g(z(2))
将向量展开后如下:
隐藏层到输出层的向量表示和前面类似,其中 a 0 ( 2 ) = 1 a^{(2)}_0=1 a0(2)=1:
z ( 3 ) = θ ( 2 ) a ( 2 ) z^{(3)}=\theta^{(2)}a^{(2)} z(3)=θ(2)a(2)
h θ ( x ) = a ( 3 ) = g ( z ( 3 ) ) h_\theta(x)=a^{(3)}=g(z^{(3)}) hθ(x)=a(3)=g(z(3))
神经网络和逻辑回归有着许多相似的地方,以隐藏层到输出层为例:在逻辑回归中的 x 1 、 x 2 、 x 3 x_1、x_2、x_3 x1、x2、x3变为神经网络中的 a 1 ( 2 ) 、 a 2 ( 2 ) 、 a 3 ( 2 ) a^{(2)}_1、a^{(2)}_2、a^{(2)}_3 a1(2)、a2(2)、a3(2)。由于 a ( 2 ) a^{(2)} a(2)中的每个值都是经过第一层计算后的值,可以视为更加高级的特征值(相较于 x 1 、 x 2 、 x 3 x_1、x_2、x_3 x1、x2、x3),而不同的 θ ( 1 ) \theta^{(1)} θ(1)可以学习到不同的高级特征
综上,在逻辑回归中只能使用数据中的原始特征,虽然可以使用组合这些特征,但是会依旧会受到原始特征的限制。在神经网络中,原始特征作为输入层,后面不断深入的网络层会使用到前一层的高级特征,并非原始特征
在上述网络中,最终输出层只有一个神经元,即只能表示二分类,为了表示多分类的结果,可以在输出层多设置几个神经元,比如当 h θ ( x ) = [ 1 , 0 , 0 , 0 ] T h_\theta(x)=[1,0,0,0]^T hθ(x)=[1,0,0,0]T时表示预测结果为第一类:
https://www.bilibili.com/video/BV164411b7dx?p=43-49
http://www.ai-start.com/ml2014/html/week4.html