首页
技术小册
AIGC
面试刷题
技术文章
MAGENTO
云计算
视频课程
源码下载
PDF书籍
「涨薪秘籍」
登录
注册
基础介绍
监督学习范式
观测和目标编码
PyTorch 基础
传统 NLP 快速回顾
感知机:最简单的神经网络
深入监督学习
示例:分类餐馆评论的情感
自然语言处理的前馈网络
多层感知机
在测试数据集上评估
嵌入单词和类型
为什么要学习嵌入?
嵌入的有效性
词嵌入之间的关系
示例:学习单词嵌入的连续词袋
新闻分类器
自然语言处理的序列模型
循环神经网络简介
实现 Elman RNN
示例:使用字符 RNN 分类姓氏国籍
自然语言处理的进阶序列模型
原始 RNN(Elman RNNs)的问题
示例:用于生成姓氏的字符 RNN
向量化数据结构
从ElmanRNN到 GRU
高级序列模型
从序列中捕获更多:双向循环模型
深度神经网络中的注意力
对话和交互系统
NLP 的前沿
生产 NLP 系统的设计模式
后续之路
当前位置:
首页>>
技术小册>>
PyTorch 自然语言处理
小册名称:PyTorch 自然语言处理
机器学习中的监督,或者简单的监督学习,是指将目标(被预测的内容)的真实情况用于观察(输入)的情况。例如,在文档分类中,目标是一个分类标签,观察(输入)是一个文档。例如,在机器翻译中,观察(输入)是一种语言的句子,目标是另一种语言的句子。通过对输入数据的理解,我们在图 1-1 中演示了监督学习范式。 ![](/uploads/images/20231219/76358b9b856f603df4219a363ffcccae.jpg) 我们可以将监督学习范式分解为六个主要概念,如图 1-1 所示: 观察: 观察是我们想要预测的东西。我们用`x`表示观察值。我们有时把观察值称为“输入”。 目标: 目标是与观察相对应的标签。它通常是被预言的事情。按照机器学习/深度学习中的标准符号,我们用`y`表示这些。有时,这被称为真实情况。 模型: 模型是一个数学表达式或函数,它接受一个观察值`x`,并预测其目标标签的值。 参数: 有时也称为权重,这些参数化模型。标准使用的符号`w`(权重)或`w_hat`。 预测: 预测,也称为估计,是模型在给定观测值的情况下所猜测目标的值。我们用一个`hat`表示这些。所以,目标`y`的预测用`y_hat`来表示。 损失函数: 损失函数是比较预测与训练数据中观测目标之间的距离的函数。给定一个目标及其预测,损失函数将分配一个称为损失的标量实值。损失值越低,模型对目标的预测效果越好。我们用`L`表示损失函数。 虽然在 NLP /深度学习建模或编写本书时,这在数学上并不是正式有效,但我们将正式重述监督学习范例,以便为该领域的新读者提供标准术语,以便他们拥有熟悉 arXiv 研究论文中的符号和写作风格。 考虑一个数据集`D={X[i],y[i]}, i=1..n`,有`n`个例子。给定这个数据集,我们想要学习一个由权值`w`参数化的函数(模型)`f`,也就是说,我们对`f`的结构做一个假设,给定这个结构,权值`w`的学习值将充分表征模型。对于一个给定的输入`X`,模型预测`y_hat`作为目标: `y_hat = f(X;W)`在监督学习中,对于训练例子,我们知道观察的真正目标`y`。这个实例的损失将为`L(y, y_hat)`。然后,监督学习就变成了一个寻找最优参数/权值`w`的过程,从而使所有`n`个例子的累积损失最小化。 * * * 利用(随机)梯度下降法进行训练 监督学习的目标是为给定的数据集选择参数值,使损失函数最小化。换句话说,这等价于在方程中求根。我们知道梯度下降法是一种常见的求方程根的方法。回忆一下,在传统的梯度下降法中,我们对根(参数)的一些初值进行猜测,并迭代更新这些参数,直到目标函数(损失函数)的计算值低于可接受阈值(即收敛准则)。对于大型数据集,由于内存限制,在整个数据集上实现传统的梯度下降通常是不可能的,而且由于计算开销,速度非常慢。相反,通常采用一种近似的梯度下降称为随机梯度下降(SGD)。 在随机情况下,数据点或数据点的子集是随机选择的,并计算该子集的梯度。当使用单个数据点时,这种方法称为纯 SGD,当使用(多个)数据点的子集时,我们将其称为小型批量 SGD。通常情况下,“纯”和“小型批量”这两个词在根据上下文变得清晰时就会被删除。在实际应用中,很少使用纯 SGD,因为它会由于有噪声的更新而导致非常慢的收敛。一般 SGD 算法有不同的变体,都是为了更快的收敛。在后面的章节中,我们将探讨这些变体中的一些,以及如何使用渐变来更新参数。这种迭代更新参数的过程称为反向传播。反向传播的每个步骤(又名周期)由向前传递和向后传递组成。向前传递用参数的当前值计算输入并计算损失函数。反向传递使用损失梯度更新参数。 * * * 请注意,到目前为止,这里没有什么是专门针对深度学习或神经网络的。图 1-1 中箭头的方向表示训练系统时数据的“流”。关于训练和“计算图”中“流”的概念,我们还有更多要说的,但首先,让我们看看如何用数字表示 NLP 问题中的输入和目标,这样我们就可以训练模型并预测结果。
上一篇:
基础介绍
下一篇:
观测和目标编码
该分类下的相关小册推荐:
AIGC原理与实践:零基础学大语言模型(一)
ChatGLM3大模型本地化部署、应用开发与微调(上)
深度强化学习--算法原理与金融实践(三)
玩转ChatGPT:秒变AI提问和追问高手(下)
深度学习与大模型基础(下)
快速部署大模型:LLM策略与实践(上)
深入浅出人工智能(下)
AI时代程序员:ChatGPT与程序员(上)
快速部署大模型:LLM策略与实践(下)
AI 大模型系统实战
python与ChatGPT让excel高效办公(上)
秒懂AI提问:人工智能提升效率