当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python PyTorch vocab用法及代码示例


本文简要介绍python语言中 torchtext.vocab.vocab 的用法。

用法:

torchtext.vocab.vocab(ordered_dict: Dict, min_freq: int = 1) → torchtext.vocab.vocab.Vocab

参数

  • ordered_dict-有序字典将标记映射到它们相应的出现频率。

  • min_freq-在词汇表中包含标记所需的最小频率。

返回

Vocab 对象

返回类型

torchtext.vocab.词汇

用于创建将标记映射到索引的词汇对象的工厂方法。

请注意,在构建 vocab 时将遵守在 ordered_dict 中插入键值对的顺序。因此,如果按令牌频率排序对用户很重要,则应以反映这一点的方式创建ordered_dict

例子

>>> from torchtext.vocab import vocab
>>> from collections import Counter, OrderedDict
>>> counter = Counter(["a", "a", "b", "b", "b"])
>>> sorted_by_freq_tuples = sorted(counter.items(), key=lambda x: x[1], reverse=True)
>>> ordered_dict = OrderedDict(sorted_by_freq_tuples)
>>> v1 = vocab(ordered_dict)
>>> print(v1['a']) #prints 1
>>> print(v1['out of vocab']) #raise RuntimeError since default index is not set
>>> tokens = ['e', 'd', 'c', 'b', 'a']
>>> v2 = vocab(OrderedDict([(token, 1) for token in tokens]))
>>> #adding <unk> token and default index
>>> unk_token = '<unk>'
>>> default_index = -1
>>> if unk_token not in v2: v2.insert_token(unk_token, 0)
>>> v2.set_default_index(default_index)
>>> print(v2['<unk>']) #prints 0
>>> print(v2['out of vocab']) #prints -1
>>> #make default index same as index of unk_token
>>> v2.set_default_index(v2[unk_token])
>>> v2['out of vocab'] is v2[unk_token] #prints True

相关用法


注:本文由纯净天空筛选整理自pytorch.org大神的英文原创作品 torchtext.vocab.vocab。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。