语言建模


文档摘要

语言建模 语义嵌入,如Word2Vec和GloVe,实际上是迈向语言建模的第一步——创建能够以某种方式“理解”(或“表示”)语言本质的模型。 课前测验 语言建模背后的主要思想是通过无监督的方式在未标记的数据集上对其进行训练。这很重要,因为我们可以获得大量未标记的文本,而标记文本的数量将始终受到我们能够花费在标注上的精力的限制。通常,我们可以构建能够预测缺失单词的语言模型,因为很容易从文本中屏蔽一个随机单词并将其用作训练样本。 训练嵌入 在之前的例子中,我们使用了预训练的语义嵌入,但看看这些嵌入是如何训练的会很有趣。有几种可能的方法可以使用: N-Gram 语言建模,当我们通过查看前面的N个单词来预测一个单词时(N-gram) 连续词袋(CBoW),当我们预测一个单词序列 $W{-N}$, .

语言建模

语义嵌入,如Word2Vec和GloVe,实际上是迈向语言建模的第一步——创建能够以某种方式“理解”(或“表示”)语言本质的模型。

课前测验

语言建模背后的主要思想是通过无监督的方式在未标记的数据集上对其进行训练。这很重要,因为我们可以获得大量未标记的文本,而标记文本的数量将始终受到我们能够花费在标注上的精力的限制。通常,我们可以构建能够预测缺失单词的语言模型,因为很容易从文本中屏蔽一个随机单词并将其用作训练样本。

训练嵌入

在之前的例子中,我们使用了预训练的语义嵌入,但看看这些嵌入是如何训练的会很有趣。有几种可能的方法可以使用:

  • N-Gram 语言建模,当我们通过查看前面的N个单词来预测一个单词时(N-gram)
  • 连续词袋(CBoW),当我们预测一个单词序列 W_{-N}, ..., W_N 中间的单词 W_0
  • 跳字模型(Skip-gram),我们从中间单词 W_0 预测一组相邻单词 {W_{-N},\dots, W_{-1}, W_1,\dots, W_N}。

从论文中将单词转换为向量的示例算法

图片来自 这篇论文

✍️ 示例笔记本:训练CBoW模型

继续在以下笔记本中学习:

结论

在上一课中,我们已经看到词嵌入像魔法一样工作!现在我们知道训练词嵌入并不是一个非常复杂的过程,并且如果需要,我们应该能够为特定领域的文本训练自己的词嵌入。

课后测验

复习与自学

作业:训练Skip-Gram模型

在实验中,我们挑战你修改本课程中的代码以训练Skip-Gram模型而不是CBoW模型。阅读详情

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


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