Гайд по работе языковых моделей для начинающих Хабр

В процессе обучения они наносят все созданные ими суперслова на карту. Слова, чьи координаты — или местоположение — находятся ближе https://microsoft.com/en-us/ai друг к другу, более близки по смыслу. Но суперслова могут существовать и между любыми двумя точками на карте, так же как вы можете посетить любое место между, скажем, 1-й и 2-й улицами, даже если этот конкретный адрес на сетке не отмечен. Одну и ту же модель можно использовать и для генерации кода, и для имитации живого диалога или придумывания историй. Мартину за их книгу «Обработка речи и языка», которая была главным источником вдохновения для этой статьи. Хотя основы n-граммных языковых моделей были заложены в середине 20-го века, их широкое распространение началось в 1980-х и 1990-х годах. Вместе с дата-сайентистом и биоинформатиком Марией Дьяковой подготовили гайд о том, как устроены самые популярные языковые модели и что нужно знать, чтобы начать с ними работать. Они спросили у чат-бота, как из товаров на полках хозяйственного магазина сделать взрывчатку. Они умеют воспринимать содержание текста, продолжать предложения и вести осмысленный диалог. Это очень важный момент, который делает нейросеть более гибкой. Обучение большой языковой модели стоит очень дорого — десятки миллионов долларов, а дообучение или персонализация намного дешевле, чем обучение полноценной модели. Но необходимо отметить, что не все компании допускают такую персонализацию LLM. На этапе Pretrain модель учится предсказывать следующее слово в предложении.

Основная идея метода:


Одним из ключевых преимуществ FAISS является возможность сохранять созданные индексы локально. Это позволяет повторно использовать проиндексированные данные без необходимости их обработки заново, что экономит ресурсы и ускоряет поиск. Большие языковые модели (LLM) значительно повышают эффективность поиска и анализа документов благодаря технологии Retrieval-Augmented Generation (RAG). Они также говорят нам о том, что слова обладают огромной силой. Каждое слово, которое мы вводим в языковую модель, на самом деле является указателем, указывающим на определённое место в этом огромном ландшафте языковых возможностей. И модель генерирует то, что будет дальше, прокладывая путь от этого места, руководствуясь тонким взаимодействием всех указателей, которые были до этого.

Развитие языковых моделей

Таким образом с некоторого размера модели наблюдается повышение метрик качества при дальнейших дообучениях генерализованной модели на отложенных задачах. Например, модели задают вопрос и её задача — ответить «да» или «нет». Если few-shot состоит из четырёх примеров и они идут в порядке «да», «да», «нет», «нет», то, вероятнее всего, дальше модель ответит «нет» на любой вход, просто потому что слово «нет» встречалось последним. Его принято аппроксимировать на основе корпуса текстов (например, всего интернета) — в этом случае считаются совстречаемости слов друг с другом, и по ним считаются вероятности. Диапазон размеров модели огромен, поэтому перебор опять не решает проблему. Например, если на вход дано предложение «Сегодня хорошая погода», от хорошо обученной модели ожидается продолжение фразы вида «На улице тепло и солнечно». Модель можно специализировать на определенной области науки, например, химии, или на банковском деле, и такая специализация наверняка будет полезна специалистам. Причем, если одна группа ученых обучила персональный вариант специальным химическим знаниям, она может поделиться своей версией и с другими химиками. Хомский предложил разделить предложение на токены и строить граф взаимосвязей, описывающий грамматические отношения в предложении. В архитектуре трансформеров механизм внимания (attention) действует как эффективный детектор взаимозавистмостей токенов. В статье исследователей из Standford и Facebook AI [2] анализируется механизм внимания в трансформерах, они выявили, что разные головки (heads) внимания специализируются на разных типах взаимосвязей. Например, одна головка может сосредоточиться на взаимосвязи между глаголами и объектами, другая на связях между объектами и предлогами, как показано на Схеме 1. Например, если обучать модель на литературе об Африке, вполне вероятно, ожидаемым ответом на запрос «сегодня хорошая погода» станет «сегодня не жарко и идет дождь». А если датасетом для обучения станут статьи по метеорологии, ожидаемый результат может выглядеть как «температура +23°, влажность воздуха 60%». В его основе лежат нелинейные и вероятностные функции, с помощью которых модель предсказывает, какое слово в тексте может быть следующим, — рассчитывает вероятность для каждого из возможных слов. Стоит отметить, что модели на основе RNN используются и для обучения векторных представлений языка. В частности, наиболее известными моделями являются ELMo https://nvidia.com/en-us/research/ (2018) и ULMFiT (2018). Например, если обучать модель на литературе об Африке, вполне вероятно, что ожидаемым ответом на запрос «Сегодня хорошая погода» станет «Сегодня не жарко и идет дождь». Рассказываем, как языковые модели решают математические и логические задачи, если немного «подумают». Вы также можете создавать профили для разных аудиторий, учитывая особенности обучения модели для каждого случая. Например, технический специалист потребует других параметров генерации, чем неподготовленный пользователь. Помимо этих, существует большое количество других языковых моделей. Языковые модели, в частности BERT и GPT, — «золотой стандарт» для задач распознавания естественного языка, или NLP. Между слоями есть связи, которые помогают учитывать данные с предыдущих слоев. Это помогает не потерять важную информацию при прохождении какого-либо слоя. https://auslander.expert/ai-content-riski-resheniya/ Нейронные сети прямого распространения расположены после слоев внимания. Они добавляют к данным нелинейные преобразования — превращают вычисленные данные для каждого слова в N-мерный вектор. Благодаря своим размерам и особенностям архитектуры LLM отличаются большей гибкостью. Конкретные промпты, используемые в исследовании, представлены в их статье. На этом этапе загружается модель LLAMA2 для генерации ответов на основе контекстной информации, полученной из индексированных документов. LLAMA2 — это языковая модель, специально настроенная для задач генерации текста, поэтому часто используется для реализации Retrieval-Augmented Generation (RAG). Мы рассмотрели эволюцию языковых моделей в контексте генерации текста, которая охватывает как минимум последние три десятилетия. Несмотря на то, что мы не углублялись в детали, очевидно, как развивались языковые модели с 1990-х годов по настоящее время.