Нейросети меняют нашу жизнь на глазах. Но откуда берутся они сами? Кто их создатели и может ли сделать нейронную сеть не программист? С этими вопросами помог разобраться начальник подразделения искусственного интеллекта и анализа данных ГосНИИАС, преподаватель кафедры 806 «Вычислительная математика и программирование» МАИ, кандидат физико-математических наук Борис Вишняков.
Рождение нейросетей происходит в недрах двух типов компьютерных программ — фреймворков и платформ. Это своего рода цифровая школа, в которой при помощи загруженных в неё данных происходит обучение нейронных сетей.
Разница между фреймворками и платформами состоит в том, что для работы с первыми учёный или инженер должен обладать навыками программиста. Платформы же оснащены пользовательским интерфейсом, и от разработчика требуется только понимание бизнес-требований к будущей нейронной сети: какие задачи она должна решать, какой результат выдавать. Примерно то же самое делают, например, различные мобильные приложения: пользователю не нужно быть программистом, чтобы при помощи готовых и отлаженных механизмов, зашитых внутри программных пакетов, решать свои задачи.
Обратная сторона простоты платформ — существенное сокращение возможностей. Фреймворки позволяют разработчику создавать новые типы нейронных сетей и их архитектуры, тогда как платформа — это, в первую очередь, типовые решения, то есть применение уже отработанных и доказавших свою эффективность технологий.
Наибольшей популярностью пользуются фреймворки TensorFlow от Google и PyTorch от Facebook — с их помощью производится до 80% исследований по всему миру. Из платформ самые известные — Supervisely, Datarobot и Roboflow. Первая востребована за счёт эффективного инструмента разметки данных, вторая хорошо работает с данными табличного типа, третья — с обучением нейросетей для компьютерного зрения. Конкурентами мировых лидеров являются отечественные решения, например BAUM AI (МГТУ им. Н.Э. Баумана) и «Платформа-ГНС» (ФАУ «ГосНИИАС»), которые специализируются на обучении нейросетей, главным образом, на обработке табличных данных и изображений соответственно.
Когда нейросети созданы, их часто требуется ускорить. Для этого используются программы другого типа — инференс-фреймворки. По оценкам экспертов, они помогают разогнать производительность в 2,5–5 раз.
Инференс-фреймворки необходимы в двух случаях: при высоких требованиях к производительности решения или если нужно внедрить тяжёлые и эффективные алгоритмы обработки данных в реальном времени на бортовом «железе», например на умной камере, в том числе беспилотника.
Ниболее популярные инференс-фреймворки — OpenVINO от Intel, TensorRT от NVIDIA, Mace от XiaoMi и MNN от Alibaba.
Созданные и при необходимости ускоренные нейросети затем находят широкое применение при распознавании изображений и видеопотоков, при обработке данных табличного типа, в антагонистических играх, где искусственный интеллект выступает в качестве игрока и учится превосходить оппонентов. Пожалуй, самое известное и перспективное направление — создание больших языковых моделей: искусственного интеллекта второго поколения, который способен не только обрабатывать данные, но и делать самостоятельные выводы на их основе.
Материал подготовлен при поддержке Минобрнауки России.
Источник: пресс-служба МАИ