В этом документе представлен обзор сокращения модели, который поможет вам определить, насколько оно соответствует вашему варианту использования.
- Чтобы погрузиться в сквозной пример, см. пример сокращения с помощью Keras .
- Чтобы быстро найти API-интерфейсы, необходимые для вашего варианта использования, см. подробное руководство по сокращению .
- Чтобы изучить применение сокращения для вывода на устройстве, см. раздел «Сокращение для вывода на устройстве с помощью XNNPACK» .
- Чтобы увидеть пример структурного сокращения, запустите учебник Структурное сокращение с разреженностью 2 на 4 .
Обзор
Сокращение веса на основе величины постепенно обнуляет веса модели в процессе обучения, чтобы добиться разреженности модели. Разреженные модели легче сжимать, и мы можем пропустить нули во время вывода для уменьшения задержки.
Этот метод приносит улучшения за счет сжатия модели. В будущем поддержка этого метода в инфраструктуре обеспечит снижение задержки. Мы наблюдали шестикратное улучшение сжатия модели с минимальной потерей точности.
Этот метод оценивается в различных речевых приложениях, таких как распознавание речи и преобразование текста в речь, а также экспериментируется с различными моделями зрения и перевода.
Матрица совместимости API
Пользователи могут применять обрезку с помощью следующих API:
- Построение модели:
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% | 75,8% | 2 на 4 |
76,1% | 75% | ||||
74,6% | 87,5% | ||||
МобилнетВ1 224 | 71,04% | 70,84% | 50% | 67,35% | 2 на 4 |
МобилнетВ2 224 | 71,77% | 69,64% | 50% | 66,75% | 2 на 4 |
Модели были протестированы на Imagenet.
Перевод
Модель | Неразреженный BLEU | Редкий синий | Разреженность |
---|---|---|---|
GNMT EN-DE | 26,77 | 26,86 | 80% |
26.52 | 85% | ||
26.19 | 90% | ||
ГНМТ DE-EN | 29.47 | 29.50 | 80% |
29.24 | 85% | ||
28.81 | 90% |
В моделях используется немецкий и английский набор данных WMT16 с news-test2013 в качестве набора для разработчиков и news-test2015 в качестве тестового набора.
Модель определения ключевых слов
DS-CNN-L — это модель определения ключевых слов, созданная для периферийных устройств. Его можно найти в репозитории примеров программного обеспечения ARM.
Модель | Неразреженная точность | Структурированная разреженная точность (шаблон 2 на 4) | Случайная разреженная точность (целевая разреженность 50%) |
---|---|---|---|
ДС-CNN-L | 95,23 | 94,33 | 94,84 |
Примеры
В дополнение к руководству по обрезке с помощью Keras см. следующие примеры:
- Обучите модель CNN с помощью задачи классификации рукописных цифр MNIST с обрезкой: код
- Обучите LSTM задаче классификации настроений IMDB с обрезкой: код
Дополнительную информацию см. в разделе «Отрезать или не сокращать: изучение эффективности сокращения для сжатия модели» [ документ ].