3行で
- jetson nanoで手軽に深層学習を試したいが、jetson nanoがarmアーキテクチャなせいで環境構築がトリッキー
- 深層学習に使えるとはいえ、非力なマシンなのでライブラリのインストールに時間がかかる
- nvidia提供のdockerイメージを使うと基本的な環境は構築済み!簡単!
環境
使用環境 | |
---|---|
ハードウェア | jetson nano |
JetPack | JetPack 4.4 Developer Preview |
方針
ndivia提供のコンテナを使います。この記事で紹介する以外にも、色々なコンテナがあります。
nvidia NGC
この記事で使うコンテナはこれです。
Machine Learning for Jetson/L4T
The l4t-ml:r32.4.2-py3 tag is available for Python 3.6 with the following components:
l4t-ml:r32.4.2-py3
TensorFlow 1.15
PyTorch v1.5.0
onnx 1.6.0
numpy 1.18.2
pandas 1.0.3
scipy 1.4.1
scikit-learn 0.22.2
JupyterLab 2.0.1
note: the l4t-ml container requires JetPack 4.4 Developer Preview (L4T R32.4.2)
とのことなので、機械学習でよく使う基本ライブラリとTensorFlow, PyTorchのフレームワークが入ったイメージになります。
TensorFlowが入っているということは、TensorFlowに内蔵されたkerasもあるので、kerasも使えます。
使い方
公式の通り
sudo docker pull nvcr.io/nvidia/l4t-ml:r32.4.2-py3
sudo docker run -it --rm --runtime nvidia --network host nvcr.io/nvidia/l4t-ml:r32.4.2-py3
でもよし。このイメージをベースにアレンジしたコンテナイメージを作りたいなら、
FROM nvcr.io/nvidia/l4t-ml:r32.4.2-py3
からDockerfile
を作ればOKです。
docker pull
にまあまあ時間(数十分ぐらい)かかりますが、ホストOSに直接導入するよりはるかに短い時間で終わります。
参考
armアーキテクチャへの各種深層学習フレームワークをホストOSに直接導入するには下記を参照ください
Jetson Zoo
感想
このコンテナ、公開されたのが2020年4月30日と(記事公開時点で)かなり最近です。
ちょっと前は四苦八苦してホストOSにTensorFlow入れてたんですが・・・、jetsonの進化はすごいスピードですね。
追記
2020.08.25
jetpack 4.4がリリースされたことに伴い、docker pullの対象も変わりました。
jetpack 4.4を使う場合は
nvcr.io/nvidia/l4t-ml:r32.4.3-py3
をpullなりFROMに指定するなりしてください。