神经网络简介:多层感知器


文档摘要

神经网络简介。多层感知器 在上一节中,你学习了最简单的神经网络模型——单层感知器,这是一个线性的二分类模型。 在这一节中,我们将扩展这个模型到一个更灵活的框架,使我们能够: 除了二分类外,还能进行多分类 除了分类外,还能解决回归问题 分离非线性可分的类别 我们还将开发自己的模块化框架,使用Python构建不同的神经网络架构。 课前小测验 机器学习形式化 让我们从形式化机器学习问题开始。假设我们有一个带有标签的数据集 X 和 Y,我们需要建立一个模型 f 来做出最准确的预测。预测的质量由损失函数 ℒ 衡量。

神经网络简介。多层感知器

在上一节中,你学习了最简单的神经网络模型——单层感知器,这是一个线性的二分类模型。

在这一节中,我们将扩展这个模型到一个更灵活的框架,使我们能够:

  • 除了二分类外,还能进行多分类
  • 除了分类外,还能解决回归问题
  • 分离非线性可分的类别

我们还将开发自己的模块化框架,使用Python构建不同的神经网络架构。

课前小测验

机器学习形式化

让我们从形式化机器学习问题开始。假设我们有一个带有标签的数据集 XY,我们需要建立一个模型 f 来做出最准确的预测。预测的质量由损失函数 ℒ 衡量。常用的损失函数有:

  • 对于回归问题,当我们需要预测一个数字时,我们可以使用绝对误差i|f(x(i))-y(i)| 或平方误差i(f(x(i))-y(i))2
  • 对于分类问题,我们使用0-1 损失(这实际上就是模型的准确率),或者逻辑损失

对于单层感知器,函数 f 被定义为一个线性函数 f(x)=wx+b(这里 w 是权重矩阵,x 是输入特征向量,b 是偏置向量)。对于不同的神经网络架构,这个函数可以具有更复杂的形式。

在分类的情况下,通常希望得到对应类别的概率作为网络输出。为了将任意数字转换为概率(例如归一化输出),我们经常使用softmax函数 σ,函数 f 变成 f(x)=σ(wx+b)

在上面的 f 定义中,wb 称为参数 θ=⟨w,b⟩。给定数据集 ⟨X,Y⟩,我们可以计算整个数据集上的总误差,作为参数 θ 的函数。

神经网络训练的目标是通过调整参数 θ 来最小化误差

梯度下降优化

有一种著名的函数优化方法叫做梯度下降。其思想是计算损失函数相对于参数的导数(在多维情况下称为梯度),然后以这种方式调整参数,使误差减小。这可以形式化如下:

  • 用一些随机值初始化参数 w(0), b(0)
  • 重复以下步骤多次:
    • w(i+1) = w(i)-η∂ℒ/∂w
    • b(i+1) = b(i)-η∂ℒ/∂b

在训练过程中,优化步骤应该基于整个数据集来计算(记住损失是通过所有训练样本的和来计算的)。然而,在实际应用中,我们取数据集的小部分称为小批量(minibatches),并根据数据子集计算梯度。因为每次都是随机抽取子集,所以这种方法被称为随机梯度下降(SGD)。

多层感知器与反向传播

正如我们上面看到的,单层网络能够对线性可分的类别进行分类。为了构建更丰富的模型,我们可以组合多个网络层。数学上,这意味着函数 f 将具有更复杂的结构,并且将在多个步骤中计算:

  • z1=w1x+b1
  • z2=w2α(z1)+b2
  • f = σ(z2)

这里,α 是非线性激活函数,σ 是 softmax 函数,参数 θ=<w1,b1,w2,b2

梯度下降算法保持不变,但计算梯度会变得更加困难。根据链式法则,我们可以计算导数如下:

  • ∂ℒ/∂w2 = (∂ℒ/∂σ)(∂σ/∂z2)(∂z2/∂w2)
  • ∂ℒ/∂w1 = (∂ℒ/∂σ)(∂σ/∂z2)(∂z2/∂α)(∂α/∂z1)(∂z1/∂w1)

✅ 链式法则用于计算损失函数相对于参数的导数。

注意,所有这些表达式的最左边部分是相同的,因此我们可以有效地从损失函数开始,通过计算图“逆向”计算导数。因此,训练多层感知器的方法称为反向传播或'backprop'。

计算图

TODO: 图片引用

✅ 我们将在我们的笔记本示例中更详细地介绍反向传播。

结论

在这节课中,我们自己构建了一个神经网络库,并用它完成了一个简单的二维分类任务。

挑战

在配套的笔记本中,你将实现自己的框架来构建和训练多层感知器。你可以详细了解现代神经网络的工作原理。

请继续到 OwnFramework 笔记本并完成它。

课后小测验

复习与自学

反向传播是AI和ML中常用的一个算法,值得更深入地研究详情

作业

在这个实验中,你需要使用在本节课中构建的框架来解决MNIST手写数字分类问题。

声明:
本文件灏天文库团队进行了翻译。尽管我们力求准确,但请注意,翻译可能包含错误或不准确之处。原文档以其原始语言为准。我们不对因使用此翻译而产生的任何误解或误译负责。


作者与出处
原作者: microsoft
来源:microsoft
许可证:MIT
整理: 灏天文库整理
由灏天文库结构化整理,提供目录导航、全文检索与在线阅读,便于系统化学习
发布者: 作者: microsoft 转发
评论区 (0)
U