Створіть свою першу модель.
Ця інструкція показує, як за допомогою Model Compiler провести ONNX модель ResNet-50 через процес пост-тренувального квантування (PTQ). Результатом є скомпільований архів MPK у форматі .tar.gz для середовища виконання Neat.
Процес складається з чотирьох етапів:
- Завантажте модель.
- За замовчуванням вик ористовуйте квантування до INT8, або BF16, якщо це необхідно.
- Перевірте її точність.
- Скомпілюйте його для виконання на MLSoC.
Необхідні умови / вимоги.
sima-cliвстановлено (див. інструкцію зі встановлення sima-cli).- Model Compiler встановлено в Neat SDK або на хост-машині Ubuntu. Введіть. середовище з:
activate-model-compiler
Отримайте приклад.
На хост-системі з встановленою Neat SDK або Ubuntu, де встановлено Model Compiler, вст ановіть приклади Model Compiler за допомогою sima-cli:
sima-cli neat install model-compiler/examples
Залиште середовище Model Compiler активним протягом усього процесу.
Запустіть приклад «quantize-and-compile». Скрипт генерує ONNX модель ResNet-50 і завантажує загальнодоступні дані калібрування Open Images, якщо їх ще немає:
cd resnet50-ptq
python3 compile.py
Коли надаються вхідні дані для перевірки, програма має ідентифікувати золотистого ретривера як зображення, що належить до класу 207 у базі даних ImageNet, і створити скомпільований архів:
Validation image prediction:
class 207: 'golden retriever' -> 98.82%
Quantization complete.
Compiling model. Output directory: .../compiled_resnet50
Compiled MPK archive written to: .../compiled_resnet50/quantized_resnet50_mpk.tar.gz
Використовуйте отриманий .tar.gz для перевірки точності та продуктивності,
або використовуйте його для створення застосунку для обробки даних у конвеєрі.
Наступні розділи пояснюють кожен етап. Повний скрипт наведено в кінці. MLA-теселяція увімкнена за замовчуванням, тому скомпільована модель безпосередньо передає дані прискорювачу. Див. Компіляція > Теселяція.