我想知道在计算n-gram时,包括n>3的使用频率时,考虑到计算开销,它们的用途是什么。是否存在一些应用程序,其中bigrams或trigrams并不足够?
如果有的话,n-gram提取的最新技术是什么?有什么建议吗?我已经了解了以下内容:
我想知道在计算n-gram时,包括n>3的使用频率时,考虑到计算开销,它们的用途是什么。是否存在一些应用程序,其中bigrams或trigrams并不足够?
如果有的话,n-gram提取的最新技术是什么?有什么建议吗?我已经了解了以下内容:
我的意思不是说n>3没有用;但你观察到它似乎不经常出现是有根据的。
但请注意,对文本中的ngrams进行计数的复杂性不是问题:如果您拥有长度为L的分词语料库,可以像这样收集语料库中的所有ngrams:
for i in range(0, L-n):
tuple = corpus[i:i+n]
ngrams[tuple] += 1
我对这里列出的标签不太熟悉,但是N-gram(抽象概念)通常与统计模型有关,因此以下是一些应用程序,不仅限于二元组和三元组:
以上是我想到的,但是还有更多内容在维基百科上列出。
至于“最先进的”N-gram提取,我不知道。 N-gram“提取”是一种试图加速某些过程同时仍保持N-gram样式建模优点的临时解决方案。简而言之,“最先进”的取决于您要做什么。如果您正在查看模糊匹配或模糊分组,则取决于您要匹配/分组的数据类型。(例如,街道地址将与名字不同,因此难以进行模糊匹配。)
如果你的数据集非常大,你也可以使用超过3个语言模型。