Сохраните дату! Google I / O возвращается 18-20 мая Зарегистрируйтесь сейчас
Эта страница переведена с помощью Cloud Translation API.
Switch to English

Обрезать незначительные веса

Поддерживается оптимизацией модели TensorFlow

В этом документе представлен обзор обрезки модели, который поможет вам определить, насколько она соответствует вашему варианту использования.

Обзор

Отсечение веса на основе величины постепенно обнуляет веса модели в процессе обучения для достижения разреженности модели. Редкие модели легче сжимать, и мы можем пропустить нули во время вывода для улучшения задержки.

Этот метод приносит улучшения за счет сжатия модели. В будущем поддержка этого метода фреймворком обеспечит улучшение задержки. Мы видели до 6-кратного улучшения сжатия модели с минимальной потерей точности.

Этот метод оценивается в различных речевых приложениях, таких как распознавание речи и преобразование текста в речь, и был опробован в различных моделях зрения и перевода.

Матрица совместимости API

Пользователи могут применять сокращение с помощью следующих API:

  • tf.keras модели: tf.keras только с последовательными и функциональными моделями
  • Версии TensorFlow: TF 1.x для версий 1.14+ и 2.x.
    • tf.compat.v1 с пакетом TF 2.X и tf.compat.v2 с пакетом TF 1.X не поддерживаются.
  • Режим выполнения TensorFlow: как график, так и нетерпеливый
  • Распределенное обучение: tf.distribute с выполнением только графа

В нашей дорожной карте добавлена ​​поддержка в следующих областях:

Полученные результаты

Классификация изображений

Модель Неразрезная точность (ТОП-1) Редкая точность Разреженность
НачалоV3 78,1% 78,0% 50%
76,1% 75%
74,6% 87,5%
MobilenetV1 224 71,04% 70,84% 50%

Модели тестировались на Imagenet.

Перевод

Модель Неразрезанный BLEU Редкий BLEU Разреженность
GNMT EN-DE 26,77 26,86 80%
26,52 85%
26,19 90%
GNMT DE-EN 29,47 29,50 80%
29,24 85%
28,81 90%

В моделях используется набор данных WMT16 на немецком и английском языках с набором для разработки news-test2013 и набором для тестирования news-test2015.

Примеры

В дополнение к руководству Prune with Keras см. Следующие примеры:

  • Обучите модель CNN по задаче классификации рукописных цифр MNIST с сокращением: код
  • Обучите LSTM задаче классификации настроений IMDB с помощью сокращения: код

Для получения дополнительной информации см. Подрезать или не обрезать: изучение эффективности обрезки для сжатия модели [ статья ].