一.神经网络的优势
对于复杂的非线性分类问题,当特征变量个数
而神经网络能很好的解决上面那种复杂的非线性分类问题。
二.神经网络的模型
1.神经元的模型
图中橘黄色部分即为一个神经元,
2.神经网络的模型
神经网络是一组神经元的组合,如下:
神经网络的模型分为输入层,隐藏层和输出层,其中隐藏层可能有多层。每个层次包含一个或多个单元。如上图中输入层包括
三.神经网络的相关参数及前向传播计算
具体映射关系表现为:
如果神经网络第
如上图,
根据上面的映射关系以及
给第二层增加偏置单元
看了这么多,神经网络到底在做什么呢?
对于上面神经网络的模型那张图,如果不看输入层,只看后面两层,则
神经网络所做的事情很像逻辑回归,但它不是使用
四.利用神经网络解决复杂的非线性问题
1.首先用神经网络实现几个较为简单的例子:
①AND(与运算),其中
按下图给神经网络分配权重,
又由于S型函数
故我们可以得到神经网络的输出和输入的关系:
|
|
|
---|---|---|
0 | 0 |
|
0 | 1 |
|
1 | 0 |
|
1 | 1 |
|
可以看到,
②OR(或运算),其中
按下图给神经网络分配权重,
故我们可以得到神经网络的输出和输入的关系:
|
|
|
---|---|---|
0 | 0 |
|
0 | 1 |
|
1 | 0 |
|
1 | 1 |
|
可以看到,
③NOT(逻辑非),其中
按下图给神经网络分配权重,
故我们可以得到神经网络的输出和输入的关系:
|
|
---|---|
0 |
|
1 |
|
可以看到,
2.用神经网络实现稍复杂的函数
①(NOT
按下图给神经网络分配权重,
故我们可以得到神经网络的输出和输入的关系:
|
|
|
---|---|---|
0 | 0 |
|
0 | 1 |
|
1 | 0 |
|
1 | 1 |
|
可以看到,该神经网络实现了(NOT
②XNOR(同或运算)
按下图给神经网络分配权重,
仔细观察,可知
我们可以得到神经网络的输出和输入的关系:
该神经网络确实实现了
通过这个例子我们可以看到,复杂函数可以通过一些简单函数的组合来实现。
比如神经网络的第二层可以计算输入层特征变量的函数;第三层可以以第二层为基础,计算更复杂的函数;第四层可以以第三层为基础计算比第三层还要复杂的函数,以此类推。神经网络运用更深的层数可以计算更复杂的函数,使其作为特征传递给最后一层的逻辑回归分类器,更准确地预测分类结果。
五.神经网络在多类别分类中的应用
在多类别分类中,我们的输出并不是一个数,而是一个向量,例如有一个三类别分类问题,我们要识别一个物体是行人,小汽车,摩托车还是卡车,则神经网络的模型可以如下图:
最后一层的输出层相当于有4个逻辑回归的分类器,
训练数据集是
神经网络的目标是使
关于是神经网络更为深入的内容和反向传播等的学习笔记将在Andrew Ng机器学习入门学习笔记(四)之神经网络(二)记录。