吴恩达机器学习笔记五之神经网络

本节目录:
1.非线性假设
2. 神经元和大脑
3. 模型表示
4. 特征的直观理解
5. 样本的直观理解
6. 多类分类

1 非线性假设
假设我们希望训练一个模型来识别视觉对象(例如识别一张图片上是否是一辆汽车),
我们怎样才能这么做呢?一种方法是我们利用很多汽车的图片和很多非汽车的图片,然后利
用这些图片上一个个像素的值(饱和度或亮度)来作为特征。
假如我们只选用灰度图片,每个像素则只有一个值(而非 RGB 值),我们可以选取图
片上的两个不同位置上的两个像素,然后训练一个逻辑回归算法利用这两个像素的值来判断
图片上是否是汽车:
在这里插入图片描述
假使我们采用的都是 50x50 像素的小图片,并且我们将所有的像素视为特征,则会有
2500 个特征,如果我们要进一步将两两特征组合构成一个多项式模型,则会有约25002/2个
(接近 3 百万个)特征。普通的逻辑回归模型,不能有效地处理这么多的特征,这时候我们
需要神经网络
2 神经元和大脑
神经网络 最初产生的目的是制造能模拟大脑的机器。
在这里插入图片描述
3 模型表示
在这里插入图片描述
神经网络模型建立在很多神经元之上,每一个神经元又是一个个学习模型。这些神经元
(也叫激活单元,activation unit)采纳一些特征作为输出,并且根据本身的模型提供一个输
出。下图是一个以逻辑回归模型作为自身学习模型的神经元示例,在神经网络中,参数又可
被成为权重(weight)。
在这里插入图片描述
神经网络模型是许多逻辑单元按照不同层级组织起来的网络,每一层的输出变量都是下
一层的输入变量。下图为一个 3 层的神经网络,第一层成为输入层(Input Layer),最后一
层称为输出层(Output Layer),中间一层成为隐藏层(Hidden Layers)。我们为每一层都增
加一个偏差单位(bias unit):
在这里插入图片描述

𝑎𝑖(𝑗) 代表第𝑗 层的第 𝑖 个激活单元。𝜃(𝑗)代表从第 𝑗 层映射到第𝑗 + 1 层时的权重的矩阵,例如𝜃(1)代表从第一层映射到第二层的权重的矩阵。其尺寸为:以第 𝑗 + 1层的激活单元数量为行数,以第 𝑗 层的激活单元数加一为列数的矩阵。例如:上图所示的神经网络中𝜃(1)的尺寸为 3*4。
我们需要将整个训练集都喂给神经网路算法来学习模型。
从左到右算法称为前向传播算法。
把𝑥, 𝜃, 𝑎 分别用矩阵表示,我们可以得到𝜃 ⋅ 𝑋 = 𝑎 :
在这里插入图片描述
在这里插入图片描述
4 特征的直观理解
从本质上讲,神经网络能够通过学习得出其自身的一系列特征。在普通的逻辑回归中,
我们被限制为使用数据中的原始特征𝑥1, 𝑥2, . . . , 𝑥𝑛,我们虽然可以使用一些二项式项来组合
这些特征,但是我们仍然受到这些原始特征的限制。在神经网络中,原始特征只是输入层,
在我们上面三层的神经网络例子中,第三层也就是输出层做出的预测利用的是第二层的特
征,而非输入层中的原始特征,我们可以认为第二层中的特征是神经网络通过学习后自己得
出的一系列用于预测输出变量的新特征。
神经网络中,单层神经元(无中间层)的计算可用来表示逻辑运算,比如逻辑与(AND)、
逻辑或(OR)。
举例说明:逻辑与(AND);下图中左半部分是神经网络的设计与 output 层表达式,右边
上部分是 sigmod 函数,下半部分是真值表。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
5 样本的直观理解
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
6 多类分类
当我们有不止两种分类时(也就是𝑦 = 1,2,3 ….),比如以下这种情况,该怎么办?如果
我们要训练一个神经网络算法来识别路人、汽车、摩托车和卡车,在输出层我们应该有 4 个
值。例如,第一个值为 1 或 0 用于预测是否是行人,第二个值用于判断是否为汽车。

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值