Нейронные сети в кармане, или Как мобильные приложения становятся умнее
Поговорим о технологиях искусственного интеллекта и о том, как «цифровое сознание» учится понимать потребности человека

Изучала теорию вероятности и математическую статистику. Область профессиональных интересов —анализ данных и машинное обучение: классический ML и Deep learning. Разработка моделей с 2018 года.
Число смартфонов и других мобильных устройств растет с каждым годом, умные технологии используются повсеместно, делают жизнь человека легче и удобнее. С помощью технологий мы решаем творческие задачи, обрабатываем данные, ищем информацию. Но каким образом мобильные приложения становятся умнее? Вероятно, с помощью технологий нейронных сетей. В этом материале попробуем разобраться: по какому принципу нейросети обучаются понимать потребности человека.
Почему смартфоны умнеют
Смартфоны таким умными делает искусственный интеллект, это понятно каждому. Развивается ИИ стремительно. Притом что совсем недавно нейронные сети были забытой технологией из 80-х, а сейчас они автоматизирует сотни процессов и готовятся заменить большую часть наших профессий, включая творческие. Уже сейчас в нашем распоряжении — беспилотные автомобили, сервисы для генерации текстов, музыки и изображений; чат-боты, которые знают ответы почти на все вопросы; роботы, которые могут проводить хирургические операции; очки дополненной реальности и онлайн-переводчики. Нейросети с миллионами и миллиардами параметров помещаются в крошечном смартфоне: это впечатляет. Но такими умные системы становятся не сами по себе.
Ключевое в обучении нейросетей — это вычислительные ресурсы. Для большинства задач машинного обучения требуются целые серверы или даже кластеры с установленными на них графическими (GPU) или тензорными (TPU) процессорами. Не говоря уже о терабайтах данных, на которых обучаются модели.
На их обучение требуются недели, месяцы и очень много денег.
По версии некоторых зарубежных источников на создание модели GPT-4 понадобились десятки миллионов долларов. Если мы добавим сюда еще расходы на зарплаты исследователей, работавших над моделью в течение нескольких месяцев, то сумма увеличится в разы. Например, Сэм Альтман, главный исполнительный директор OpenAI, в одном из своих интервью рассказал, что затраты на обучение GPT-4 и вовсе превысили 100 млн $.
Эволюция нейросетей
Так каким же образом новая модель GPT-4 стала умнее своей предыдущей версии GPT-3.5? Все дело в размерах. Во-первых, увеличился функционал самой модели. Для сравнения: GPT-3.5 содержала содержал в себе 175 млрд параметров, тогда как GPT-4 увеличил этот показатель до 1.8 триллионов. Все это — данные, которые использовались для обучения моделей. В случае с GPT-3.5 первоначальный датасет «весил» всего 45 ТБ обычного текста, который после фильтрации составил около 570 ГБ, или 400 млрд токенов (примерно 300 млрд слов). Для модели GPT-4 было собрано данных размером в 1 Петабайт (это примерно 1000 ТБ), а финальный датасет составил 13 триллионов токенов (примерно 10 триллионов слов). Еще одна важная характеристика эволюции нейросетей — это размер контекста, который модель может держать в памяти. Он вырос с 16 тыс токенов (примерно 12 тыс слов) до 128 тыс (около 96 тыс слов).

После обучения модели ИИ «живут» в облаке. Отсюда два очевидных минуса. Первый: в отсутствие интернета всеми опциями не воспользоваться. Второй касается безопасности данных: облачные модели загружают данные на свои серверы и любая информация, которая попадает в модель, остается в облаке и может быть украдена.
Оффлайн технологии «умных» систем
Но есть приложения, которым необходимо поддерживать свою работу в оффлайн режиме. Например, беспилотный транспорт, медицинские устройства, переносные девайсы и сенсоры для людей с ограниченными возможностями, «умные» камеры. Приложения для мониторинга здоровья должны предупреждать о сердечном приступе без интернета; беспилотный автомобиль должен затормозить перед препятствием даже в зоне, где нет покрытия интернетом.
Именно поэтому ученые занимаются исследованиями в области оптимизации моделей глубоких нейронных сетей для устройств, ограниченных по объему памяти и производительности процессора. Такие модели уступают по качеству «облачным» решениям, но позволяют работать прямо «из коробки». Данные, которые передаются для обработки в модель остаются в устройстве или передаются в облако лишь частично, в зависимости от настроек приложения.
Какие же алгоритмы и технологии позволяют глубоким нейронным сетям с миллионами параметров размещаться в устройствах с ограниченным объемом памяти, батареи или тактовой частотой процессора?
Во-первых, исследователи действительно соревнуются в том, чтобы создавать легковесные и быстрые модели, не уступающие по качеству своим большим собратьям с миллиардами параметров. Для поиска оптимального решения даже применяют искусственный интеллект: такой метод называется NAS (Neural Architecture Search). NAS автоматически подбирает оптимальную архитектуру нейронной сети в зависимости от задачи и допустимых размеров потенциальной модели. Метод работает довольно долго, но зато избавляет от необходимости ручного вмешательства.
После того, как выбрана самая подходящая модель, идет этап ее обучения. Делается это, как правило, на сервере.
Методы оптимизации моделей
Для того, чтобы модель работала быстрее и занимала меньше памяти, используют квантизацию.
- Квантизация — это метод оптимизации и процесс преобразования значений с большим объемом информации в более компактное представление.
Квантизация может использоваться как на этапе обучения, так и после него, но неминуемо ведет к потере точности и стабильности нейронной сети. Особенно сильно страдают от квантизации модели со сложными архитектурами и большим количеством параметров. Основная проблема — это вероятность переполнения или потеря значимости некоторых параметров сети, поэтому этот метод может быть не всегда уместен.
Еще один метод оптимизации называется pruning (обрезка).
- Pruning — это метод, при котором из параметров модели удаляются те, которые вносят наименьший вклад в предсказания. Хотя в этом методе тоже есть погрешности, он с меньшей вероятностью приведет к проблемам с переполнением или потерей значимости числовых параметров, как в случае с квантизацией.
Методов оптимизации много, но давайте рассмотрим, как работает модель после того, как она попала в телефон.
На этом этапе ее обучение не обязательно останавливается. Часто для создания персонализированного и более точного предсказания, модель может дообучаться на пользовательских данных. Обычно это one-shot learning (обучение по одному примеру), например, когда пользователь только скачал приложение и настраивает его при первом запуске; или few-shot learning (обучение по нескольким примерам) — когда в процессе эксплуатации модель постепенно подстраивается под действия пользователя.
Подводя итоги
Мобильные приложения с использованием ИИ могут стать мощным инструментом в любом бизнесе. Они придут на помощь, когда доступ к сети затруднен или отсутствует. Однако пока рано называть современные нейронные сети сильным искусственным интеллектом, так как они едва ли могут выйти за рамки своего обучения. Но в одном можно быть точно уверенным: впереди нас ждет еще немало увлекательных открытий и изобретений с их участием.
Источники изображений:
Freepik.com
Рубрики
Интересное:
Новости отрасли:
Все новости:
Публикация компании
Рубрики


