У меня есть небольшой набор данных для анализа настроений. Классификатор будет простым KNN, но я хотел получить слово «встраивание» с моделью Bert
из библиотеки transformers
. Обратите внимание, что я только что узнал об этой библиотеке - я все еще учусь.
Поэтому, глядя на онлайн-пример, я пытаюсь понять размеры, которые возвращаются из модели.
Пример:
from transformers import BertTokenizer
tokenizer = BertTokenizer.from_pretrained('bert-base-uncased')
tokens = tokenizer.encode(["Hello, my dog is cute", "He is really nice"])
print(tokens)
tokens = tokenizer.encode("Hello, my dog is cute", "He is really nice")
print(tokens)
tokens = tokenizer.encode(["Hello, my dog is cute"])
print(tokens)
tokens = tokenizer.encode("Hello, my dog is cute")
print(tokens)
Результат следующий:
[101, 100, 100, 102]
[101, 7592, 1010, 2026, 3899, 2003, 10140, 102, 2002, 2003, 2428, 3835, 102]
[101, 100, 102]
[101, 7592, 1010, 2026, 3899, 2003, 10140, 102]
Кажется, я не могу найти документы для encode()
- я понятия не имею, почему он возвращает разные данные, когда ввод передается в виде списка. Что это делает?
Кроме того, есть ли способ передать токен слова и вернуть фактическое слово - для устранения вышеуказанной проблемы?
заранее спасибо