Ученые российской AI-компании Smart Engines нашли способ повысить эффективность работы нейросетей. В основе метода лежит принципиально новая схема квантования, благодаря которой скорость работы повышается на 40%. Результаты исследования были опубликованы в журнале Mathematics (Q1).
Разработка уже используется при решении прикладных задач компьютерного зрения – для поиска объектов и распознавания текстов. Она также может стать неотъемлемой частью беспилотных автономных систем нового поколения, расширив класс задач, которые могут выполнять бортовые компьютеры.
Речь идет о прорыве отечественных ученых в области оптимизации исполнения нейронных сетей. В настоящее время в основном нейросети выполняются на специализированных видеокартах, однако не каждый компьютер ими оснащен. При этом любое пользовательское устройство имеет центральный процессор, мировым стандартом для которых является использование 8-битных нейронных сетей. Однако глубокие нейронные сети усложняются, содержат сотни миллионов и более коэффициентов, что требуют большей вычислительной мощности. Это ограничивает возможность использования центральных процессоров в системах искусственного интеллекта.
![](https://habrastorage.org/getpro/habr/upload_files/19d/a13/d76/19da13d766de3e914c326573f67995a2.png)
Исследователи Smart Engines решили эту проблему, предложив качественное улучшение 8-битной модели – 4,6-битные сети. Она работает быстрее 8-битной модели на 40%, но практически не уступает ей по качеству за счет более эффективного использования особенностей центральных процессоров мобильных устройств.
![](https://habrastorage.org/getpro/habr/upload_files/c93/487/943/c93487943e583f8fca93ae245c1aa54c.png)
Для этого входные данные и коэффициенты модели квантуются таким образом, чтобы их произведения помещались в 8-битные регистры. Суммирование результатов сделано с помощью двухуровневой системы 16- и 32-битных аккумуляторов для достижения максимальной эффективности. В результате в среднем на одно значение приходится 4,6 бита информации.
Такая схема квантования выгодно отличается от существующих, так как позволяет гибким образом задавать разрядность входных данных в зависимости от задачи и не привязывается к степеням двойки. Поэтому эта разработка обепечивает заметно более высокое качество распознавание, чем, например, 4-битные модели.
"Сегодня задачи компьютерного зрения должны решаться на конечных устройствах – мобильных телефонах, камерах наблюдения, бортовых компьютерах беспилотников. Все эти задачи характеризуются невысокими вычислительными возможностями устройств и существенными ограничениями по энергопотреблению. И наша разработка позволяет почти в полтора раза увеличить возможности решения этих задач. Классические сети в наших системах распознавания уже заменены на 4,6-битные аналоги, и мы продолжаем работу над более оптимальными схемами квантизации и обучения нейронных сетей" — комментирует генеральный директор Smart Engines, доктор технических наук Владимир Арлазаров.
Во всех программных продуктах Smart Engines «тяжелые» нейросети заменены их 4,6-битными аналогами. Решения компании используют 10 из 13 системно значимых банков по версии ЦБ, в том числе Альфа-Банк, ВТБ, Газпромбанк, МКБ, банк “Открытие”, Райффайзенбанк, Росбанка, Совкомбанк и Тинькофф.