KnigaRead.com/
KnigaRead.com » Компьютеры и Интернет » Базы данных » Охота на электроовец. Большая книга искусственного интеллекта - Марков Сергей Николаевич

Охота на электроовец. Большая книга искусственного интеллекта - Марков Сергей Николаевич

На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн Марков Сергей Николаевич, "Охота на электроовец. Большая книга искусственного интеллекта" бесплатно, без регистрации.
Перейти на страницу:
Охота на электроовец. Большая книга искусственного интеллекта - image243.jpg
Рис. 133. Архитектура нейросетевой модели BERT, основанной на блоках трансформера. CLS — специальный символ, добавляемый в начало каждого примера, SEP — специальный токен-разделитель. Каждому токену входной последовательности соответствует вектор эмбеддинга размерностью 768

Авторы оригинальной версии трансформера также исследовали подход, при котором модель сама выучивала матрицу позиционного кодирования. Каждому порядковому номеру токена в последовательности сопоставляется вектор, который на старте обучения инициализируется случайными значениями. Затем векторы эмбеддингов выучиваются одновременно с остальными параметрами сети, что позволяет в процессе обучения подстроить эмбеддинги так, чтобы они сочетались с временно́й компонентой наиболее полезным для модели образом. Такие эмбеддинги называют «абсолютными позиционными» (Absolute Positional Embeddings), а замена слова encoding на embedding подчёркивает особенность применяемого механизма (однако совпадение аббревиатур нередко служит источником непонимания для начинающих).

Обе версии трансформера показали в экспериментах примерно одинаковые результаты, поэтому авторы остановились на версии с синусоидальным кодированием, так как очевидным недостатком второго способа является то, что обученная модель будет способна работать только с последовательностями, длина которых не превышает количества выученных векторов позиционного эмбеддинга. Это, впрочем, не остановило создателей более поздних моделей на основе трансформерной архитектуры, например популярной и по сей день модели BERT (Bidirectional Encoder Representations from Transformers, Двунаправленный кодировщик представлений на основе трансформеров) [2166], в которой для кодирования позиционной информации используются именно абсолютные позиционные эмбеддинги.

Для того чтобы решить проблему с обработкой длинных последовательностей, исследователи из Google изобрели альтернативный способ кодирования позиции, который получил название «относительных позиционных эмбеддингов» (Relative Position Embeddings, RPE). Вместо того чтобы опираться на абсолютную позицию токенов, они используют расстояние между токенами (при этом если оно превышает максимальное значение, то считается равным ему) и выучивают векторы эмбеддингов, соответствующие этой относительной позиции. Эти векторы затем используются при расчёте матрицы внимания «на лету», поскольку каждой из её ячеек соответствуют конкретные позиции токенов входной последовательности. Способы учёта относительной позиционной информации при расчёте матрицы внимания могут различаться в зависимости от конкретной реализации. В первой работе, посвящённой позиционному кодированию, векторы эмбеддингов относительной позиции складываются с матрицей ключей (K) и с матрицей значений (V) [2167]. Позже было показано, что можно ограничиться лишь сложением с матрицей ключей (K) [2168].

В современных трансформерных моделях обычно используются и более изощрённые способы позиционного кодирования — такие, например, как ротационные позиционные эмбеддинги (Rotational Position Embeddings, RoPE) [2169], экстраполируемые позиционные эмбеддинги (Extrapolatable Position Embeddings, xPos) [2170] или внимание с линейными смещениями (Attention with Linear Biases, ALiBi) [2171]. Более того, некоторые исследования показывают, что трансформерные модели могут иногда работать и вовсе без позиционного кодирования [2172].

Благодаря пригодности к эффективной параллелизации многослойные трансформеры быстро стали лидерами в самых разных задачах, причём не только в области обработки естественного языка, но и в других, связанных с обработкой последовательностей, вне зависимости от их природы. Музыка, записанная в виде последовательности нот, человеческая речь, представленная в виде последовательностей амплитуд звуковых волн, программный код, химические формулы, изображения, представленные в виде последовательностей пикселей, и даже последовательности действий в компьютерной игре — всё это может обрабатываться при помощи трансформеров.

Последующее переосмысление изначальной архитектуры привело к появлению трёх важных классов трансформерных сетей: сетей, основанных только на кодирующих блоках трансформера (энкодерные архитектуры), сетей, основанных только на декодирующих блоках (декодерные архитектуры), и архитектуры типа «кодировщик — декодер», использующие, подобно оригинальному трансформеру, оба типа блоков.

Энкодерные архитектуры чаще всего применяются в задачах, связанных с классификацией и поиском последовательностей. К их числу относятся, например, уже упоминавшаяся нами модель BERT и её наследники — ALBERT [2173], RoBERTa [2174] и так далее.

Сама идея кодирования блока текста в вектор фиксированного размера, который можно использовать в задачах классификации или оценки семантической близости, значительно старше трансформеров — мы уже говорили об этом ранее. Благодаря комбинации векторных вложений с LSTM-сетями были созданы такие модели, как CoVe [2175], ELMo [2176], ULMFiT [2177], позволившие заметно улучшить результаты методов, использовавших простые способы комбинации векторов отдельных слов (уже упоминавшийся нами dov2vec). Но с появлением BERT и других трансформерных кодировщиков подход с векторизацией текстов при помощи нейронных сетей приобрёл действительно широкую популярность.

Декодерные архитектуры более популярны в задачах генерации. Именно к этому классу относятся генеративные монстры GPT [2178], GPT-2 [2179], GPT-3 [2180] и так далее от OpenAI, о которых мы поговорим несколько позже.

Сети типа «кодировщик — декодер» (T5 [2181] и др.) могут использоваться в самых разных задачах, и, хотя обычно они более затратны с вычислительной точки зрения, именно при их помощи удалось получить рекордные результаты во многих задачах, связанных с обработкой естественного языка.

Модели на основе трансформеров задали новую планку в качестве машинного перевода, сентимент-анализа (анализ тональности высказываний), языковом моделировании, диалоговых системах. Уровень «понимания» естественного языка, демонстрируемый этими моделями, существенно превосходит «способности» моделей предыдущего поколения.

Для оценки способности модели понимать естественный язык можно использовать тесты на понимание прочитанного. В английском языке для этого предназначен раздел «Чтение» (Reading) теста SAT (Scholastic Assessment Test/Scholastic Aptitude Test, Академический оценочный тест, стандартизованный тест, применяемый для оценки способностей абитуриентов при приёме в высшие учебные заведения в США, аналог российского ЕГЭ). На данном тесте основан крупнейший общедоступный ресурс для сравнения моделей — набор данных RACE (Large-scale ReAding Comprehension Dataset From Examinations, Крупномасштабный набор данных с экзаменов для понимания прочитанного), созданный в 2017 г. и содержащий около 28 000 отрывков и около 100 000 вопросов, сформулированных преподавателями английского языка. При случайном выборе ответов точность составляет 25%, а точность, показанная людьми (пользователями платформы Amazon Mechanical Turk) после отбрасывания вопросов с неоднозначным ответом и вопросов без правильного ответа, — около 95% [2182].

Перейти на страницу:
Прокомментировать
Подтвердите что вы не робот:*