【机器学习】课程笔记07_神经网络的表述(Neural Networks Representation)

神经网络的表述

  • 非线性假设(Non-linear Hypotheses)
  • 神经元与大脑(Neurous and the Brain)
  • 模型展示Ⅰ(Model Representation Ⅰ)
  • 模型展示Ⅱ(Model Representation Ⅱ)
  • 例子和直觉理解Ⅰ(Examples and Intuitions Ⅰ)
  • 例子和直觉理解Ⅱ(Examples and Intuitions Ⅱ)
  • 多元分类(Multiclass Classification)

非线性假设(Non-linear Hypotheses)

  • 线性回归和逻辑回归的缺点: 当特征太多时,计算的负荷会非常大。

  • 例子: 识别一张图片上是否是一辆汽车

    方法:利用这些图片上一个个像素的值(饱和度或亮度)来作为特征。假使我们采用的都是50x50像素的小图片,并且我们将所有的像素视为特征,则会有 2500个特征,如果我们要进一步将两两特征组合构成一个多项式模型,则会有约 250 0 2 / 2 2500^2/2 25002/2个(接近3百万个)特征。普通的逻辑回归模型,不能有效地处理这么多的特征,这时候我们需要神经网络

【机器学习】课程笔记07_神经网络的表述(Neural Networks Representation)_第1张图片

神经元与大脑(Neurous and the Brain)

  • 神经网络: 一种很古老的算法,它最初产生的目的是制造能模拟大脑的机器。

  • 大脑处理的方法,只需要一个单一的学习算法就可以了。

    例子:

    【机器学习】课程笔记07_神经网络的表述(Neural Networks Representation)_第2张图片

模型展示Ⅰ(Model Representation Ⅰ)

  • 大脑中的神经元结构:

    【机器学习】课程笔记07_神经网络的表述(Neural Networks Representation)_第3张图片

  • 神经网络模型:

    • 三部分:输入层(Input Layer)、隐藏层(Hidden Layers)、输出层(Output Layer)

    • 为每一层增加一个偏差单位(bias unit)

    • 数据从输入层开始,通过激活函数前向传播到第一隐藏层,经过多个隐藏层,最后到达输出层,神经网络表示复杂的逻辑关系,主要是对隐藏层的构造。

    • 例子:

      【机器学习】课程笔记07_神经网络的表述(Neural Networks Representation)_第4张图片

      • a i ( j ) a^{(j)}_i ai(j) 表示第 j j j 层的第 i i i激活单元

      • θ ( j ) \theta^{(j)} θ(j)代表从第 j j j 层映射到第 j + 1 j+1 j+1 层时的权重矩阵。尺寸为: s ( j + 1 ) × ( s j + 1 ) s_{(j+1)} \times (s_j +1) s(j+1)×(sj+1),例如 θ ( i ) \theta^{(i)} θ(i) 的尺寸为 3 × 4 3 \times 4 3×4

      • 对于上图,激活单元和输出分别为:

        【机器学习】课程笔记07_神经网络的表述(Neural Networks Representation)_第5张图片

      • 上面进行的讨论中只是将特征矩阵中的一行(一个训练实例)喂给了神经网络,我们需要将整个训练集都喂给我们的神经网络算法来学习模型。每一个 a a a都是由上一层所有的 x x x和每一个 x x x所对应的决定的。这样从左到右的算法称为前向传播算法(Forward Propagation)。

      • X = [ x 0 x 1 x 2 x 3 ] X=\begin{bmatrix}x_0\\x_1\\x_2\\x_3\end{bmatrix} X=x0x1x2x3 θ = [ θ 10 ⋯ ⋯ ⋯ ⋯ ⋯ ⋯ ⋯ ⋯ ⋯ ⋯ θ 33 ] \theta=\begin{bmatrix}\theta_{10} & \cdots & \cdots & \cdots \\\cdots & \cdots & \cdots & \cdots\\\cdots & \cdots & \cdots & \theta_{33} \end{bmatrix} θ=θ10θ33 a = [ a 1 a 2 a 3 ] a=\begin{bmatrix}a_1 \\ a_2\\ a_3\end{bmatrix} a=a1a2a3

      • g ( θ ⋅ X ) = a g(\theta \cdot X)=a g(θX)=a

模型展示Ⅱ(Model Representation Ⅱ)

  • 向前传播(forward propagation) 相对于使用循环来编码,利用向量化的方法会使得计算更为简便。

    • 以上面的神经网络为例,试着计算第二层的值:

      【机器学习】课程笔记07_神经网络的表述(Neural Networks Representation)_第6张图片

    • 计算输出的值为:

      【机器学习】课程笔记07_神经网络的表述(Neural Networks Representation)_第7张图片

  • 神经网络就像是逻辑回归,只不过我们把逻辑回归中的输入向量 [ x 1 ∼ x 3 ] [x_1 \sim x_3] [x1x3] 变成了中间层的 [ a 1 ( 2 ) ∼ a 3 ( 2 ) ] [ a_1^{(2)}\sim a_3^{(2)} ] [a1(2)a3(2)], 即: h θ ( x ) = g ( Θ 0 ( 2 ) a 0 ( 2 ) + Θ 1 ( 2 ) a 1 ( 2 ) + Θ 2 ( 2 ) a 2 ( 2 ) + Θ 3 ( 2 ) a 3 ( 2 ) ) h_\theta(x)=g(\Theta^{(2)}_0a^{(2)}_0+\Theta^{(2)}_1a^{(2)}_1+\Theta^{(2)}_2a^{(2)}_2+\Theta^{(2)}_3a^{(2)}_3) hθ(x)=g(Θ0(2)a0(2)+Θ1(2)a1(2)+Θ2(2)a2(2)+Θ3(2)a3(2))

  • 我们可以把 a 0 , a 1 , a 2 , a 3 a_0, a_1, a_2, a_3 a0,a1,a2,a3看成更为高级的特征值,也就是 x 0 , x 1 , x 2 , x 3 x_0, x_1, x_2, x_3 x0,x1,x2,x3的进化体,并且它们是由 x与 θ \theta θ决定的,因为是梯度下降的,所以 a a a是变化的,并且变得越来越厉害,所以这些更高级的特征值远比仅仅将 x x x次方厉害,也能更好的预测新数据。 这就是神经网络相比于逻辑回归和线性回归的优势。

例子和直觉理解Ⅰ(Examples and Intuitions Ⅰ)

  • 单层神经元(无中间层)的计算可用来表示逻辑运算。

  • 逻辑与(AND):

    【机器学习】课程笔记07_神经网络的表述(Neural Networks Representation)_第8张图片

  • 逻辑或(OR):

    【机器学习】课程笔记07_神经网络的表述(Neural Networks Representation)_第9张图片

  • 逻辑非(NOT):

    【机器学习】课程笔记07_神经网络的表述(Neural Networks Representation)_第10张图片

例子和直觉理解Ⅱ(Examples and Intuitions Ⅱ)

  • 我们可以利用神经元来组合成更为复杂的神经网络以实现更复杂的运算。

  • 逻辑同或(XNOR): ( x 1   A N D   x 2 )   O R   ( ( N O T   x 1 )   A N D   ( N O T   x 2 ) ) (x_1 \ AND \ x_2)\ OR\ ((NOT\ x_1)\ AND\ (NOT\ x_2)) (x1 AND x2) OR ((NOT x1) AND (NOT x2))

    • 先分别完成 a 1 = x 1   A N D   x 2 a_1 = x_1 \ AND \ x_2 a1=x1 AND x2 a 2 = ( N O T   x 1 )   A N D   ( N O T   x 2 ) a_2 = (NOT\ x_1)\ AND\ (NOT\ x_2) a2=(NOT x1) AND (NOT x2)
    • 再将二者结合 a 1   O R   a 2 a_1\ OR\ a_2 a1 OR a2

    【机器学习】课程笔记07_神经网络的表述(Neural Networks Representation)_第11张图片

多元分类(Multiclass Classification)

  • 当我们有不止两种分类时,即y = 1 , 2 , 3 … =1,2,3… =1,2,3(例如识别行人、汽车、摩托车和卡车):

    • 输出层我们应该有4个值,第一个值用于识别是否是行人,第二个值用于识别是否是汽车…

    • 理想状态,输出层中仅有一个为1,每种输出对应一个分类器。

      【机器学习】课程笔记07_神经网络的表述(Neural Networks Representation)_第12张图片

你可能感兴趣的:(机器学习,神经网络,深度学习)