我正在使用pytorch为NLP构建ML模型,但是当我在文本中使用“vacab”定义tekenized单词的词汇表并尝试使用vocab.itos时,我得到了:“Vocab”对象没有属性“itos”错误。这是我的词汇:
vocab.itos
vocab = torchtext.vocab.vocab(counter, min_freq=1)
字符串我该如何解决这个问题?
j9per5c41#
您应该访问torchtext.vocab.Vocab.get_itos以获取索引->令牌Map。
torchtext.vocab.Vocab.get_itos
>>> itos = vocab.get_itos()
字符串
deikduxw2#
属性或方法会根据您使用的数据集(实际上是类)而变化。我还试图从我的d2l.torch.Vocab对象中获取'itos',但它不起作用。我用dir检查示例的属性和方法。data = d2l.MTFraEng(batch_size=128)source_data = data.src_vocabprint(dir(source_data)在响应中,有一个被实现的属性,称为idx_to_token。所以我就同意了。print(source_data.idx_to_token)获取数据:)['!',',','.','','','','?',' a ',' agree ',...,' works ',' write ',' you ']
2条答案
按热度按时间j9per5c41#
您应该访问
torchtext.vocab.Vocab.get_itos
以获取索引->令牌Map。字符串
deikduxw2#
属性或方法会根据您使用的数据集(实际上是类)而变化。我还试图从我的d2l.torch.Vocab对象中获取'itos',但它不起作用。我用dir检查示例的属性和方法。
data = d2l.MTFraEng(batch_size=128)
source_data = data.src_vocab
print(dir(source_data)
在响应中,有一个被实现的属性,称为idx_to_token。所以我就同意了。
print(source_data.idx_to_token)
获取数据:)
['!',',','.','','','','?',' a ',' agree ',...,' works ',' write ',' you ']