动手学深度学习-文本预处理;语言模型;循环神经网络基础

一、文本预处理

文本是一类序列数据,一篇文章可以看作是字符或单词的序列,本节将介绍文本数据的常见预处理步骤,预处理通常包括四个步骤:

  1. 读入文本
  2. 分词
  3. 建立字典,将每个词映射到一个唯一的索引(index)
  4. 将文本从词的序列转换为索引的序列,方便输入模型

其中建立字典需要经过的步骤为:

  1. 去重,统计词频
  2. 筛掉部分词
  3. 添加一些特殊的token
  4. 将token映射到唯一索引
  5. 将索引映射到token

二、语言模型

一段自然语言文本可以看作是一个离散时间序列,给定一个长度为T的词的序列w1,w2,…,wTw1,w2,…,wT,语言模型的目标就是评估该序列是否合理,即计算该序列的概率:

这里介绍基于统计的语言模型,主要是n元语法(nn-gram)。

假设每个词是依次出现的,则有:

语言模型的参数就是词的概率以及给定前几个词情况下条件概率。设训练数据集为一个大型文本语料库,词的概率可以通过该词在训练数据集中的相对词频来计算:

你可能感兴趣的:(动手学深度学习-文本预处理;语言模型;循环神经网络基础)