吴恩达-机器学习笔记(第四周)

2019-03-16  本文已影响0人  楠子小先生

第八、神经网络:表述(Neural Networks: Representation

8.1 非线性假设

  本节主要讲了为什么出现神经网络:
  线性回归&逻辑回归的缺陷-->特征过多,计算负荷过大-->利用神经网络解决
  e.g.假设要识别50x50像素的小图片,将所有像素视为特征,则会有 2500个特征,如果进一步将两两特征组合构成一个多项式模型,则会有约接近3百万个特征。普通的逻辑回归模型,不能有效地处理这么多的特征。这时候我们需要神经网络。

8.2 神经元和大脑

  本节介绍了背景知识,举例。
  神经网络的最初目:制造能模拟大脑的机器。
  神经网络是计算量有些偏大的算法-->技术支持-->计算机的运行速度的增快。

8.3 模型表示1

  下图是一个以逻辑回归模型,在神经网络中,参数又可被成为权重(weight)。


  下图是二层神经网络:

  左边为输入层(Input Layer)

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

  再看右边。可以将a^{[1]}看作是更高级(更厉害)的特征输入,以和x一样的形式充当下一层的输入:①z^{[2]} = w^{[2]T}X+b;②a^{[2]} = sigmoid(z^{[2]})
  a_i^{[j]}代表第j 层的第 i 个激活单元。θ^{[j]}代表从第 j 层映射到第j+1 层时的权重的矩阵,例如θ^{[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),即:
XNOR=(x_1 AND x_2) OR((NOT x_1 )AND(NOT x_2 ))

8.7 多类分类

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




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


上一篇 下一篇

猜你喜欢

热点阅读