N-gram 特征提取

N-gram 是一种基于统计语言模型的算法,又被称为一阶马尔科夫链。它的基本思想是将文本里面的内容按照字节进行大小为 N 的滑动窗口操作,形成了长度是 N 的字节片段序列。每一个字节片段称为 gram,对所有的 gram 的出现频度进行统计,并且按照事先设定好的阈值进行过滤,形成关键 gram 列表,也就是这个文本的向量特征空间。列表中的每一种 gram 就是一个特征向量维度。

算法优点:

1.语种无关性,对中 英 繁 都通用。
2.不需要进行语言学上的处理。

3.容错性强。

N-gram 算法采用固定长度为 N 的滑动窗口进行切分,目前常用 N-gram 模型是二元的 Bi-gram 和三元的 Tri-gram 模型。对两种模型的切分方法进行比较,比如 “北京  欢迎  你的  到来”,Bi-gram 切分就是 “北京欢迎   欢迎你的   你的到来”,Tri-gram 切分就是 “北京欢迎你的   欢迎你的到来”。

特征提取过程如下:

N-gram 特征提取_第1张图片

1.首先对文档进行粗切分,得到语段序列。
2.对语段序列进行 gram 切分,得到gram 频度列表。并选择频度大于设定阈值的 gram 片段作为特征向量。
3.每个gram 片段就是一个维度,形成特征向量表。

你可能感兴趣的:(NLP)