fbpx
  • PyTorch 1.3: квантизация, перенос модели на мобильные устройства и именованные тензоры

    В новой версии PyTorch появился функционал для квантизации, переноса модели на мобильные устройства и именованных тензоров. Квантизация — это метод уменьшения размера обученной нейросети. Помимо этого, для PyTorch опубликовали библиотеки для интерпретации моделей.

    Основные характеристики последней версии

    Именованные тензоры

    Исследователь из Cornell University поднял проблему плохой читаемости кода с обучением моделей. Он предложил именованные тензоры как альтернативу стандартной имплементации тензоров. 

    Сейчас информация о размерности тензора хранится в комментарии рядом с его определением. Это усложняет читаемость и поддерживаемость кода. Вместо этого предлагается напрямую задавать значения измерениям тензора при его создании. Такой тензор называется именованным.

    Квантизация

    Чтобы поддерживать эффективный перенос моделей на сервера, PyTorch 1.3 поддерживает восьмибитную квантизацию модели. Квантизация относится к техникам, которые используются для вычисления и хранения параметров с меньшей точностью. В данном случае — в виде восьмибитных целых чисел. В функционал входят квантизация обученной модели, динамическая квантизация и обучение с квантизацией.

    Фреймворк на мобильных устройствах

    Популярность внедрения нейросетевых моделей в мобильные приложения растет. Чтобы сделать обучения моделей на мобильных устройствах более эффективным, в PyTorch 1.3 теперь есть инструмент для переноса модели  iOS и Android.

    Будущие релизы будут сфокусированы на следующих функциях:

    • Оптимизация на уровне сборки файла;
    • Улучшение качества моделей и перенос на мобильные CPU и GPU;
    • Высокоуровневое API для отдельных кейсов применения машинного обучения в мобильном приложении