1. 概念
N-Gram是一种基于统计语言模型的算法。它的基本思想是将文本里面的内容按照字节进行大小为N的滑动窗口操作,形成了长度是N的字节片段序列。
每一个字节片段称为gram,对所有gram的出现频度进行统计,并且按照事先设定好的阈值进行过滤,形成关键gram列表,也就是这个文本的向量特征空间,列表中的每一种gram就是一个特征向量维度
2. 类型:
(1)一元模型(unigram model):把句子分成一个一个的汉字
(2)二元模型(bigram model):把句子从头到尾每两个字组成一个词语
(3)三元语法模型(Trigram model):把句子从头到尾每三个字组成一个词语.
2.1 unigram model
当 n=1时,是 一元模型, 即为:
2.2 bigram model
当 n=2时, 是二元模型,即为:
(3) 三元语法模型(Trigram language model)
3. unigram、bigram频率统计;
使用Python中的collections.Counter模块实现
https://blog.csdn.net/u011955252/article/details/52045392
还需补充很多内容。。。
参考链接:
https://blog.csdn.net/CoderPai/article/details/80403897
https://blog.csdn.net/u011955252/article/details/52045392
https://zhuanlan.zhihu.com/p/32829048