---
title: Introduction to NLP
localeTitle: NLP简介
---
## 大纲

*   动机
*   用例
*   语言建模
*   进一步阅读

## 动机

使机器理解我们的语言一直是我们的梦想。自乔姆斯基提出无语语法以来，语言学家一直希望提出解决方案来理解依赖于语境的语法。因此，学术门徒围绕这一主题进化是很自然的。

## 用例

人们在许多有趣的应用程序中使用了这个概念。很少有令人兴奋的内容包括谷歌翻译，Siri或Gmail自动回复建议。然而，人们正致力于改进这些预测，并且正在研究如何使机器更可靠地回答问题。

## 自然语言处理的工作原理

早些时候，NLP采用了基于规则的方法，即所有规则都是硬编码的（例如编写语法）。然而，这对语言模型的变化并不十分有效。 目前，NLP过程使用人工智能进行。它们主要依赖于深度学习，这是一种确定数据模式并使用它来训练模型的AI。这种方法比以前使用的方法更好，因为在学习存在的大量数据时，机器可以专注于大多数常见情况，这对于手写规则来说并不容易，因为关于努力的位置并不明显。 。此外，随着数据的增加，这些模型变得更加可靠，但在早期的方法中，只有通过增加规则的复杂性才能使其准确，这是一项更加困难的任务。 该模型通过分析大型典型的现实世界范例来学习语言规则。这种方法需要大量的标记数据，这对NLP来说是一个很大的障碍。

## 语言建模

对于那些想要进入这个领域的人，我打算用2个概念开始你。

#### 代号化

这里的任务听起来很简单。给定语料库（句子数据集），生成单个标记（有意义的单词）。我们需要标记单词和句子。想到的第一种方法是按时间和空间划分。然而，这不起作用。想想约翰先生。 “先生”和“约翰”有两句话吗？当然不是。现在考虑连字符分隔的单词。你想把它们分成2个单词还是1个单词？这些困难的问题使得标记化的任务不那么简单。继续从nltk中选择一个语料库，并为你自己的tokeniser创建你自己的正则表达式！

#### n-gram模型

下一个任务是构建语言模型。在这里，我们考虑假设第n个单词仅取决于之前的n-1个单词。最常用的是2克和3克型号。要构建一个3克模型，只需将3个标记组合在一起，并在语料库中计算它们的频率。您现在已准备好预测一组3个单词的概率！

## 进一步阅读

NLP的领域是巨大的。如果您已经阅读了这篇文章并且已经实现了上述内容，那么您肯定喜欢这个。继续阅读Jurafsky的书，学习更多新概念。请记住，实施它们也很重要。