Как стать автором
Обновить

Комментарии 6

"cutting room floor" — фигура речи означающая невошедший в фильм материал. Букв. «пол монтажной комнаты», т.е. обрезки.

Насколько я понимаю для запуска данного примера необходима машина с GPU. Так ли это?

Нет. Можно использовать и CPU, просто обучаться будет намного дольше.

Добрый день )
с помощью данной статьи и переходов на соответствующие предыдущие статьи получилось на чистом Colab запустить BERT на данном датасете английского языка и провести классификацию новых фрагментов.

Спасибо за статью ! )

Вопрос про padding / masking

При изучении темы BERT и последующем успешном запуске я немного миксовал и сравнивал данную статью на русском и исходную на английском.

В статье на английском указан процесс, отсутствующий в статье на русском:
padded превращается в массив с одинаковой длиной строк, за счет добавления нулей, но потом эти нули маскируются.

Итоговый смысл этой операции сходу не ясен, хотя в статье сообщается:

We want BERT to process our examples all at once (as one batch). It's just faster that way.

Гугл переводит это так:

Мы хотим, чтобы БЕРТ обработал все наши примеры сразу (как один пакет). Просто так быстрее.

Код соответственно немного отличается.

В данной статье на русском:

input_ids = torch.tensor(np.array(padded))

with torch.no_grad():
    last_hidden_states = model(input_ids)

и в оригинальной статье на английском:

max_len = 0
for i in tokenized.values:
    if len(i) > max_len:
        max_len = len(i)

padded = np.array([i + [0]*(max_len-len(i)) for i in tokenized.values])
attention_mask = np.where(padded != 0, 1, 0)

input_ids = torch.tensor(padded)  
attention_mask = torch.tensor(attention_mask)

with torch.no_grad():
    last_hidden_states = model(input_ids, attention_mask=attention_mask)

Вопрос:
какие реально есть преимущества / недостатки при наличии / отсутствии padding / masking?

Не вижу приведенных фрагментов в оригинальной статье. Пришлите пожалуйста ссылку.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации