
Полная версия
Цифра и мы. Истории о нашем прошлом, настоящем и будущем
Второе предубеждение – нейросети обучаются на абсолютно случайных данных, которые они вытягивают из интернета. Попробуем кратко объяснить, почему это не совсем так.
В машинном обучении есть важнейший термин датасет. Датасеты – это организованные наборы данных, которые используются для обучения и тестирования нейросетей. Как правило, они представляют из себя упорядоченные коллекции записей, каждая из которых содержит различные характеристики конкретного объекта.
Если ввести в поисковой строке Google слово «датасет», то в выдаче будет много результатов с такими названиями: «130+ датасетов для машинного обучения», «Топ 100 open source датасетов», … В реальности доступных датасетов – десятки тысячи. Они различаются по назначению, содержанию и объему. Вот несколько примеров:
ImageNet – легенда, изменившая мир машинного обучения, которую мы уже упоминали. 14+ миллионов размеченных изображений в более чем 20 000 категорий.
MNIST – 70 000 рукописных цифр размером 28×28 пикселей.
Kinetics-700 – 650 000 видеоклипов из YouTube, покрывающих 700 классов человеческих действий. Минимум 700 примеров на каждое действие — от занятий спортом до повседневной активности.
Отдельные датасеты можно найти для различных видов транспорта, одежды, обуви и мебели, фруктов, овощей и цветов, древнеегипетских иероглифов, деталей автомобилей, ситуаций на дороге, … Сложно придумать тему, для которой не найдется подготовленного датасета.
В интернете существует много открытых и закрытых коллекций датасетов. Например, американское правительство создало ресурс, который содержит тысячи датасетов от федеральных агентств по климату, здравоохранению, транспорту, экономике. Данные структурированы по регионам и уровням власти, что упрощает поиск. Есть коллекция датасетов на основе статистики здравоохранения от ВОЗ.
Для увеличения объема данных, которые можно использовать в обучении, часто применяется их аугментация – внесение незначительных изменений в реальные данные. Например, на фотографии человека меняется цвет глаз, форма носа, прическа. Измененные данные увеличивают объем обучающего набора, и при этом сохраняется связь с реальными данными.
Кроме датасетов, огромное значение для обучения нейросетей имеют синтетические данные. Так называют сгенерированные компьютером данные, похожие на настоящие, но при этом полностью выдуманные. Это не фотографии лиц реальных людей, а изображения лиц, нарисованные нейросетью. Это не истории болезни реальных людей, а придуманные истории вымышленных пациентов, похожие на настоящие. Это не портреты реальных покупателей, а похожие имитации с ФИО, которые берутся «с потолка».
Применение в обучении синтетических данных позволяет справиться с несколькими проблемами, которые плохо решаются или вообще не решаются при работе с реальными данными.
Дефицит и редкость данных. Например, нейросеть нужно научить диагностировать редкую болезнь. Реальных историй болезни – десяток, крайне мало для обучения. В таких случаях на помощь приходят синтетические данные, которые можно создать вручную или по заданным алгоритмам. Нейросеть учится на «выдуманных» данных и начинает лучше распознавать реальные.
Проблемы конфиденциальности. Законы о персональных данных ужесточаются во всех странах. Компании как огня боятся их утечки, и синтетические данные – то, что нужно в этой ситуации. Например, банк хочет сделать нейросеть, которая будет предсказывать, кто возьмет кредит и вернет, а кто – нет. Использовать для ее обучения реальные данные клиентов — опасно и незаконно. Поэтому создаются мифические кредитные истории «выдуманных» клиентов, похожие по статистике на настоящие истории. Для обучения нейросети подходит, сохранность персональных данных не нарушена.
Стоимость реальных данных. Например, чтобы обучить беспилотный автомобиль ездить по разным дорогам, нужно потратить много ресурсов на реальные тестовые поездки. Синтетические данные помогают сократить издержки. Создается виртуальная среда, в которой нейросеть автомобиля собирает синтетические данные с камер и датчиков и учится принимать правильные решения.
Дисбаланс реальных данных. В реальных данных один тип данных может присутствовать в избытке, а данных другого типа – явно недостаточно. Обучение на них будет однобоким и в итоге – ущербным. Синтетические данные помогают выравнивать такие дисбалансы.
Мусор в реальных данных. Как и сама жизнь, реальные данные – не идеальны. В них могут быть опечатки, ошибки, случайные помехи, которые мешают обучению нейросети. Синтетические данные могут быть очищены от этих помех.
Синтетические данные играют важную роль в машинном обучении, но всегда следует помнить об опасностях их чрезмерного или неуместного применения.
Синтетические данные могут быть недостаточно похожи на реальные. Например, человеческие лица, которые генерируют нейросети, как правило, идеальны и не имеют явных изъянов. Если нейросеть обучать только на таких лицах, она будет плохо распознавать реальные лица с морщинами, дефектами и разными оттенками кожи, плохим освещением.
Синтетические данные могут потерять важные нюансы реальных данных. Например, при разработке беспилотного наземного транспорта нужно учитывать все особенности погодных условий. Если забыть, например, про извилистую скользкую дорогу, в какой-то момент это станет катастрофическим недостатком.
Резюме. Подбор и/или подготовка специальных наборов данных для обучения нейросетей – это искусство в сочетании с высокой квалификацией. Да и потенциал накопленных человечеством неструктурированных данных далеко не исчерпан – генеративному ИИ есть, чему учиться.
Обучение, проверка и настройка LLM

Я получил образование в библиотеке.
Совершенно бесплатно.
Рэй Брэдбери
Обучаться на структурированных наборах данных – датасетах – нейронные сети научились еще до революции генеративного ИИ. Такое обучение до сих пор играет важную роль, но революцию вызвали другие технологические решения. Их название сегодня слышали многие – большие языковые модели (Large Language Model, LLM).
LLM способны «понимать» поступающий на вход текстовый запрос и адекватным образом реагировать на него. Эта их способность после выхода в свет ChatGPT 3.5 уже несколько лет будоражит умы людей. Для большинства такая способность LLM – таинство и повод говорить об искусственном разуме, к созданию которого наконец-то приблизилось любознательное человечество.
Будем разбираться, как обычно – «на пальцах».
Прежде чем LLM начнет на равных общаться с людьми, ее нужно этому обучить. Обучаются LLM на обычных человеческих текстах – книгах, публикация в СМИ, официальных документах, мнениях самых разных людей по самым разным поводам. Такое обучение предполагает, что LLM правильно воспринимает и интерпретирует поступающие на вход тексты, а результаты каждой интерпретации улучшают возможности LLM к последующему общению.
Прежде чем перейти к обучению LLM, перечислим некоторые проблемы, с которыми сталкиваются любые технологии обработки естественного человеческого языка. До недавнего времени решение этих проблем казалось невыполнимой задачей.
Проблемы и примеры будем приводить для русского языка.
Неоднозначные по смыслу фразы. Бытие определяет сознание. Что здесь что определяет на самом деле. Хочешь есть? Да нет, не знаю. Так «да», «нет» или «не знаю»?
Многозначные слова. Что ты думаешь об этом замке? А про что речь – про рыцарский замок или про дверной замок?
Фразеологизмы. Ни пуха, ни пера. У нас нет ни того, ни другого? Темная лошадка. А это лошадь какого цвета?
Отнесение местоимений к существительным. Мы составляли план праздника, потому что он … был очень нужен; … был очень близок. Без контекста невозможно определить, к чему относится местоимение «он».
Это лишь некоторые проблемы, которые подчеркивают сложность задачи понимания текстов. Тем не менее LLM научились справляться и с этими проблемами, и со многими другими, которые делают человеческий язык образным, богатым, эмоциональным.
Напомним, что в основе LLM лежат трансформеры – архитектура, которая пришла на смену RNN – рекуррентным нейросетям. RNN воспринимают и обрабатывают текст последовательно – слово за словом. На больших текстах RNN работают плохо и неэффективно. Трансформеры способны воспринимать тексты целиком, сохраняя при восприятии заложенные в них смыслы и контекст.
LLM обучается на огромном количестве текстов. Обычно эти тексты делятся на три части. Первая используется непосредственно для обучения, вторая – для настройки параметров, третья – для итоговой проверки. Эти части не должны пересекаться, так как это завышает оценку качества работы LLM.
Сначала текст из первой части поступает в блок предварительной обработки, которая автоматически выполняется в несколько шагов.
На первом шаге текст разбивается на токены. Большинство токенов – это отдельные слова, но в целом ситуация сложнее и токенами могут быть неразделимые сочетания слов. Например, Нижний Новгород. Разбивать это название на два слова «нижний» и «Новгород» неправильно, так как в последующем приведет к искажениям. Таким образом, токены – это минимальные смысловые единицы.
Иногда токены объединяются в связанные последовательности, если в реальном языке соответствующие слова используются как устойчивые сочетания. Например, словосочетание «правильная дробь» целесообразно представить одним объектом для последующей обработки.
На втором шаге текст, разбитый на токены, нормализуется. Эта процедура предполагает переход к нижнему регистру, удаление знаков препинания, перевод в символьный вид всех чисел, расшифровку аббревиатур и некоторые другие операции.
На следующем шаге в словах-токенах выделяются корни путем устранения приставок, суффиксов, окончаний, они приводятся к канонической форме. Глаголы и его формы ставятся в неопределенную форму, существительные и прилагательные – в именительный падеж единственного числа. Слова «подумаю» и «думая» превращаются в слово «думать». Слова «веселенькие» и «празднички» в слова «веселый» и «праздник».
На последнем шаге подготовительного этапа проводится чистка текста – удаляются слова, которые не несут смысловой нагрузки: (артикли, междометья, союзы, предлоги).
После этого текст готов к переводу в его в числовые векторы и последующей обработке. Здесь начинается самая сложная для понимания часть процесса обучения LLM, за которой стоит математика, понятная и нужная специалистам по проектированию и обучению нейросетей. Для нас важно понять концептуальный смысл дальнейших действий, которые предпринимает LLM, формируя, поглощая и обрабатывая векторное представление подготовленного текста.
На первом шаге токены заменяются числами. Для замены используются заранее подготовленные переводные словари, в которых представлены пары «токен – число». Далее под токенами будем понимать их числовые представления.
Для дальнейшего погружения еще раз обратимся к архитектуре трансформеров, которая лежит в основе работы LLM. Важнейшим ее элементом является механизм внимания (attention). Этот механизм заменяет в LLM механизм понимания, который лежит в основе человеческого мышления.
Как и почему человек понимает текст и все его контекстные нюансы – до сих пор большая загадка. Во многом понимание человека интуитивно, не предсказуемо и вряд ли представимо в виде строгой математической модели. Механизм внимания LLM – это не метафора, не интуиция, а строгий математический аппарат. В результате его применения LLM великолепно имитирует важнейшую когнитивную способность человека – понимание речи.
С помощью механизма внимания LLM определяет, какие токены входного текста наиболее значимы в конкретной ситуации. LLM не фиксирует последовательность токенов, а вычисляет, какие из них связаны между собой и насколько. Каждый токен сопоставляется с каждым, независимо от их положения в тексте. По результатам сопоставления формируется матрица весов, которая отражает степень значимости каждой пары токенов по отношению друг к другу.
Черный кот залез на черепичную крышу дома.
После применения механизма внимания к этому предложению, слова «кот» и «крыша», «кот» и «черный» оказываются в многомерном векторном пространстве ближе друг к другу, чем слова «кот» и «черепичный». Эта близость выражена строгими математическими отношениями (параметрами нейросети), которые можно использовать для дальнейшей работы».
По мере обработки различных текстов, векторное пространство расширяется и уточняется. Если про черного кота LLM узнала не из одного текста, а из многих, близость слов «кот» и «черный» будет зафиксирована в результатах обучения LLM более прочно.
Естественный язык многогранен. Слова в предложениях и тексте связаны не только по смыслу, но и по синтаксису, позиции, ассоциациям, стилистике, концепциям.
Черный кот, живущий на крыше дома, напоминает не животное, а трубочиста.
Слова «черный» и «кот», «черный» и «напомнить» – связь смысловая и синтаксическая, так как это словосочетания. Слова «кот» и «трубочист» – связь ассоциативная. Слова «кот» и «животное» – связь концептуальная.
Поэтому в LLM используется механизм множественных голов внимания (multi-head attention). Каждая «голова» – это независимый блок внимания, обучающийся видеть определённый вид связей и вычислять соответствующие им весовые параметры. Так формируется сложная многослойная структура внимания, где LLM одновременно смотрит на текст под разными углами. Это делает его восприятие более точным и гибким, а внутреннее представление текста – многомерным.
Результатом всей процедуры является многомерная матрица внимания, в которой каждому слову присвоены веса, показывающие его важность для всех остальных слов по разным видам связей.
А теперь представим себе, какое количество связанных данных должно храниться в многомерном векторном пространстве после того, как LLM «прочитает» тысячи книг и сотни тысяч публикаций. Именно поэтому для больших языковых моделей понадобились нейросети с миллиардами параметров и огромные вычислительные мощности.
На этапе предварительного обучения LLM «проглатывает» огромное количество книг и публикаций, представляющих разные грани человеческого творчества – от юмористических рассказов до научных отчетов, от коротких новостных сообщений до романов. Обработать поступающие на вход тексты – первая задача LLM. Вторая задача – генерировать связанный текст в ответ на запросы пользователей.
Когда LLM генерирует текст, она не думает и не выбирает в человеческом смысле. У нее нет интуиции, воли или намерения. Есть только математическая структура, в которой каждое возможное слово имеет свои веса, зависящие от контекста. И есть стратегия генерации, которая формирует последовательность слов. Каждое следующее слово подбирается с учетом четырех основных факторов:
первый фактор – математическая структура поступившего на вход запроса пользователя;
второй фактор – математическая структура, сформированная на этапе предварительного обучения;
третий фактор – вероятностные алгоритмы, позволяющие подбирать наиболее подходящие слова (если в запросе есть слова «лаять» и «кусать», наиболее вероятное слово для подбора – «собака»);
четвертый фактор – сформированная до этого последовательность слов в ответе.
Вероятностные алгоритмы могут быть настроены разными способами. Можно использовать очевидное правило «подбирать слова в лоб, с самой высокой совокупной вероятностью».
Солнце взошло над…
Вероятность токена «море» – 0.45, токена «город» – 0.30, токена «стакан» – 0.001. Модель не задумываясь выбирает токен «море». Текст получается предсказуемым и … скучным. Если вероятностные алгоритмы настроить более тонко, можно получить красивую литературную фразу.
Солнце взошло над прекрасным просыпающимся городом.
После предварительного обучения LLM
Конец ознакомительного фрагмента.
Текст предоставлен ООО «Литрес».
Прочитайте эту книгу целиком, купив полную легальную версию на Литрес.
Безопасно оплатить книгу можно банковской картой Visa, MasterCard, Maestro, со счета мобильного телефона, с платежного терминала, в салоне МТС или Связной, через PayPal, WebMoney, Яндекс.Деньги, QIWI Кошелек, бонусными картами или другим удобным Вам способом.







