О чём урок
{#if fw === 'pt'} {:else} {/if} {#if fw === 'pt'} {:else} {/if} В предыдущем разделе мы рассмотрели самый простой вариант использования: проведение инференса на одной последовательности небольшой длины. Однако уже сейчас возникают некоторые вопросы: Как нам работать с несколькими последовательностями? Как нам работать с несколькими последовательностями разной длины? Являются ли индексы словаря единственными входными данными, которые позволяют модели работать хорошо? Существует ли такая вещь, как слишком длинная последовательность? Давайте посмотрим, какие проблемы возникают в связи с этими вопросами и как их можно решить с помощью 🤗 Transformers API. В предыдущем упражнении вы видели, как последовательности преобразуются в списки чисел. Давайте преобразуем этот список чисел в тензор и передадим его в модель: {#if fw === 'pt'} {:else} {/if} О нет! Почему это не удалось? Мы следовали шагам из конвейера в разделе 2. Проблема в том, что мы отправили в модель одну последовательность, в то время как 🤗 модели Transformers по умолчанию ожидают несколько предложений. Здесь мы попытались сделать все то, что токенизатор делал за кулисами, когда мы применяли его к последовательности. Но если вы приглядитесь, то увидите, что токенизатор не просто преобразовал список входных идентификаторов в тензор, а добавил к нему еще одно измерение: {#if fw === 'pt'} {:else} {/if} Давайте попробуем еще раз и добавим новое измерение: {#if fw === 'pt'} {:else} {/if} Мы выводим входные идентификаторы, а также результирующие логиты - вот результат: {#if fw === 'pt'} {:else} {/if} Батчинг - это отправка нескольких предложений через модель одновременно. Если у вас есть только одно предложение, вы можете просто создать батч с одной последовательностью: Это батч из двух одинаковых последовательностей! [!TIP] ✏️ Попробуйте! Преобразуйте этот список batched_ids в тензор и пропустите его через вашу модель. Проверьте, что вы получаете те же логиты, что и раньше (но дважды)! Батчинг позволяет модели работать, когда вы подаете ей несколько последовательностей.
План урока
- Модели ожидают батч входов
- Дополнение входов
- Маски внимания
- Более длинные последовательности
Урок входит в полный доступ. Полный текст и видео открываются после оплаты. Первые уроки каждого курса бесплатны.