В последние годы нейронные сети прошли путь от простых сортировщиков картинок на смартфонах до помощников в решении глобальных задач в науке. Современные нейросети способны заменить или дополнить усилия человека во всех случаях, когда решение нужно принимать на основе предыдущего опыта.
Нейросеть — это тип машинного обучения, при котором компьютерная программа имитирует работу человеческого мозга. Подобно тому как нейроны в мозге передают сигналы друг другу, вычислительные элементы в нейросети обмениваются информацией.
Идею нейронных сетей впервые предложили исследователи из Чикагского университета Уоррен Маккалоу и Уолтер Питтс в 1944 году. Первую обучаемую нейросеть в 1957 году продемонстрировал психолог Корнеллского университета Фрэнк Розенблатт. Она была примитивной (одноуровневой). В 1980-х годах, когда появились более мощные компьютеры для вычислений, исследователи смогли разработать нейросети с двумя и тремя уровнями обучения.
Возрождение интереса к нейронным сетям и революция в глубоком обучении произошли в последние годы благодаря индустрии компьютерных игр. Современные игры требуют сложных вычислений для обработки большого числа операций. В итоге производители начали выпускать графические процессоры (GPU), которые объединяют тысячи относительно простых вычислительных ядер на одном чипе. Исследователи вскоре поняли, что архитектура графического процессора очень похожа на архитектуру нейросети.
Современные GPU позволили развивать «глубокое обучение» — повышать глубину слоев нейросети. Именно благодаря ему появились самообучаемые нейросети, которые не требуют специальной настройки, а самостоятельно обрабатывают входящую информацию.
КАК РАБОТАЕТ НЕЙРОСЕТЬ
Каждая нейронная сеть состоит из искусственных нейронов, которые имитируют работу человеческих. Это программные модули или узлы, которые взаимодействуют и обмениваются информацией для решения задачи.
Базовая нейронная сеть содержит три слоя искусственных нейронов:
• входной — обрабатывает информацию извне, анализирует или классифицирует ее и передает на следующий слой;
• скрытый (их может быть несколько) — анализирует выходные данные предыдущего слоя, обрабатывает их и передает на следующий;
• выходной — выдает окончательный результат после обработки всех данных.
Глубокие нейронные сети отличаются тем, что искусственные нейроны в них связаны друг с другом, а каждой такой связи присваивается определенный «вес», который отражает ее значимость. Кроме того, связь между нейронами может быть «упреждающей». Это означает, что данные проходят через них только в одном направлении. Такое происходит, если значение «веса» соединения ниже заданного.
При обучении нейронной сети все ее «веса» изначально задаются случайными значениями. Обучающие данные подаются на нижний, или входной, слой. Затем они проходят через последующие слои, пока не достигают выходного. Во время обучения «веса» и пороговые значения постоянно корректируются до тех пор, пока данные обучения не будут постоянно давать одинаковые результаты.
Эти «веса» помогают определить важность той или иной переменной во входных данных. При прохождении каждого слоя входные данные умножаются на их «веса», а затем суммируются. Если получившееся значение выше заданного порога, то нейрон активируется и передает данные на следующий уровень.
КАК ПРИМЕНЯЮТСЯ НЕЙРОСЕТИ
Нейронные сети широко используются в самых разных областях — от медицины и до сферы развлечений. Они выполняют несколько основных типов задач.
Автоматическая генерация контента. Нейросети могут отвечать на вопросы, сочинять стихи, писать сценарии, генерировать картинки по текстовому описанию, создавать музыку.
Распознавание и обработка естественного языка. Нейросети способны вести диалог, искать ошибки в коде и даже давать медицинские советы. А на базе нейросетей некоторых разработчиков можно создавать многоязычных голосовых помощников и роботов для call-центров.
Классификация объектов. «Умные» камеры со встроенными нейросетями способны идентифицировать людей на улицах города или в транспорте и выявлять нарушителей. Также технологию можно применять для организации безопасной системы пропусков на предприятиях. Нейросети также применяют в медицине: они способны анализировать рентгеновские снимки и исследования биопсии для поиска раковых клеток.
КАК ОБУЧАЮТ НЕЙРОСЕТИ
Стандартный процесс обучения нейросетей включает в себя следующие этапы.
• Отправка информации. Для старта обучения нейросети требуется выборка данных. Чем больше задач в итоге должна решать нейросеть, тем эта выборка должна быть больше. В процессе обучения алгоритмы отвечают на поставленный вопрос с помощью формул и числовых коэффициентов.
• Преобразование информации. Когда входные нейроны нейросети получают выборку, то они преобразуют ее и передают дальше. При этом содержание информации превращается в числовые коэффициенты. Именно они решают, сколько будет «весить» каждый обучающий признак и т.д.
• Обработка информации. Каждому нейрону также присваивается «вес», который показывает, насколько важны его ответы. Во время обучения «веса» автоматически меняются и балансируются.
• Получение результата. Нейросеть выдает набор формул и чисел, которые преобразуются в ответ. При этом он не конкретный, а скорее вероятностный. Например, если для изображения мужчины установлено значение 0, а женщины — 1, то результат 0,67 будет означать «скорее всего, это женщина».
Само обучение бывает контролируемым и глубоким. В первом случае специалисты по работе с данными загружают для обучения нейросети помеченные наборы данных, которые заранее содержат правильный ответ. В процесс обучения нейросеть накапливает знания, а затем получает новые данные, чтобы построить уже свои предположения.
При глубоком обучении специалист по работе с данными предоставляет нейросети только необработанные данные, а та самостоятельно извлекает функции и обучается независимо. Если результат неудовлетворительный, то цикл обучения повторяется снова, пока нейросеть не начнет давать корректные ответы.
ВЫЗОВЫ, КОТОРЫЕ СТОЯТ ПЕРЕД РАЗРАБОТЧИКАМИ
Алгоритмы, которые распознают образы или тексты, относят к узкоспециализированным. Однако перед исследователями стоит более серьезная задача — создать общий, или универсальный, искусственный интеллект (Artificial General Intellegence, AGI).
Некоторые группы исследователей занимаются разработкой моделей глубокого обучения, которые могут работать в многозадачном режиме. Они уже наблюдают значительный прогресс в многозадачном обучении (MTL).
Так, исследователи из команды Google Brain Team и Университета Торонто представили доклад о MultiModel, архитектуре нейронной сети, основанной на успехе зрительных, языковых и аудиосетей.
А британская компания DeepMind представила систему искусственного интеллекта «общего назначения» под названием Gato, которую обучили выполнять 604 разных задания, в том числе добавлять подписи к изображениям, участвовать в диалогах, складывать блоки с помощью роборуки и играть в игры Atari. Gato обучили на примерах миллиардов слов, изображений из реального мира и смоделированных сред. В DeepMind утверждают, что в 450 из 604 вышеупомянутых задач модель работает лучше, чем человек-эксперт.
«Ведущие исследовательские центры в области машинного обучения в последние годы создают все более и более крупные нейронные языковые модели. Количество параметров самых больших монолитных нейросетей уже перевалило за 500 млрд и продолжает расти. Это беспрецедентные в истории человечества вычислительные проекты. Но прогресс заключается не только в создании все более огромных нейросетевых монстров, но и в совершенствовании архитектур сетей и методов их обучения», — отмечает Сергей Марков, директор Управления экспериментальных систем машинного обучения SberDevices.
До сих пор нет единого мнения, что должен представлять собой общий искусственный интеллект. Одни считают, что эта система по своим интеллектуальным способностям должна быть как человек. Другие — что это технология, которая адаптируется к любым условиям: если ее поместить в человеческую среду, она станет как человек, если в кошачью — как кошка, в кольцо астероидов — она научится буксировать их на Землю и извлекать полезные ископаемые. Третьи полагают, что AGI — просто некоторая технология, которая позволяет для любых задач быстро создавать прикладные интеллектуальные решения.
Часть ученых считают, что для воспроизведения в AGI человеческого интеллекта нужно сперва выяснить, как этот интеллект работает. Другие исследователи уверены, что разбираться в тонкостях разумного поведения и человеческого мышления необязательно — достаточно понять их основные принципы и воспроизвести в компьютерных моделях без оглядки на нейрофизиологию. При этом уже есть несколько гипотез относительно того, как создавать AGI. Первая заключается в том, что надо строить большие нейросети и объединять их друг с другом разными способами. Суть второй состоит в том, что нейросети в чистом виде — это тупиковое направление и нужны математические методы, основанные на вероятностной логике. Сторонники третьей гипотезы полагают, что нужно сочетать и современные методы обучения глубоких нейросетей, и формальные математические методы.
О чем эта статья
Этот текст о том, что такое нейронная сеть. Это тип машинного обучения, при котором компьютерная программа имитирует работу человеческого мозга. Нейронные сети прошли путь от простых сортировщиков картинок на смартфонах до помощников в решении глобальных задач в науке. Идея нейронных сетей была предложена в 1944 году. Первую обучаемую нейронную сеть продемонстрировали в 1957 году. Она была одномерной.
Современные графические процессоры (GPU) позволяют разрабатывать нейронные сети, способные выполнять множество задач одновременно. Например, нейронная сеть, обученная на большом наборе изображений, может автоматически распознавать лица на фотографиях. Сегодня нейронные сети используются во многих областях, включая медицину, финансы, производство, транспорт и многое другое. Они выполняют множество различных задач, таких как классификация изображений, распознавание речи, анализ текста, прогнозирование временных рядов и многое другое.
Создание общего искусственного интеллекта (AGI) является сложной задачей, поскольку требует понимания основных принципов работы человеческого мозга и разработки соответствующего аппаратного и программного обеспечения. По мере продвижения исследований и разработок AGI становится все более вероятным, что мы станем свидетелями рождения новой формы искусственного интеллекта.
Текст сгенерирован GigaChat
Что такое GigaChat
GigaChat — мультимодальная нейросеть «Сбера». Архитектура сервиса основана на нейросетевом ансамбле модели NeONKA, включающей различные нейросетевые модели и метод supervised fine-tuning, reinforcement learning with human feedback. А включение в ансамбль модели Kandinsky 2.1 дает нейросети навык создания изображений.
«Новая разработка «Сбера» является прорывной для всей большой вселенной российских технологий, — говорит Герман Греф, глава Сбербанка. — Более того, GigaChat уникален своей открытостью архитектуры, в то время как мировые аналоги нашей модели придерживаются курса Closed AI. Важно, что GigaChat могут использовать не только массовые пользователи, которые любят экспериментировать с инновациями, но и студенты и даже исследователи для серьезных научных работ».