У меня возникла проблема в 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]])
Что случилось с этим? Есть ли что-нибудь, что я могу сделать, чтобы это исправить? Спасибо!