Это нейробаза
Кратко объясняем ключевые термины из области ИИ
Любую технологию, связанную с искусственным интеллектом, сегодня принято называть нейросетью. На самом деле это далеко не всегда корректно: например, GPT-4 — языковая модель на базе нейросети. Вместе с научно-исследовательским Институтом искусственного интеллекта AIRI мы подготовили материал, который поможет разобраться в том, какие технологии сегодня используют разработчики систем искусственного интеллекта, и на базовом уровне понять, как устроены последние достижения в этой области.
Вокруг только и говорят что об искусственном интеллекте. Что это такое?
Так называют область компьютерных наук или информатики, которая занимается созданием интеллектуальных систем, способных выполнять задачи, обычно требующие интеллектуальных усилий человека. ИИ использует алгоритмы1 и модели2, которые позволяют компьютерам изучать, анализировать и принимать решения на основе некоторого набора данных.
1. Алгоритм — набор инструкций, который может быть выполнен компьютером или другим устройством.
2. Модель — упрощенное представление реальной системы или явления, которое позволяет анализировать и предсказывать ее поведение.
Иногда под искусственным интеллектом (Artificial Intelligence, AI) ошибочно понимают сильный искусственный интеллект (Artificial General Intelligence, AGI) — систему, которая может «думать и действовать» как человек. На самом деле большинство современных разработок в этой сфере предназначены для выполнения конкретных задач, и многие называют их слабым искусственным интеллектом (Narrow AI) или технологиями искусственного интеллекта (AI Technologies). Например, программа для игры в шахматы не умеет отвечать на вопросы, а чат-бот, имитирующий живого собеседника, — рисовать изображения. Тем не менее постепенно искусственный интеллект становится все более функциональным. Например, языковая модель GPT-4, хотя все еще не может генерировать ничего, кроме текста, умеет обрабатывать не только текстовые запросы, но и изображения.
На сегодняшний день можно выделить три основные области искусственного интеллекта и три сопутствующие им задачи.
Машинное обучение (Machine Learning), глубокое, или глубинное, обучение (Deep Learning) и базисные модели (Foundation Models) — это области в разработке ИИ, которые позволяют системе самостоятельно учиться на основе больших объемов данных и опыта.
Глубокое обучение — это подраздел машинного обучения, использующий сложные нейронные сети для решения самых нетривиальных задач, например распознавания речи и обработки естественного языка. Фундаментальное отличие глубокого обучения от машинного заключается в том, что для машинного обучения измеримые свойства данных (признаки), на которые ИИ должен обратить внимание, задает человек, тогда как глубокое обучение находит их самостоятельно.
- Компьютерное зрение (Computer Vision) — группа задач по разработке алгоритмов и моделей для распознавания и анализа изображений и видео. Сюда относятся технологии распознавания лиц, номерных знаков и, например, диагностика медицинских изображений. Кстати, компьютерное зрение не то же самое, что машинное (подробнее об этом читайте в нашем материале «Смотри внимательно»).
- Обработка естественного языка (Natural Language Processing, NLP) — группа задач, в которых алгоритмы и модели используются для анализа и понимания естественного языка (то есть языка, на котором люди общаются друг с другом). Сюда относятся, например, технологии автоматического перевода, распознавания речи и анализа тональности текста.
- Экспертные системы и системы знаний (Expert Systems and Knowledge Management) — эта группа задач предполагает использование баз знаний и правил для создания систем, которые могут принимать (или помогать принимать) решения, а также разрешать проблемы в конкретных областях. К ним относятся, например, системы диагностики и поддержки принятия решений.
Какие технологии и инструменты используют разработчики ИИ?
Нейронные сети — на данный момент, вероятно,основной инструмент в сфере искусственного интеллекта. Как и человеческий мозг, нейронные сети состоят из узлов (нейронов), которые обрабатывают информацию и обмениваются ею друг с другом. В зависимости от задачи разработчики применяют различные архитектуры нейронных сетей.
Например, сверточные нейронные сети (Convolutional Neural Networks, CNN) широко используются для обработки изображений и видео. Это особый класс многослойных нейросетей, способных извлекать из изображений характерные признаки, уменьшать эти данные в размере (это и называется сверткой) и благодаря этому эффективно распознавать объекты и обрабатывать большие объемы данных. Такие нейросети могут, например, находить на видео целующихся людей и помогать ученым восстанавливать позы животных.
- Нейрон — базовый элемент нейронной сети. Он принимает входные данные, обрабатывает их и передает результат следующему нейрону.
- Слой — группа нейронов, которые сообща обрабатывают данные. Каждый слой может выполнять определенную функцию, например извлекать признаки из данных или предсказывать значения.
- Признаки — это характеристики или свойства данных. Например, при анализе изображения к признакам могут относиться цвет, текстура, форма объектов и так далее.
- Соединение — это связь между нейронами в нейронной сети. Они передают данные и сигналы между собой, чтобы обрабатывать информацию.
- Веса соединений — числа, которые определяют вклад каждого соединения в итоговый результат модели. В процессе обучения нейронная сеть пытается настроить веса соединений, чтобы минимизировать ошибку модели. Веса соединений обычно начинаются со случайных значений и обновляются в процессе обучения с помощью алгоритмов оптимизации. Настройка весов соединений — это один из ключевых этапов обучения нейронной сети.