torchtext.data.utils.ngrams_iterator的使用
语法:ngrams_iterator(token_list,ngrams)
其中token_list是一个句子分词后,由词构成的列表,ngrams是一个数,可以看作对词列表加窗,窗口大小为ngrams对应的数。输出是一个可迭代对象。
需要注意的是,ngrams_iterator会根据ngrams的大小返回所有比ngrams小的窗构成的词,当ngrams=3时,会返回ngrams=3,ngrams=2和ngrams=1的结果。
举个例子
from torchtext.data.utils import ngrams_iterator
list=['i','have','a','dream']
ngram=ngrams_iterator(list,3)
print([i for i in ngram])
输出
['i', 'have', 'a', 'dream', 'i have', 'have a', 'a dream', 'i have a', 'have a dream']
如果将3改成2,那么输出结果就变成这样
['i', 'have', 'a', 'dream', 'i have', 'have a', 'a dream']