gpt4 book ai didi

python - 分词器在 torchtext 中无法正常工作

转载 作者:太空宇宙 更新时间:2023-11-03 21:27:44 25 4
gpt4 key购买 nike

我在 torchtext 中遇到了一个问题,并为此苦苦挣扎了很长时间。我试图使用 torchtext 和 spacy 对文本进行标记和数字化。我将我的分词器定义如下:

def Sp_Tokenizer(text): 
return [tok.text for tok in spacy_en.tokenizer(text)]

效果很好:

Sp_Tokenizer('How are you today')

['How', 'are', 'you', 'today']

然后我将这个分词器传递到 torchtext 中:

TEXT = data.Field(sequential=True, tokenize=Sp_Tokenizer, lower=False)

并构建了词汇:

corps = ['How are you', 'I am good today', 'He is not well']
TEXT.build_vocab(corps, vectors="glove.6B.100d")

然后我尝试了

TEXT.numericalize('How are you today')

我以为我应该得到一个包含 4 个数字的张量(字级别),但是,我得到的是字符级别:

tensor([[ 6,  3, 10,  2,  4, 17,  5,  2, 11,  3, 19,  2,  9,  3,  7,  4, 11]])

这有什么问题吗?我能做些什么来修复它吗?谢谢!

最佳答案

根据文档here numericize 接受预先标记化的输入,因此您不能只向其传递一个字符串。您想要将其作为一个示例:

TEXT.preprocess("Hello, how are you today?")

或者批量使用这个:

TEXT.process(["Hello, how are you today?"])

关于python - 分词器在 torchtext 中无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53742792/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com