Технологии искусственного интеллекта

Богдан Немешаев · Опубликовано:

Эта карта представляет машинное обучение, нейросети и связанные с ними методы как часть технологий искусственного интеллекта. Нажмите на любой узел, чтобы перейти к простому объяснению и примеру применения.

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

Карта машинного обучения

На узком экране прокручивайте карту внутри рамки. С клавиатуры выбирайте узлы клавишей Tab и открывайте пояснения клавишей Enter. Под картой есть текстовая навигация.

Карта технологий машинного обучения — GradientPrime 23 узла: машинное обучение, классическое машинное обучение, ансамблевые методы, обучение с подкреплением, нейросети и глубокое обучение и их дочерние направления. Сплошные линии показывают основную иерархию; пунктирные стрелки — дополнительные связи. Направления могут пересекаться. Трансформеры — основа большинства современных LLM. Каждый блок является ссылкой на соответствующий раздел этой статьи. Как читать карту Основные связи Дополнительные связи Направления могут пересекаться.
Сплошные линии показывают основную иерархию, пунктирные стрелки — дополнительные связи между направлениями.

Машинное обучение

Машинное обучение — способ создавать модели, которые находят закономерности в данных и используют их на новых примерах. Модель — это настроенная в ходе обучения система вычислений. Она может предсказывать значения, распознавать категории или находить сходство между объектами.

Пример: магазин использует прошлые продажи, дни недели и сведения об акциях, чтобы оценить спрос на следующую неделю. Полезность такого прогноза проверяют на данных, которые не участвовали в обучении.

Классическое машинное обучение

На карте так названы методы, которые обычно рассматривают отдельно от глубоких нейросетей: например, линейные модели, деревья решений и поиск ближайших соседей. Часто они работают с таблицей признаков — измеримых свойств объектов. Эти методы решают задачи прогнозирования, классификации и поиска структуры в данных; слово «классическое» не означает «устаревшее».

Пример: по расстоянию, весу посылки и типу доставки дерево решений оценивает срок прибытия. При этом деление карты условно: ансамбли тоже часто строят из классических моделей.

Обучение с учителем

При обучении с учителем у примеров уже есть нужные ответы: категория письма, известная цена или фактический срок доставки. «Учитель» здесь — эти ответы, а не человек, который подсказывает модели на каждом шаге. Сопоставляя прогнозы с ответами, модель учится предсказывать результат для новых данных.

Пример: почтовый фильтр обучают на письмах с отметками «спам» и «обычное письмо». Такой способ обучения подходит и классическим алгоритмам, и нейросетям.

Классификация

Классификация в машинном обучении — определение категории объекта из заранее заданного набора. В зависимости от задачи модель выбирает одну категорию или несколько подходящих меток. Это помогает автоматически сортировать данные и направлять их на дальнейшую обработку.

Пример: система распределяет обращения в поддержку по темам «оплата», «доставка» и «возврат». Категории известны заранее, а модель учится узнавать их по тексту обращения.

Регрессия

Регрессия — предсказание числового значения: времени, температуры, стоимости или объёма спроса. Здесь важно оценить величину, а не выбрать название категории. Результат остаётся прогнозом и может отличаться от фактического значения.

Пример: модель оценивает доставку в 45 минут по расстоянию, времени суток и загрузке курьеров. Это задача регрессии; выбор метки «быстрая» или «медленная» доставка был бы классификацией.

Обучение без учителя

При обучении без учителя данные не сопровождаются готовыми целевыми ответами для каждого примера. Алгоритм ищет внутреннюю структуру: группы похожих объектов, повторяющиеся сочетания или более компактное представление. Человек всё равно выбирает данные и проверяет, насколько найденные закономерности полезны.

Пример: компания исследует обращения клиентов без заранее заданных тем. Алгоритм помогает увидеть группы похожих сообщений, после чего специалист выясняет, о каких вопросах в них идёт речь.

Кластеризация

Кластеризация — объединение похожих объектов в группы, или кластеры. В отличие от классификации, готовые категории для каждого примера не заданы. Сходство определяется выбранными признаками, поэтому при другом представлении данных группы могут измениться.

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

Поиск ассоциативных правил

Ассоциативные правила описывают сочетания, которые встречаются в данных: если есть одни элементы, рядом нередко оказываются другие. Поиск таких правил помогает изучать совместные покупки и повторяющиеся события. Совместная встречаемость сама по себе не доказывает причинную связь.

Пример: анализ чеков показывает, что вместе с кофе часто покупают бумажные фильтры. Магазин может проверить, полезно ли предлагать их вместе; правило не означает, что каждый покупатель кофе обязательно купит фильтры.

Уменьшение размерности

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

Пример: товары описаны десятками характеристик. Метод переводит их в точки на плоскости, чтобы можно было рассмотреть сходство между товарами. Такая картинка передаёт лишь часть исходных различий.

Ансамблевые методы

Ансамбль объединяет результаты нескольких моделей в общий ответ. Идея в том, что разные модели могут дополнять друг друга и частично компенсировать ошибки. Ансамбли применяют и для классификации, и для регрессии, но несколько моделей не обязательно окажутся лучше одной.

Пример: несколько моделей оценивают спрос на товар, а их прогнозы объединяют. Бэггинг, бустинг и стекинг различаются тем, как обучаются участники и как складываются их ответы.

Бэггинг

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

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

Бустинг

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

Пример: ансамбль деревьев прогнозирует спрос. Если текущая оценка плохо учитывает дни с акциями, следующие деревья могут помочь скорректировать эти ошибки. Это не гарантирует точность на новых, непохожих данных.

Стекинг

Стекинг — объединение прогнозов с помощью ещё одной модели. Модели первого уровня решают исходную задачу, а модель второго уровня учится сочетать их ответы. Для её обучения используют прогнозы на примерах, которые соответствующие модели первого уровня не видели при обучении: иначе качество легко переоценить.

Пример: одна модель прогнозирует продажи по сезонности, другая — по ценам и акциям. Модель второго уровня учится объединять эти оценки в прогноз спроса.

Обучение с подкреплением

При обучении с подкреплением агент — программа, принимающая решения, — действует в среде и получает числовую обратную связь, называемую наградой. Он учится выбирать последовательность действий ради общего результата за несколько шагов. Выгодное сейчас действие не всегда приводит к лучшему итогу.

Пример: в симуляции складской робот пробует маршруты и получает награду за доставку груза, а штраф — за столкновения. Так можно обучать поведение для последовательных решений; перенос из симуляции в реальный склад требует отдельной проверки. Для выбора действий агент может использовать нейросеть.

Нейросети и глубокое обучение

Нейросеть — модель из связанных вычислительных элементов, параметры которых настраиваются при обучении. В глубоком обучении несколько слоёв последовательно преобразуют данные, выделяя полезные представления. Архитектура нейронной сети — способ организации этих слоёв и связей.

Пример: при распознавании изображения одни слои могут выделять края и небольшие детали, а следующие — сочетать их в признаки объектов. Нейросети также работают с речью, текстом и таблицами. Тип сети и способ её обучения — разные вещи: нейросети применяют в обучении с учителем, без учителя и с подкреплением.

Многослойный перцептрон — MLP

Multilayer perceptron (MLP) — многослойный перцептрон, один из базовых видов нейросетей. Он передаёт значения от входа через промежуточные слои к выходу; в полносвязных слоях каждый элемент связан со всеми элементами предыдущего слоя. MLP может находить сложные зависимости между признаками и решать задачи классификации или регрессии.

Пример: по температуре, вибрации и нагрузке оборудования сеть оценивает, относится ли текущее состояние к обычному режиму или к признакам неисправности.

Свёрточные нейросети — CNN

Convolutional neural network (CNN) — свёрточная нейронная сеть. Свёртка применяет один и тот же обучаемый фильтр к небольшим участкам данных, например к соседним пикселям. Это помогает находить характерные детали в разных местах изображения и затем объединять их в более сложные признаки.

Пример: сеть анализирует фотографию изделия с конвейера и помогает обнаружить царапины или сколы. Свёртки применяют и к другим данным с локальной структурой, например к звуковому сигналу.

Рекуррентные нейросети — RNN

Recurrent neural network (RNN) — рекуррентная нейронная сеть. При обработке последовательности она передаёт между шагами внутреннее состояние — сведения о предыдущих элементах. Это позволяет учитывать порядок наблюдений в тексте, звуке или показаниях датчиков, хотя способность сохранять дальний контекст ограничена.

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

Автоэнкодеры

Автоэнкодер — нейросеть, которую обучают восстанавливать входные данные через внутреннее представление. Кодировщик преобразует вход, а декодировщик восстанавливает его. Ограничения на представление, например его небольшой размер, заставляют сеть выделять полезные особенности. Подход используют для сжатия представлений, поиска необычных объектов и удаления шума.

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

Генеративно-состязательные сети — GAN

Generative adversarial network (GAN) — генеративно-состязательная сеть. При обучении взаимодействуют две сети: генератор создаёт примеры, а дискриминатор учится отличать их от примеров из обучающих данных. Генератор, в свою очередь, учится делать результат, который труднее отличить от исходных данных.

Пример: GAN обучают на изображениях текстур, чтобы создавать новые варианты похожих поверхностей для макетов. Правдоподобный вид результата не означает, что он точно воспроизводит свойства реального материала.

Трансформеры

Трансформер — архитектура нейросети с механизмом внимания. Этот механизм позволяет при обработке одного элемента учитывать связанные с ним элементы входных данных. В тексте элементами могут быть слова или их части. Трансформеры применяют для перевода, анализа и создания текста, а также для работы с изображениями и другими данными.

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

Большие языковые модели — LLM

Large language model (LLM) — большая языковая модель, обученная на больших объёмах текстовых данных. При создании текста генеративная LLM обычно предсказывает следующие токены — слова, части слов или другие фрагменты записи — с учётом контекста. Такие модели используют для ответов на вопросы, краткого изложения документов и подготовки черновиков.

Пример: модель составляет краткое содержание длинной инструкции. Результат нужно сверить с оригиналом: LLM может пропустить условие или добавить правдоподобное, но неверное утверждение. Языковая модель и приложение на её основе — не одно и то же: поиск по документам и другие функции могут добавляться отдельно.

Диффузионные модели

Диффузионные модели учатся обращать процесс постепенного зашумления данных. При создании результата модель обычно начинает со случайного шума и за несколько шагов формирует из него изображение или другое содержимое. Текстовое описание может задавать направление этого процесса, если модель обучена учитывать текст.

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