吴恩达-机器学习笔记(第四周)
第八、神经网络:表述(Neural Networks: Representation
8.1 非线性假设
本节主要讲了为什么出现神经网络:
线性回归&逻辑回归的缺陷-->特征过多,计算负荷过大-->利用神经网络解决
e.g.假设要识别50x50像素的小图片,将所有像素视为特征,则会有 2500个特征,如果进一步将两两特征组合构成一个多项式模型,则会有约接近3百万个特征。普通的逻辑回归模型,不能有效地处理这么多的特征。这时候我们需要神经网络。
8.2 神经元和大脑
本节介绍了背景知识,举例。
神经网络的最初目:制造能模拟大脑的机器。
神经网络是计算量有些偏大的算法-->技术支持-->计算机的运行速度的增快。
8.3 模型表示1
下图是一个以逻辑回归模型,在神经网络中,参数又可被成为权重(weight)。

下图是二层神经网络:

左边为输入层(Input Layer),


先只看模型的左边部分,该部分可看成三个逻辑回归模型。

再看右边。可以将看作是更高级(更厉害)的特征输入,以和x一样的形式充当下一层的输入:①
;②
。
代表第j 层的第 i 个激活单元。
代表从第 j 层映射到第j+1 层时的权重的矩阵,例如
代表从第一层映射到第二层的权重的矩阵。其尺寸为:以第 j+1层的激活单元数量为行数,以第 j 层的激活单元数加一为列数的矩阵。
我们可以知道:每一个a都是由上一层所有的x和每一个x所对应的决定的。我们把这样从左到右的算法称为前向传播算法( FORWARD PROPAGATION )。
把x, θ, a 分别用矩阵表示,我们可以得到θ⋅X=a :

8.4 模型表示2
前向传播算法 ( FORWARD PROPAGATION )有两种形式:
可以利用如下的循环来编码:

也可以利用向量化:

由于每个Layer我们都能得到一组更高级的特征值




OR与AND整体一样,区别只在于的取值不同。
逻辑非(NOT):

8.6 样本和直观理解II
当输入特征为布尔值(0或1)时,我们可以用利用8.5给出的三个单层网络,组合成更为复杂的神经网络以实现更复杂的运算。
e.g.要实现XNOR 功能(输入的两个值必须一样,均为1或均为0),即:

8.7 多类分类
输入向量x有三个维度,两个中间层,输出层4个神经元分别用来表示4类,也就是每一个数据在输出层都会出现[a b c d]^T,且a,b,c,d中仅有一个为1,表示当前类。下面是该神经网络的可能结构示例:


神经网络算法的输出结果为四种可能情形之一:
