【TensorFlow Lite】Xubuntu環境でtflite_convertしていく
目次
- 目次
- はじめに
- 目的
- 参考
- 参考にしたシリーズ
- 公式ページ
- 環境
- 1. まずはkerasモデルの実行環境を作成
- 2. Kerasモデルの実行確認
- 3. Kerasモデル(.h5)をTensorFlow Liteモデルに変換して使用してみる(Python,Ubuntu)
- 4. Kerasモデル(.h5)をTensorFlow Liteモデルに変換して使用してみる(C++,Raspberry PI)
- Ubuntuサイド
- ラズパイに必要なファイルをコピーする
- RPiサイド
- おわりに
はじめに
こんにちは、がんがんです。前回の記事にてXubuntu環境でEdge TPU USB アクセラレータの実験を行いました。
gangannikki.hatenadiary.jp
次のステージとしては独自モデルをRaspberry Pi上で実行していくことです。モデル変換の技術としてtflite_convertというものを使用しています。
今回は実際に手を動かしながら勉強していこうと思います。
【環境構築】Ubuntu18.04+Python3.7でPyTorch1.2.0(PyTorch1.0.1)の開発環境を構築していく
目次
- 目次
- はじめに
- 環境
- 参考
- pyenvのインストール
- anacondaのインストール
- anacondaの仮想環境を構築
- PyTorch(1.2.0)のインストール
- PyTorch(1.0.1)のインストール
- PyTorchの動作確認
- おわりに
はじめに
こんにちは、がんがんです。インターンにてPyTorchの実験を行う開発環境を整える必要がありました。そのため、ブックマークにてまとめていたものを備忘録として改めてまとめておきこうと思います。
環境
参考
- https://medium.com/@tacchan7412/ubuntu-gtx1080-cuda-pytorch%E3%81%AE%E7%92%B0%E5%A2%83%E3%82%92%E4%B8%80%E6%B0%97%E3%81%AB%E6%95%B4%E3%81%88%E3%81%9F%E8%A9%B1-a983746e840
- https://qiita.com/yukoba/items/4733e8602fa4acabcc35
- https://qiita.com/koh_0227/items/cabf4dce9d8e39a5b4d4
pyenvのインストール
環境を汚してしまうとあとで死に目にあうため、まずはpyenv環境を構築します。export先は.bashrc
とするため、nanoコマンド
から直接書き込んでも大丈夫です(参照が一部zshなので注意です)。
$ git clone https://github.com/yyuu/pyenv.git ~/.pyenv
$ git clone https://github.com/yyuu/pyenv-pip-rehash.git ~/.pyenv/plugins/pyenv-pip-rehash
$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
$ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
$ echo 'eval "$(pyenv init -)"' >> ~/.bashrc
$ source ~/.bashrc
pyenvのインストールが成功しているかを以下の確認してみましょう。
$ pyenv --version
anacondaのインストール
Python3.7
とanaconda
をインストールしていきます。まずは必要なパッケージを先にインストールします。パッケージをインストールせずとも上手くいくこともありますが入れておいた方が念のためです。
$ sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev libpng-dev
anaconda
のバージョンを確認してインストールします。
$ pyenv install -l | grep anaconda
$ pyenv install anaconda3-2019.07
Python3.7
も一緒にインストールします。
$ pyenv install -l | grep 3.7
$ pyenv install 3.7.4
anacondaの仮想環境を構築
condaの仮想環境は以下のコマンドで作成することが可能です。
$ conda create -n <環境名> Python=x.x anaconda
今回作成したいのは以下の名前です。
$ conda create -n pth1.2.0 Python=3.7 anaconda
PyTorch(1.2.0)のインストール
PyTorchのインストールは公式ページからいけます。condaから行う場合、pipから行う場合のどちらも記載しておきます。
condaの場合
$ conda install pytorch torchvision cudatoolkit=10.0 -c pytorch
pipの場合(pip=pip3の場合)
$ pip3 install torch torchvision
PyTorch(1.0.1)のインストール
最新のPyTorchをインストールした場合、上手く動作しないことがあります。私の場合、TensorboardXの実行時にエラーがおき、原因はPyTorchのバージョンによるものである可能性が高かったです。TensorboardXのissuesについては貼っておきます。 https://github.com/lanpa/tensorboardX/issues/483
この場合、.whl
ファイルを直接インストールする必要があります。上記の環境でPyTorch=1.0.1をインストールする場合は以下のコマンドです。
$ pip3 install https://download.pytorch.org/whl/cu100/torch-1.0.1.post2-cp37-cp37m-linux_x86_64.whl
公式ではtorchvision
についてバージョン指定がありません。しかし、こちらについてもバージョンを合わせておくと後のエラーを防ぐことが可能です。
$ pip3 install torchvision=0.2.0
PyTorchの動作確認
PyTorchに関する確認
実際にインストール出来ているかを確認していきます。
$ python
>>> import torch
>>> torch.__version__
>>> x = torch.rand(5, 3)
>>> print(x)
cudaに関する確認
cudaに関する確認コマンドは以下の通りです。
# CUDAが有効かどうかの確認
>>> torch.cuda.is_available()
# デバイス名の確認
>>> torch.cuda.get_device_name(0)
おわりに
今回はUbuntu環境にてPyTorchの実行環境を構築しました。現在は研究室の環境でも同様の環境を作成しているところです。この備忘録を参考にしながら楽しんで環境を構築していこうと思います。
【メモ】Anacondaのコマンドに関するメモ
目次
はじめに
こんにちは、がんがんです。ここ最近Anacondaをよく利用しています。普段(Windows)はpyenvのみで管理していたこともあり、忘れることが多いためcondaコマンドをメモとしてまとめておきます。
目的
- condaに関するコマンドの確認と整理
参考
仮想環境の状態を確認する
$ conda info -e
仮想環境を新規構築する
$ conda create -n <環境名> Python=x.x anaconda
仮想環境を削除する
$ conda remove n <環境名> --all
仮想環境をActiveにする
$ source activate <環境名>
conda info -e
とセットで用いることが多いため、よくsourceをcondaとしがちですがActivateは以下のコマンドです。以下を参照する限り、推奨はcondaのようです。
(conda activate
を実行するとconda init
しろと言われます)
https://qiita.com/peaceiris/items/e41488096e765269c93c
仮想環境を非Activeにする
$ source deactivate
おわりに
今回はcondaコマンドについてまとめておきました。今までは重要性をあまり感じずに避けてましたが、condaで管理するのは壊すのと作るのが何度も出来てとても便利です。そのため、今後もどんどん多用していこうと思います。
【メモ】COCO datasetの取得について
目次
はじめに
こんにちは、がんがんです。 DLの世界においてよく用いられるベンチマークとしてCOCO datasetがあります。通常であれば公式ページよりダウンロードしてやれば大丈夫です。しかし、ssh接続を行っているマシンであればCUIのみで操作を行うため、公式ページのGUIからダウンロードすることは出来ません。
今回はCOCO datasetの取得およびCOCOAPIについてメモとして残しておきます。
参考
COCO API
COCOのサポートツールとしてCOCO APIというものがあります。アノテーションまわりをサポートしてくれるため非常に便利なツールです。
$ git clone https://github.com/cocodataset/cocoapi.git
$ cd cocoapi/PythonAPI
$ make
アノテーション・データの取得
公式ページから直接ダウンロードする出来ない場合のメモです。
# coco2017の場合
$ wget http://images.cocodataset.org/zips/train2017.zip
$ wget http://images.cocodataset.org/zips/val2017.zip
$ wget http://images.cocodataset.org/zips/test2017.zip
$ wget http://images.cocodataset.org/annotations/annotations_trainval2017.zip
おわりに
今回はCOCO datasetおよびCOCOAPIについてメモとしてまとめました。YOLOのアノテーションやMaskrcnn-benchmarkで遊んでみようと考えているのでその際にこのメモを利用していきます。