Apache MXNet — это быстрая и масштабируемая среда обучения и логического вывода с простым в использовании и лаконичным API для машинного обучения.
MXNet включает в себя интерфейс Gluon, который позволяет разработчикам всех уровней квалификации начать работу с глубоким обучением в облаке, на периферийных устройствах и в мобильных приложениях. Всего за несколько строк кода Gluon вы можете построить линейную регрессию, сверточные сети и повторяющиеся LSTM для обнаружения объектов, распознавания речи, рекомендаций и персонализации.
В мире Edge мы хотим запускать модели машинного обучения на периферийных устройствах, таких как —
- NVIDIA Jetson Nano — это небольшой мощный компьютер для встраиваемых приложений и ИИ IoT, который обеспечивает мощь современного ИИ.
Графический процессор128-ядерный Maxwell
ЦПЧетырехъядерный ARM A57 с тактовой частотой 1,43 ГГц
Память4 ГБ, 64-разрядная LPDDR4, 25,6 ГБ/с.
- Графический процессор с архитектурой NVIDIA Pascal™
- 2 64-битных процессора Denver + четырехъядерный комплекс A57
- 8 ГБ L128-битной памяти DDR4
Шаги по созданию MxNet на Aarch64
1.Выделение подкачки (общая память для увеличения объема ОЗУ)
В вашем терминале —
fallocate -l 8G swapfile sudo chmod 600 swapfile sudo mkswap swapfile sudo swapon swapfile
Теперь, чтобы проверить память в вашем устройстве Jetson, введите в своем терминале -
free -m
2.Установите зависимости для MxNet
sudo apt-get update sudo apt-get install -y git build-essential libatlas-base-dev libopencv-dev graphviz python-pip sudo pip install — upgrade pip sudo pip install — upgrade setuptools sudo pip install numpy sudo pip install graphviz jupyter
3. Экспортировать ПУТЬ
Экспортируйте путь к вашему местоположению cuda и домашнему каталогу mxnet.
$export PATH=/usr/local/cuda/bin:$PATH $export MXNET_HOME=$HOME/mxnet/ $export PYTHONPATH=$MXNET_HOME/python:$PYTHONPATH
4.Клонировать MxNet
$git clone — recursive https://github.com/apache/incubator-mxnet.git mxnet
5.Настройте make-файл MxNet для arch64
$cd mxnet $cd make
В папке make найдите config.mk и отредактируйте его. Измените следующие параметры —
USE_CUDA = 1 USE_CUDA_PATH = /usr/local/cuda/ USE_OPENCV = 1 USE_CUDNN = 1 NVCCFLAGS := -m64 #add this parameter in config.mk # For Jetson Nano ( add this to your config.mk) CUDA_ARCH := -gencode arch=compute_53,code=sm_53 # For Jetson Tx2 (add this to config.mk) CUDA_ARCH := -gencode arch=compute_62,code=sm_62
6. Настройте make-файл Mshadow.
Теперь отредактируйте Makefile Mshadow, чтобы обеспечить сборку MXNet с ускорением низкой точности на аппаратном уровне Pascal, отредактировав 3rdparty/mshadow/make/mshadow.mk
. В последней строке MSHADOW_USE_PASCAL
установлено значение 0
. Измените это на 1
, чтобы включить его.
7. Создайте MxNet
В домашнем каталоге mxnet —
$ make -j8
8. Установите привязки MXNet Python
$ cd python $ sudo python3 setup.py install #I am using python3.
Мкснет готов…
Время создавать GluonCV
1.клонировать репозиторий
$ git clone https://github.com/dmlc/gluon-cv
2. Соберите GluonCV вместе с зависимостями
$ cd gluon-cv && python setup.py install — user
Время насладиться Mxnet и GluonCV…. Удачного глубокого обучения….
В следующем блоге я расскажу, как повысить производительность NVIDIA Jetson Nano/TX2, чтобы использовать максимальную вычислительную мощность.
Оставайтесь с нами, люди….