Учитывая предложение типа «Роберта - сильно оптимизированная версия BERT.», Мне нужно получить вложения для каждого из слов в этом предложении с помощью RoBERTa. Я попытался посмотреть примеры кодов в Интернете, не найдя однозначного ответа.
Мой вывод следующий:
tokens = roberta.encode(headline)
all_layers = roberta.extract_features(tokens, return_all_hiddens=True)
embedding = all_layers[0]
n = embedding.size()[1] - 1
embedding = embedding[:,1:n,:]
, где embedding[:,1:n,:]
используется для извлечения только вложений для слов в предложении без начального и конечного токенов.
Это правильно?