Apache MXNet - Menginstal MXNet

Untuk memulai MXNet, hal pertama yang perlu kita lakukan adalah menginstalnya di komputer kita. Apache MXNet berfungsi pada hampir semua platform yang tersedia, termasuk Windows, Mac, dan Linux.

OS Linux

Kami dapat menginstal MXNet di OS Linux dengan cara berikut -

Unit Pemrosesan Grafis (GPU)

Di sini, kami akan menggunakan berbagai metode yaitu Pip, Docker, dan Sumber untuk menginstal MXNet saat kami menggunakan GPU untuk pemrosesan -

Dengan menggunakan metode Pip

Anda dapat menggunakan perintah berikut untuk menginstal MXNet di Linus OS -

pip install mxnet

Apache MXNet juga menawarkan paket pip MKL, yang jauh lebih cepat jika dijalankan pada perangkat keras intel. Di sini misalnyamxnet-cu101mkl artinya -

  • Paket ini dibangun dengan CUDA / cuDNN

  • Paket ini mendukung MKL-DNN

  • Versi CUDA adalah 10.1

Untuk opsi lain, Anda juga bisa merujuk ke https://pypi.org/project/mxnet/.

Dengan menggunakan Docker

Anda dapat menemukan image buruh pelabuhan dengan MXNet di DockerHub, yang tersedia di https://hub.docker.com/u/mxnet Mari kita lihat langkah-langkah di bawah ini untuk menginstal MXNet dengan menggunakan Docker dengan GPU -

Step 1- Pertama, dengan mengikuti petunjuk instalasi buruh pelabuhan yang tersedia di https://docs.docker.com/engine/install/ubuntu/. Kita perlu menginstal Docker di komputer kita.

Step 2- Untuk mengaktifkan penggunaan GPU dari container docker, selanjutnya kita perlu menginstal nvidia-docker-plugin. Anda dapat mengikuti petunjuk penginstalan yang diberikan dihttps://github.com/NVIDIA/nvidia-docker/wiki.

Step 3- Dengan menggunakan perintah berikut, Anda dapat menarik gambar buruh pelabuhan MXNet -

$ sudo docker pull mxnet/python:gpu

Sekarang untuk melihat apakah mxnet / python docker image pull berhasil, kita dapat membuat daftar gambar docker sebagai berikut -

$ sudo docker images

Untuk kecepatan inferensi tercepat dengan MXNet, disarankan untuk menggunakan MXNet terbaru dengan Intel MKL-DNN. Periksa perintah di bawah ini -

$ sudo docker pull mxnet/python:1.3.0_cpu_mkl
$ sudo docker images

Dari sumber

Untuk membangun pustaka bersama MXNet dari sumber dengan GPU, pertama-tama kita perlu menyiapkan lingkungan untuk CUDA dan cuDNN sebagai berikut−

  • Unduh dan instal toolkit CUDA, di sini CUDA 9.2 direkomendasikan.

  • Selanjutnya unduh cuDNN 7.1.4.

  • Sekarang kita perlu mengekstrak file. Juga diperlukan untuk mengubah ke direktori root cuDNN. Juga pindahkan tajuk dan pustaka ke folder CUDA Toolkit lokal sebagai berikut -

tar xvzf cudnn-9.2-linux-x64-v7.1
sudo cp -P cuda/include/cudnn.h /usr/local/cuda/include
sudo cp -P cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
sudo ldconfig

Setelah menyiapkan lingkungan untuk CUDA dan cuDNN, ikuti langkah-langkah di bawah ini untuk membuat pustaka bersama MXNet dari sumber -

Step 1- Pertama, kita perlu menginstal paket prasyarat. Ketergantungan ini diperlukan pada Ubuntu versi 16.04 atau yang lebih baru.

sudo apt-get update
sudo apt-get install -y build-essential git ninja-build ccache libopenblas-dev 
libopencv-dev cmake

Step 2- Pada langkah ini, kita akan mengunduh sumber MXNet dan mengkonfigurasi. Pertama mari kita mengkloning repositori dengan menggunakan perintah berikut−

git clone –recursive https://github.com/apache/incubator-mxnet.git mxnet
cd mxnet
cp config/linux_gpu.cmake #for build with CUDA

Step 3- Dengan menggunakan perintah berikut, Anda dapat membangun pustaka bersama inti MXNet−

rm -rf build
mkdir -p build && cd build
cmake -GNinja ..
cmake --build .

Two important points regarding the above step is as follows−

Jika Anda ingin membangun versi Debug, tentukan sebagai berikut-

cmake -DCMAKE_BUILD_TYPE=Debug -GNinja ..

Untuk menyetel jumlah pekerjaan kompilasi paralel, tentukan yang berikut -

cmake --build . --parallel N

Setelah Anda berhasil membangun pustaka bersama inti MXNet, di build folder di MXNet project root, Anda akan menemukan libmxnet.so yang diperlukan untuk menginstal binding bahasa (opsional).

Unit Pemrosesan Pusat (CPU)

Di sini, kami akan menggunakan berbagai metode yaitu Pip, Docker, dan Source untuk menginstal MXNet saat kami menggunakan CPU untuk pemrosesan -

Dengan menggunakan metode Pip

Anda dapat menggunakan perintah berikut untuk menginstal MXNet pada Linus OS− Anda

pip install mxnet

Apache MXNet juga menawarkan paket pip berkemampuan MKL-DNN yang jauh lebih cepat, saat dijalankan pada perangkat keras intel.

pip install mxnet-mkl

Dengan menggunakan Docker

Anda dapat menemukan image buruh pelabuhan dengan MXNet di DockerHub, yang tersedia di https://hub.docker.com/u/mxnet. Mari kita lihat langkah-langkah di bawah ini untuk menginstal MXNet dengan menggunakan Docker dengan CPU -

Step 1- Pertama, dengan mengikuti petunjuk instalasi buruh pelabuhan yang tersedia di https://docs.docker.com/engine/install/ubuntu/. Kita perlu menginstal Docker di komputer kita.

Step 2- Dengan menggunakan perintah berikut, Anda dapat menarik image buruh pelabuhan MXNet:

$ sudo docker pull mxnet/python

Sekarang, untuk melihat apakah mxnet / python docker image pull berhasil, kita dapat membuat daftar gambar docker sebagai berikut -

$ sudo docker images

Untuk kecepatan inferensi tercepat dengan MXNet, disarankan untuk menggunakan MXNet terbaru dengan Intel MKL-DNN.

Periksa perintah di bawah ini -

$ sudo docker pull mxnet/python:1.3.0_cpu_mkl
$ sudo docker images

Dari sumber

Untuk membangun pustaka bersama MXNet dari sumber dengan CPU, ikuti langkah-langkah di bawah ini -

Step 1- Pertama, kita perlu menginstal paket prasyarat. Ketergantungan ini diperlukan pada Ubuntu versi 16.04 atau yang lebih baru.

sudo apt-get update

sudo apt-get install -y build-essential git ninja-build ccache libopenblas-dev libopencv-dev cmake

Step 2- Pada langkah ini kita akan mengunduh sumber MXNet dan mengkonfigurasi. Pertama mari kita kloning repositori dengan menggunakan perintah berikut:

git clone –recursive https://github.com/apache/incubator-mxnet.git mxnet

cd mxnet
cp config/linux.cmake config.cmake

Step 3- Dengan menggunakan perintah berikut, Anda dapat membuat pustaka bersama inti MXNet:

rm -rf build
mkdir -p build && cd build
cmake -GNinja ..
cmake --build .

Two important points regarding the above step is as follows−

Jika Anda ingin membuat versi Debug, tentukan yang berikut ini:

cmake -DCMAKE_BUILD_TYPE=Debug -GNinja ..

Untuk menyetel jumlah pekerjaan kompilasi paralel, tentukan yang berikut-

cmake --build . --parallel N

Setelah Anda berhasil membangun pustaka bersama inti MXNet, di build folder di root proyek MXNet Anda, Anda akan menemukan libmxnet.so, yang diperlukan untuk menginstal binding bahasa (opsional).

MacOS

Kita dapat menginstal MXNet pada MacOS dengan cara berikut−

Unit Pemrosesan Grafis (GPU)

Jika Anda berencana untuk membangun MXNet di MacOS dengan GPU, maka TIDAK ada metode Pip dan Docker yang tersedia. Satu-satunya metode dalam kasus ini adalah membangunnya dari sumber.

Dari sumber

Untuk membangun pustaka bersama MXNet dari sumber dengan GPU, pertama-tama kita perlu menyiapkan lingkungan untuk CUDA dan cuDNN. Anda harus mengikutiNVIDIA CUDA Installation Guide yang tersedia di https://docs.nvidia.com dan cuDNN Installation Guide, yang tersedia di https://docs.nvidia.com/deeplearning untuk mac OS.

Harap perhatikan bahwa pada 2019 CUDA berhenti mendukung macOS. Faktanya, CUDA versi mendatang mungkin juga tidak mendukung macOS.

Setelah Anda mengatur lingkungan untuk CUDA dan cuDNN, ikuti langkah-langkah yang diberikan di bawah ini untuk menginstal MXNet dari sumber di OS X (Mac) -

Step 1- Karena kita membutuhkan beberapa dependensi pada OS x, Pertama, kita perlu menginstal paket prasyarat.

xcode-select –-install #Install OS X Developer Tools

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" #Install Homebrew

brew install cmake ninja ccache opencv # Install dependencies

Kami juga dapat membangun MXNet tanpa OpenCV karena opencv adalah ketergantungan opsional.

Step 2- Pada langkah ini kita akan mengunduh sumber MXNet dan mengkonfigurasi. Pertama mari kita mengkloning repositori dengan menggunakan perintah berikut−

git clone –-recursive https://github.com/apache/incubator-mxnet.git mxnet

cd mxnet
cp config/linux.cmake config.cmake

Untuk yang mendukung GPU, perlu menginstal dependensi CUDA terlebih dahulu karena ketika seseorang mencoba membangun build yang mendukung GPU pada mesin tanpa GPU, build MXNet tidak dapat mendeteksi arsitektur GPU Anda secara otomatis. Dalam kasus seperti itu MXNet akan menargetkan semua arsitektur GPU yang tersedia.

Step 3- Dengan menggunakan perintah berikut, Anda dapat membangun pustaka bersama inti MXNet−

rm -rf build
mkdir -p build && cd build
cmake -GNinja ..
cmake --build .

Dua poin penting mengenai langkah di atas adalah sebagai berikut-

Jika Anda ingin membangun versi Debug, tentukan sebagai berikut-

cmake -DCMAKE_BUILD_TYPE=Debug -GNinja ..

Untuk menyetel jumlah pekerjaan kompilasi paralel, tentukan berikut ini:

cmake --build . --parallel N

Setelah Anda berhasil membangun pustaka bersama inti MXNet, di build folder di MXNet project root, Anda akan menemukan libmxnet.dylib, yang diperlukan untuk menginstal binding bahasa (opsional).

Unit Pemrosesan Pusat (CPU)

Di sini, kita akan menggunakan berbagai metode yaitu Pip, Docker, dan Source untuk menginstal MXNet saat kita menggunakan CPU untuk pemrosesan−

Dengan menggunakan metode Pip

Anda dapat menggunakan perintah berikut untuk menginstal MXNet di Linus OS Anda

pip install mxnet

Dengan menggunakan Docker

Anda dapat menemukan image buruh pelabuhan dengan MXNet di DockerHub, yang tersedia di https://hub.docker.com/u/mxnet. Mari kita periksa langkah-langkah di bawah ini untuk menginstal MXNet dengan menggunakan Docker dengan CPU−

Step 1- Pertama, dengan mengikuti docker installation instructions yang tersedia di https://docs.docker.com/docker-for-mac kita perlu menginstal Docker di komputer kita.

Step 2- Dengan menggunakan perintah berikut, Anda dapat menarik image buruh pelabuhan MXNet−

$ docker pull mxnet/python

Sekarang untuk melihat apakah mxnet / python docker image pull berhasil, kita dapat membuat daftar gambar docker sebagai berikut−

$ docker images

Untuk kecepatan inferensi tercepat dengan MXNet, disarankan untuk menggunakan MXNet terbaru dengan Intel MKL-DNN. Periksa perintah di bawah-

$ docker pull mxnet/python:1.3.0_cpu_mkl
$ docker images

Dari sumber

Ikuti langkah-langkah yang diberikan di bawah ini untuk menginstal MXNet dari sumber di OS X (Mac) -

Step 1- Karena kami memerlukan beberapa dependensi pada OS x, pertama-tama, kami perlu menginstal paket prasyarat.

xcode-select –-install #Install OS X Developer Tools
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" #Install Homebrew
brew install cmake ninja ccache opencv # Install dependencies

Kami juga dapat membangun MXNet tanpa OpenCV karena opencv adalah ketergantungan opsional.

Step 2- Pada langkah ini kita akan mengunduh sumber MXNet dan mengkonfigurasi. Pertama, mari kita mengkloning repositori dengan menggunakan perintah berikut−

git clone –-recursive https://github.com/apache/incubator-mxnet.git mxnet

cd mxnet

cp config/linux.cmake config.cmake

Step 3- Dengan menggunakan perintah berikut, Anda dapat membuat pustaka bersama inti MXNet:

rm -rf build
mkdir -p build && cd build
cmake -GNinja ..
cmake --build .

Two important points regarding the above step is as follows−

Jika Anda ingin membangun versi Debug, tentukan sebagai berikut-

cmake -DCMAKE_BUILD_TYPE=Debug -GNinja ..

Untuk menyetel jumlah pekerjaan kompilasi paralel, tentukan yang berikut-

cmake --build . --parallel N

Setelah Anda berhasil membangun pustaka bersama inti MXNet, di build folder di MXNet project root, Anda akan menemukan libmxnet.dylib, yang diperlukan untuk menginstal binding bahasa (opsional).

OS Windows

Untuk menginstal MXNet pada Windows, berikut adalah prasyarat-

Persyaratan Sistem Minimum

  • Windows 7, 10, Server 2012 R2, atau Server 2016

  • Visual Studio 2015 atau 2017 (tipe apa pun)

  • Python 2.7 atau 3.6

  • pip

Persyaratan Sistem yang Direkomendasikan

  • Windows 10, Server 2012 R2, atau Server 2016

  • Visual Studio 2017

  • Setidaknya satu GPU berkemampuan NVIDIA CUDA

  • CPU berkemampuan MKL: Prosesor Intel® Xeon®, keluarga prosesor Intel® Core ™, prosesor Intel Atom®, atau prosesor Intel® Xeon Phi ™

  • Python 2.7 atau 3.6

  • pip

Unit Pemrosesan Grafis (GPU)

Dengan menggunakan metode Pip−

Jika Anda berencana untuk membangun MXNet di Windows dengan GPU NVIDIA, ada dua opsi untuk menginstal MXNet dengan dukungan CUDA dengan paket Python−

Instal dengan Dukungan CUDA

Di bawah ini adalah langkah-langkah dengan bantuan yang, kami dapat mengatur MXNet dengan CUDA.

Step 1- Pertama instal Microsoft Visual Studio 2017 atau Microsoft Visual Studio 2015.

Step 2- Selanjutnya, unduh dan instal NVIDIA CUDA. Direkomendasikan untuk menggunakan CUDA versi 9.2 atau 9.0 karena beberapa masalah dengan CUDA 9.1 telah diidentifikasi sebelumnya.

Step 3- Sekarang, unduh dan instal NVIDIA_CUDA_DNN.

Step 4- Terakhir, dengan menggunakan perintah pip berikut, instal MXNet dengan CUDA−

pip install mxnet-cu92

Instal dengan Dukungan CUDA dan MKL

Di bawah ini adalah langkah-langkah dengan bantuan yang, kami dapat mengatur MXNet dengan CUDA dan MKL.

Step 1- Pertama instal Microsoft Visual Studio 2017 atau Microsoft Visual Studio 2015.

Step 2- Selanjutnya, unduh dan instal intel MKL

Step 3- Sekarang, unduh dan instal NVIDIA CUDA.

Step 4- Sekarang, unduh dan instal NVIDIA_CUDA_DNN.

Step 5- Terakhir, dengan menggunakan perintah pip berikut, instal MXNet dengan MKL.

pip install mxnet-cu92mkl

Dari sumber

Untuk membangun pustaka inti MXNet dari sumber dengan GPU, kami memiliki dua opsi berikut−

Option 1− Build with Microsoft Visual Studio 2017

Untuk membuat dan menginstal MXNet sendiri dengan menggunakan Microsoft Visual Studio 2017, Anda memerlukan dependensi berikut ini.

Install/update Microsoft Visual Studio.

  • Jika Microsoft Visual Studio belum diinstal di komputer Anda, unduh dan instal terlebih dahulu.

  • Ini akan meminta untuk menginstal Git. Instal juga.

  • Jika Microsoft Visual Studio telah diinstal di komputer Anda tetapi Anda ingin memperbaruinya, lanjutkan ke langkah berikutnya untuk mengubah penginstalan Anda. Di sini Anda akan diberi kesempatan untuk memperbarui Microsoft Visual Studio juga.

Ikuti petunjuk untuk membuka Penginstal Visual Studio yang tersedia di https://docs.microsoft.com/en-us untuk memodifikasi komponen Individual.

Di aplikasi Visual Studio Installer, perbarui sesuai kebutuhan. Setelah itu cari dan periksaVC++ 2017 version 15.4 v14.11 toolset dan klik Modify.

Sekarang dengan menggunakan perintah berikut, ubah versi Microsoft VS2017 menjadi v14.11−

"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat" -vcvars_ver=14.11

Selanjutnya, Anda perlu mengunduh dan menginstal CMake Tersedia di https://cmake.org/download/ Dianjurkan untuk digunakan CMake v3.12.2 yang tersedia di https://cmake.org/download/ karena telah diuji dengan MXNet.

Sekarang, unduh dan jalankan OpenCV paket tersedia di https://sourceforge.net/projects/opencvlibrary/yang akan mengekstrak beberapa file. Terserah Anda apakah ingin menempatkannya di direktori lain atau tidak. Di sini, kami akan menggunakan jalurC:\utils(mkdir C:\utils) sebagai jalur default kami.

Selanjutnya, kita perlu menyetel variabel lingkungan OpenCV_DIR agar mengarah ke direktori build OpenCV yang baru saja kita unzip. Untuk jenis dan prompt perintah terbuka iniset OpenCV_DIR=C:\utils\opencv\build.

Satu hal penting adalah jika Anda tidak menginstal Intel MKL (Math Kernel Library), Anda dapat menginstalnya.

Paket open source lain yang dapat Anda gunakan adalah OpenBLAS. Di sini untuk instruksi lebih lanjut, kami mengasumsikan bahwa Anda menggunakanOpenBLAS.

Jadi, Unduh OpenBlas paket yang tersedia di https://sourceforge.net dan unzip file tersebut, ubah namanya menjadi OpenBLAS dan menaruhnya di bawah C:\utils.

Selanjutnya, kita perlu mengatur variabel lingkungan OpenBLAS_HOME untuk menunjuk ke direktori OpenBLAS yang berisi file include dan libdirektori. Untuk jenis dan prompt perintah terbuka iniset OpenBLAS_HOME=C:\utils\OpenBLAS.

Sekarang, unduh dan instal CUDA yang tersedia di https://developer.nvidia.com. Perhatikan bahwa, jika Anda sudah memiliki CUDA, lalu menginstal Microsoft VS2017, Anda perlu menginstal ulang CUDA sekarang, sehingga Anda bisa mendapatkan komponen toolkit CUDA untuk integrasi Microsoft VS2017.

Selanjutnya, Anda perlu mengunduh dan menginstal cuDNN.

Selanjutnya, Anda perlu mengunduh dan menginstal git yang ada di https://gitforwindows.org/ juga.

Setelah Anda menginstal semua dependensi yang diperlukan, ikuti langkah-langkah yang diberikan di bawah ini untuk membangun kode sumber MXNet−

Step 1- Buka command prompt di windows.

Step 2- Sekarang, dengan menggunakan perintah berikut, unduh kode sumber MXNet dari GitHub:

cd C:\

git clone https://github.com/apache/incubator-mxnet.git --recursive

Step 3- Selanjutnya, verifikasi berikut-

DCUDNN_INCLUDE and DCUDNN_LIBRARY variabel lingkungan mengarah ke include folder dan cudnn.lib file dari lokasi pemasangan CUDA Anda

C:\incubator-mxnet adalah lokasi kode sumber yang baru saja Anda kloning pada langkah sebelumnya.

Step 4- Selanjutnya dengan menggunakan perintah berikut, buat file build directory dan juga pergi ke direktori, misalnya−

mkdir C:\incubator-mxnet\build
cd C:\incubator-mxnet\build

Step 5- Sekarang, dengan menggunakan cmake, kompilasi kode sumber MXNet sebagai berikut-

cmake -G "Visual Studio 15 2017 Win64" -T cuda=9.2,host=x64 -DUSE_CUDA=1 -DUSE_CUDNN=1 -DUSE_NVRTC=1 -DUSE_OPENCV=1 -DUSE_OPENMP=1 -DUSE_BLAS=open -DUSE_LAPACK=1 -DUSE_DIST_KVSTORE=0 -DCUDA_ARCH_LIST=Common -DCUDA_TOOLSET=9.2 -DCUDNN_INCLUDE=C:\cuda\include -DCUDNN_LIBRARY=C:\cuda\lib\x64\cudnn.lib "C:\incubator-mxnet"

Step 6- Setelah CMake berhasil diselesaikan, gunakan perintah berikut untuk mengompilasi kode sumber MXNet−

msbuild mxnet.sln /p:Configuration=Release;Platform=x64 /maxcpucount

Option 2: Build with Microsoft Visual Studio 2015

Untuk membuat dan menginstal MXNet sendiri dengan menggunakan Microsoft Visual Studio 2015, Anda memerlukan dependensi berikut ini.

Instal / perbarui Microsoft Visual Studio 2015. Persyaratan minimum untuk membangun MXnet dari sumber adalah Pembaruan 3 dari Microsoft Visual Studio 2015. Anda dapat menggunakan Tools -> Extensions and Updates... | Product Updates menu untuk meningkatkannya.

Selanjutnya, Anda perlu mengunduh dan menginstal CMake yang tersedia di https://cmake.org/download/. Dianjurkan untuk digunakanCMake v3.12.2 yang pada https://cmake.org/download/, karena telah diuji dengan MXNet.

Sekarang, unduh dan jalankan paket OpenCV yang tersedia di https://excellmedia.dl.sourceforge.netyang akan mengekstrak beberapa file. Terserah Anda, apakah Anda ingin menempatkannya di direktori lain atau tidak.

Selanjutnya, kita perlu mengatur variabel lingkungan OpenCV_DIR untuk menunjuk ke OpenCVmembangun direktori yang baru saja kita buka ritsletingnya. Untuk ini, buka command prompt dan ketik setOpenCV_DIR=C:\opencv\build\x64\vc14\bin.

Satu hal penting adalah jika Anda tidak menginstal Intel MKL (Math Kernel Library), Anda dapat menginstalnya.

Paket open source lain yang dapat Anda gunakan adalah OpenBLAS. Di sini untuk instruksi lebih lanjut, kami mengasumsikan bahwa Anda menggunakanOpenBLAS.

Jadi, Unduh OpenBLAS paket tersedia di https://excellmedia.dl.sourceforge.net dan unzip file tersebut, ganti namanya menjadi OpenBLAS dan letakkan di bawah C: \ utils.

Selanjutnya, kita perlu menyetel variabel lingkungan OpenBLAS_HOME agar mengarah ke direktori OpenBLAS yang berisi direktori include dan lib. Anda dapat menemukan direktori diC:\Program files (x86)\OpenBLAS\

Perhatikan bahwa, jika Anda sudah memiliki CUDA, lalu menginstal Microsoft VS2015, Anda perlu menginstal ulang CUDA sekarang agar Anda bisa mendapatkan komponen toolkit CUDA untuk integrasi Microsoft VS2017.

Selanjutnya, Anda perlu mengunduh dan menginstal cuDNN.

Sekarang, kita perlu mengatur variabel lingkungan CUDACXX agar mengarah ke CUDA Compiler(C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.1\bin\nvcc.exe sebagai contoh).

Demikian pula, kita juga perlu mengatur variabel lingkungan CUDNN_ROOT untuk menunjuk ke cuDNN direktori yang berisi include, lib dan bin direktori (C:\Downloads\cudnn-9.1-windows7-x64-v7\cuda sebagai contoh).

Setelah Anda menginstal semua dependensi yang diperlukan, ikuti langkah-langkah yang diberikan di bawah ini untuk membangun kode sumber MXNet−

Step 1- Pertama, unduh kode sumber MXNet dari GitHub−

cd C:\
git clone https://github.com/apache/incubator-mxnet.git --recursive

Step 2- Selanjutnya, gunakan CMake untuk membuat Visual Studio di ./build.

Step 3- Sekarang, di Visual Studio, kita perlu membuka file solusi,.sln, dan kompilasi. Perintah-perintah ini akan menghasilkan perpustakaan yang disebutmxnet.dll dalam ./build/Release/ or ./build/Debug map

Step 4- Setelah CMake berhasil diselesaikan, gunakan perintah berikut untuk mengompilasi kode sumber MXNet

msbuild mxnet.sln /p:Configuration=Release;Platform=x64 /maxcpucount

Unit Pemrosesan Pusat (CPU)

Di sini, kita akan menggunakan berbagai metode yaitu Pip, Docker, dan Source untuk menginstal MXNet saat kita menggunakan CPU untuk pemrosesan−

Dengan menggunakan metode Pip

Jika Anda berencana untuk membangun MXNet di Windows dengan CPU, ada dua opsi untuk menginstal MXNet menggunakan paket Python−

Install with CPUs

Gunakan perintah berikut untuk menginstal MXNet dengan CPU dengan Python−

pip install mxnet

Install with Intel CPUs

Seperti dibahas di atas, MXNet memiliki dukungan eksperimental untuk Intel MKL serta MKL-DNN. Gunakan perintah berikut untuk menginstal MXNet dengan Intel CPU dengan Python−

pip install mxnet-mkl

Dengan menggunakan Docker

Anda dapat menemukan gambar buruh pelabuhan dengan MXNet di DockerHub, Tersedia di https://hub.docker.com/u/mxnet Mari kita periksa langkah-langkah di bawah ini, untuk menginstal MXNet dengan menggunakan Docker dengan CPU−

Step 1- Pertama, dengan mengikuti petunjuk instalasi buruh pelabuhan yang bisa dibaca di https://docs.docker.com/docker-for-mac/install. Kita perlu menginstal Docker di komputer kita.

Step 2- Dengan menggunakan perintah berikut, Anda dapat menarik image buruh pelabuhan MXNet−

$ docker pull mxnet/python

Sekarang untuk melihat apakah mxnet / python docker image pull berhasil, kita dapat membuat daftar gambar docker sebagai berikut−

$ docker images

Untuk kecepatan inferensi tercepat dengan MXNet, disarankan untuk menggunakan MXNet terbaru dengan Intel MKL-DNN.

Periksa perintah di bawah-

$ docker pull mxnet/python:1.3.0_cpu_mkl
$ docker images

Menginstal MXNet Di Cloud dan Perangkat

Bagian ini menyoroti cara menginstal Apache MXNet di Cloud dan perangkat. Mari kita mulai dengan mempelajari tentang menginstal MXNet di cloud.

Menginstal MXNet Di Cloud

Anda juga bisa mendapatkan Apache MXNet di beberapa penyedia cloud dengan Graphical Processing Unit (GPU)dukung. Dua jenis dukungan lain yang dapat Anda temukan adalah sebagai berikut-

  • Dukungan GPU / CPU-hybrid untuk kasus penggunaan seperti inferensi yang dapat diskalakan.
  • Dukungan GPU faktorial dengan AWS Elastic Inference.

Berikut adalah penyedia cloud yang menyediakan dukungan GPU dengan mesin virtual yang berbeda untuk Apache MXNet−

Konsol Alibaba

Anda dapat membuat file NVIDIA GPU Cloud Virtual Machine (VM) Tersedia di https://docs.nvidia.com/ngc dengan Konsol Alibaba dan gunakan Apache MXNet.

Layanan Web Amazon

Ini juga menyediakan dukungan GPU dan memberikan layanan berikut untuk Apache MXNet−

Amazon SageMaker

Ia mengelola pelatihan dan penerapan model Apache MXNet.

AMI Deep Learning AWS

Ini menyediakan lingkungan Conda prainstal untuk Python 2 dan Python 3 dengan Apache MXNet, CUDA, cuDNN, MKL-DNN, dan AWS Elastic Inference.

Pelatihan Dinamis di AWS

Ini memberikan pelatihan untuk pengaturan EC2 manual eksperimental serta untuk pengaturan CloudFormation semi-otomatis.

Kamu dapat memakai NVIDIA VM Tersedia di https://aws.amazon.com dengan layanan web Amazon.

Google Cloud Platform

Google juga menyediakan NVIDIA GPU cloud image yang tersedia di https://console.cloud.google.com untuk bekerja dengan Apache MXNet.

Microsoft Azure

Microsoft Azure Marketplace juga menyediakan NVIDIA GPU cloud image Tersedia di https://azuremarketplace.microsoft.com untuk bekerja dengan Apache MXNet.

Oracle Cloud

Oracle juga menyediakan NVIDIA GPU cloud image Tersedia di https://docs.cloud.oracle.com untuk bekerja dengan Apache MXNet.

Unit Pemrosesan Pusat (CPU)

Apache MXNet berfungsi pada setiap instance khusus CPU penyedia cloud. Ada berbagai metode untuk menginstal seperti−

  • Petunjuk pemasangan pip Python.

  • Instruksi Docker.

  • Opsi prainstal seperti Amazon Web Services yang menyediakan AMI Deep Learning AWS (memiliki lingkungan Conda prainstal untuk Python 2 dan Python 3 dengan MXNet dan MKL-DNN).

Menginstal MXNet di Perangkat

Mari kita pelajari cara menginstal MXNet di perangkat.

Raspberry Pi

Anda juga dapat menjalankan Apache MXNet pada perangkat Raspberry Pi 3B karena MXNet juga mendukung OS berbasis Respbian ARM. Untuk menjalankan MXNet dengan lancar di Raspberry Pi3, disarankan untuk memiliki perangkat yang memiliki RAM lebih dari 1 GB dan kartu SD dengan ruang kosong minimal 4 GB.

Berikut adalah cara-cara dengan bantuan yang Anda dapat membangun MXNet untuk Raspberry Pi dan menginstal pengikatan Python untuk perpustakaan juga-

Instalasi cepat

Roda Python yang dibuat sebelumnya dapat digunakan pada Raspberry Pi 3B dengan Stretch untuk instalasi cepat. Salah satu masalah penting dengan metode ini adalah, kita perlu menginstal beberapa dependensi agar Apache MXNet berfungsi.

Instalasi Docker

Anda dapat mengikuti petunjuk penginstalan buruh pelabuhan, yang tersedia di https://docs.docker.com/engine/install/ubuntu/untuk menginstal Docker di komputer Anda. Untuk tujuan ini, kita dapat menginstal dan menggunakan Community Edition (CE) juga.

Bangun Asli (dari sumber)

Untuk menginstal MXNet dari sumber, kita perlu mengikuti dua langkah berikut-

Langkah 1

Build the shared library from the Apache MXNet C++ source code

Untuk membangun pustaka bersama pada versi Raspberry Wheezy dan yang lebih baru, kami memerlukan dependensi berikut:

  • Git- Diperlukan untuk menarik kode dari GitHub.

  • Libblas- Diperlukan untuk operasi aljabar linier.

  • Libopencv- Diperlukan untuk operasi terkait computer vision. Namun, ini opsional jika Anda ingin menghemat RAM dan Ruang Disk Anda.

  • C++ Compiler- Diperlukan untuk mengompilasi dan membuat kode sumber MXNet. Berikut adalah kompiler yang didukung yang mendukung C ++ 11−

    • G ++ (4.8 atau versi yang lebih baru)

    • Clang(3.9-6)

Gunakan perintah berikut untuk menginstal dependensi yang disebutkan di atas−

sudo apt-get update
sudo apt-get -y install git cmake ninja-build build-essential g++-4.9 c++-4.9 liblapack*
libblas* libopencv*
libopenblas* python3-dev python-dev virtualenv

Selanjutnya, kita perlu menggandakan repositori kode sumber MXNet. Untuk ini gunakan perintah git berikut di direktori home Anda−

git clone https://github.com/apache/incubator-mxnet.git --recursive

cd incubator-mxnet

Sekarang, dengan bantuan perintah berikut, buat pustaka bersama:

mkdir -p build && cd build
cmake \
-DUSE_SSE=OFF \
-DUSE_CUDA=OFF \
-DUSE_OPENCV=ON \
-DUSE_OPENMP=ON \
-DUSE_MKL_IF_AVAILABLE=OFF \
-DUSE_SIGNAL_HANDLER=ON \

-DCMAKE_BUILD_TYPE=Release \
-GNinja ..
ninja -j$(nproc)

Setelah Anda menjalankan perintah di atas, itu akan memulai proses pembangunan yang akan memakan waktu beberapa jam untuk menyelesaikannya. Anda akan mendapatkan file bernamalibmxnet.so di direktori build.

Langkah 2

Install the supported language-specific packages for Apache MXNet

Pada langkah ini, kita akan menginstal MXNet Pythin binding. Untuk melakukannya, kita perlu menjalankan perintah berikut di direktori MXNet−

cd python
pip install --upgrade pip
pip install -e .

Alternatifnya, dengan perintah berikut, Anda juga dapat membuat file whl package dapat dipasang dengan pip-

ci/docker/runtime_functions.sh build_wheel python/ $(realpath build)

Perangkat NVIDIA Jetson

Anda juga dapat menjalankan Apache MXNet di Perangkat NVIDIA Jetson, seperti TX2 atau Nanokarena MXNet juga mendukung OS berbasis Ubuntu Arch64. Agar dapat berjalan, MXNet dengan lancar di Perangkat NVIDIA Jetson, CUDA perlu diinstal pada perangkat Jetson Anda.

Berikut adalah cara-cara dengan bantuan yang Anda dapat membangun MXNet untuk perangkat NVIDIA Jetson:

  • Dengan menggunakan roda pip Jetson MXNet untuk pengembangan Python

  • Dari sumber

Tetapi, sebelum membangun MXNet dari salah satu cara yang disebutkan di atas, Anda perlu menginstal dependensi berikut pada perangkat Jetson Anda−

Dependensi Python

Untuk menggunakan Python API, kita membutuhkan dependensi berikut-

sudo apt update
sudo apt -y install \
   build-essential \
   git \
   graphviz \
   libatlas-base-dev \
   libopencv-dev \
   python-pip
sudo pip install --upgrade \
   pip \
   setuptools
sudo pip install \
   graphviz==0.8.4 \
   jupyter \
   numpy==1.15.2

Gandakan repositori kode sumber MXNet

Dengan menggunakan perintah git berikut di direktori home Anda, kloning repositori kode sumber MXNet−

git clone --recursive https://github.com/apache/incubator-mxnet.git mxnet

Siapkan variabel lingkungan

Tambahkan yang berikut ini di .profile file di direktori home Anda−

export PATH=/usr/local/cuda/bin:$PATH
export MXNET_HOME=$HOME/mxnet/
export PYTHONPATH=$MXNET_HOME/python:$PYTHONPATH

Sekarang, terapkan perubahan segera dengan perintah berikut−

source .profile

Konfigurasi CUDA

Sebelum mengkonfigurasi CUDA, dengan nvcc, Anda perlu memeriksa versi CUDA mana yang sedang berjalan−

nvcc --version

Misalkan, jika lebih dari satu versi CUDA diinstal pada perangkat atau komputer Anda dan Anda ingin mengganti versi CUDA, gunakan yang berikut ini dan ganti tautan simbolik ke versi yang Anda inginkan−

sudo rm /usr/local/cuda
sudo ln -s /usr/local/cuda-10.0 /usr/local/cuda

Perintah di atas akan beralih ke CUDA 10.0, yang sudah diinstal sebelumnya pada perangkat NVIDIA Jetson Nano.

Setelah Anda selesai dengan prasyarat yang disebutkan di atas, Anda sekarang dapat menginstal MXNet di Perangkat NVIDIA Jetson. Jadi, mari kita pahami cara-cara yang dengannya Anda dapat menginstal MXNet−

By using a Jetson MXNet pip wheel for Python development- Jika Anda ingin menggunakan roda Python yang telah disiapkan, unduh yang berikut ini ke Jetson Anda dan jalankan-

  • MXNet 1.4.0 (untuk Python 3) tersedia di https://docs.docker.com

  • MXNet 1.4.0 (untuk Python 2) tersedia di https://docs.docker.com

Bangun Asli (dari sumber)

Untuk menginstal MXNet dari sumber, kita perlu mengikuti dua langkah berikut-

Langkah 1

Build the shared library from the Apache MXNet C++ source code

Untuk membangun pustaka bersama dari kode sumber Apache MXNet C ++, Anda dapat menggunakan metode Docker atau melakukannya secara manual−

Metode Docker

Dalam metode ini, Anda harus menginstal Docker terlebih dahulu dan dapat menjalankannya tanpa sudo (yang juga dijelaskan di langkah sebelumnya). Setelah selesai, jalankan perintah berikut untuk menjalankan kompilasi silang melalui Docker−

$MXNET_HOME/ci/build.py -p jetson

Manual

Dalam metode ini, Anda perlu mengedit file Makefile (dengan perintah di bawah ini) untuk menginstal MXNet dengan ikatan CUDA untuk memanfaatkan unit Pemrosesan Grafis (GPU) pada perangkat NVIDIA Jetson:

cp $MXNET_HOME/make/crosscompile.jetson.mk config.mk

Setelah mengedit Makefile, Anda perlu mengedit file config.mk untuk membuat beberapa perubahan tambahan untuk perangkat NVIDIA Jetson.

Untuk ini, perbarui pengaturan berikut−

  • Perbarui jalur CUDA: USE_CUDA_PATH = / usr / local / cuda

  • Tambahkan -gencode arch = compute-63, code = sm_62 ke pengaturan CUDA_ARCH.

  • Perbarui pengaturan NVCC: NVCCFLAGS: = -m64

  • Nyalakan OpenCV: USE_OPENCV = 1

Sekarang untuk memastikan bahwa MXNet dibangun dengan akselerasi presisi rendah tingkat perangkat keras Pascal, kita perlu mengedit Mshadow Makefile sebagai berikut−

MSHADOW_CFLAGS += -DMSHADOW_USE_PASCAL=1

Akhirnya, dengan bantuan perintah berikut Anda dapat membangun pustaka Apache MXNet lengkap−

cd $MXNET_HOME
make -j $(nproc)

Setelah Anda menjalankan perintah di atas, itu akan memulai proses pembangunan yang akan memakan waktu beberapa jam untuk menyelesaikannya. Anda akan mendapatkan file bernamalibmxnet.so dalam mxnet/lib directory.

Langkah 2

Install the Apache MXNet Python Bindings

Pada langkah ini, kita akan menginstal bindings MXNet Python. Untuk melakukannya kita perlu menjalankan perintah berikut di direktori MXNet−

cd $MXNET_HOME/python
sudo pip install -e .

Setelah selesai dengan langkah-langkah di atas, Anda sekarang siap untuk menjalankan MXNet pada perangkat NVIDIA Jetson TX2 atau Nano Anda. Itu dapat diverifikasi dengan perintah berikut-

import mxnet
mxnet.__version__

Ini akan mengembalikan nomor versi jika semuanya berfungsi dengan benar.