无论是线性回归还是逻辑回归,都有一个问题:当特征数量太多时,特征项将会非常多甚至可能随着特征数的增加呈几何级数递增。那么就会使得计算负荷非常高。
比如我们输入的特征是一张50*50的灰度图,并且将所有的像素视为特征,那么就会有2500个特征。如果要进一步把这些特征两两组合构成一个多项式模型,那么将会有约300万项。普通的logistic regression模型并不能很好地处理这么多的特征。
对于上述的问题,神经网络能很好的克服。
什么是神经网络?
下图是一个以逻辑回归模型作为自身学习的神经元示例
由神经元我们构成了神经网络:
Layer 1: 输入层(Input Layer)
Layer 2: 隐藏层(Hidden Layer)
Layer 3: 输出层(Output Layer)
注:对每一层都增加一个偏置单位(bias unit)
前向传播:
ΘX = a;
注:第j层有Sj个单元,那么Θ(j)为Sj+1 * (Sj + 1)的矩阵
神经网络工作原理
随着层数增加实现的逻辑越来越复杂。学到越来越深层的信息。
怎么用神经网络实现多类别分类?
当我们有不止两种分类时,比如我们有四类,那么最后在输出层我们也应该有四个输出单元(四个值)。
可能的输出结果如下:
原文:http://www.cnblogs.com/J-K-Guo/p/7196977.html