吴恩达机器学习8-神经网络介绍

吴恩达机器学习8-神经网络介绍

1.神经网络引入

无论是线性回归还是逻辑回归都有这样一个缺点,即:当特征太多时,计算的负荷会非常大。

举例:

假设我们希望训练一个模型来识别视觉对象(例如识别一张图片上是否是一辆汽车),一种方法是我们利用很多汽车的图片和很多非汽车的图片,然后利用这些图片上一个个像素的值(饱和度或亮度)来作为特征。

假如我们只选用灰度图片,每个像素则只有一个值(而非 RGB 值),我们可以选取图片上的两个不同位置上的两个像素,然后训练一个逻辑回归算法利用这两个像素的值来判断图片上是否是汽车:

在这里插入图片描述

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

2.神经网络介绍

神经网络模型是许多逻辑单元按照不同层级组织起来的网络,每一层的输出变量都是下一层的输入变量。下图为一个 3 层的神经网络,第一层成为输入层,最后一层称为输出层,中间一层成为隐藏层。

在这里插入图片描述

其中𝑥1, 𝑥2, 𝑥3是输入单元,x0为偏置,我们将原始数据输入给它们。𝑎1, 𝑎2, 𝑎3是中间单元,它们负责将数据进行处理,然后通过激活函数之后呈递到下一层。最后是输出单元,它负责计算ℎ𝜃(𝑥)。

这里的激活函数还是逻辑回归中提到的sigmod函数,它的输出值永远在 0 到 1 之间,同时使得神经网络由线性变换到非线性变换:

在这里插入图片描述

a i ( j ) a_{i}^{(j)} ai(j) 代表第 j 层的第 i 个激活单元。 θ ( j ) \theta^{(j)} θ(j) 代表从第 j 层映射到第 j+1 层时的权重的矩阵, 例如 θ ( 1 ) \theta^{(1)} θ(1) 代表从第一层映射到第二层的权重的矩阵。其尺寸为: 以第 j+1 层的激活单元数量为行数, 以第 j 层的激活单元数加一为列数的矩阵。例如: 上图所示的神经网络中 θ ( 1 ) \theta^{(1)} θ(1) 的尺寸为 (下一层)3 ∗ 4 ^{*} 4 4(当前层) 。

所以前向传播的结果为:

a 1 ( 2 ) = g ( Θ 10 ( 1 ) x 0 + Θ 11 ( 1 ) x 1 + Θ 12 ( 1 ) x 2 + Θ 13 ( 1 ) x 3 ) a 2 ( 2 ) = g ( Θ 20 ( 1 ) x 0 + Θ 21 ( 1 ) x 1 + Θ 22 ( 1 ) x 2 + Θ 23 ( 1 ) x 3 ) a 3 ( 2 ) = g ( Θ 30 ( 1 ) x 0 + Θ 31 ( 1 ) x 1 + Θ 32 ( 1 ) x 2 + Θ 33 ( 1 ) x 3 ) h θ ( x ) = g ( Θ 10 ( 2 ) a 0 ( 2 ) + Θ 11 ( 2 ) a 1 ( 2 ) + Θ 12 ( 2 ) a 2 ( 2 ) + Θ 13 ( 2 ) a 3 ( 2 ) ) a_{1}^{(2)}=g\left(\Theta_{10}^{(1)} x_{0}+\Theta_{11}^{(1)} x_{1}+\Theta_{12}^{(1)} x_{2}+\Theta_{13}^{(1)} x_{3}\right) \\ a_{2}^{(2)}=g\left(\Theta_{20}^{(1)} x_{0}+\Theta_{21}^{(1)} x_{1}+\Theta_{22}^{(1)} x_{2}+\Theta_{23}^{(1)} x_{3}\right) \\ a_{3}^{(2)}=g\left(\Theta_{30}^{(1)} x_{0}+\Theta_{31}^{(1)} x_{1}+\Theta_{32}^{(1)} x_{2}+\Theta_{33}^{(1)} x_{3}\right) \\ h_{\theta}(x)=g\left(\Theta_{10}^{(2)} a_{0}^{(2)}+\Theta_{11}^{(2)} a_{1}^{(2)}+\Theta_{12}^{(2)} a_{2}^{(2)}+\Theta_{13}^{(2)} a_{3}^{(2)}\right) a1(2)=g(Θ10(1)x0+Θ11(1)x1+Θ12(1)x2+Θ13(1)x3)a2(2)=g(Θ20(1)x0+Θ21(1)x1+Θ22(1)x2+Θ23(1)x3)a3(2)=g(Θ30(1)x0+Θ31(1)x1+Θ32(1)x2+Θ33(1)x3)hθ(x)=g(Θ10(2)a0(2)+Θ11(2)a1(2)+Θ12(2)a2(2)+Θ13(2)a3(2))

通过矩阵表示为:

在这里插入图片描述

3.神经网络举例(前向传播)


  • 在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • 异或

在这里插入图片描述

先通过与和与非运算,再通过或运算

4.多分类

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

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值