Python - AI - MAX78000 - Ubuntu で環境作成


 


1. 概要
2. 準備
3. git
4. ai8x-training 環境設定
5. ai8x-synthesis 環境設定
6. msdk 環境設定

1. 概要

 前ページまでで、作業している環境は、「Windows11 23H2」でのものです。  アップされているサンプルの中には、「Windows」環境では、動作しないものがあるようです。  「macOS」や「Ubuntu」での環境作成例もあります。  「macOS」の環境は作成できませんが、「Ubuntu」ならばやってみることができるかもしれないので、やってみます。  「Ubuntu 24.04」でやってみます。  本ページは、下記のサイトを参考にさせていただきました。
analogdevicesinc/ai8x-training: Model Training for ADI's MAX78000 and MAX78002 Edge AI Devices」
「GitHub - analogdevicesinc/msdk: Software Development Kit for Analog Device's MAX-series microcontrollers

2. 準備

 とりあえず、「apt update」で、システムを最新にしてはおきます。  「pip」がなかったので、インストールしておきます。  (他にも足りないものがあるようで、まとめて)  「root」ユーザ権限で。

apt install -y git python3-pip python3-full

apt install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev libsndfile-dev portaudio19-dev libsox-dev
 以下で、「python」で動作しようとするとないので、「python」を「python3」のシンボリックリンクにします。

ln -s /usr/bin/python3 /usr/bin/python
 なんか「pyenv」なるものが必要らしい。  ログインユーザで。

curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
 「bash」へパスを追加。

sh
cat << 'EOF' >> ~/.bashrc
export PYENV_ROOT="$HOME/.pyenv"
[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
EOF
exit

source ~/.bashrc
 「python3.11.8」が必要らしいので、ユーザ環境へ、インストール。

pyenv install "3.11.8"

3. git

 シェルは、デフォルトで「bash」になっているかと思いますが、変更している場合は、「bash」へ変更します。  ユーザのホーム直下に環境を作るものとします。  ここからは、ログインユーザで。  「github」からコードを取得します。

git clone --recursive https://github.com/analogdevicesinc/ai8x-training.git

git clone --recursive https://github.com/analogdevicesinc/ai8x-synthesis.git
 「git」の途中でエラーになることがあります。  そのような場合は、フォルダごと削除して、再度「git」コマンドをやりなおします。  以降、この状態から、あれこれいじります。  元に戻せるよう、この状態でいったん、バックアップを取っておいた方がいいかもしれません。  「ai8x-training」「ai8x-synthesis」という、2つの「git」を取得したわけですが、それぞれ環境を設定します。

4. ai8x-training 環境設定

 「ai8x-training」の環境を設定します。  「bash」上での環境を設定します。

cd ai8x-training
 「python」のバージョンを「3.11.8」へ設定して。

pyenv local 3.11.8
 確認。

$ python --version
Python 3.11.8

python -m venv .venv --prompt ai8x-training

echo "*" > .venv/.gitignore
 設定後、反映します。

source .venv/bin/activate
 今後、ディレクトリ移動ごとに、上記の「source」先頭ンドを実行することが必要になります。  上記で、「activate」を実行すると、プロンプトの先頭が、「(ai8x-training)」になります。  このあたり、「Windows」とは異なります。  必要なパッケージをインストールします。

pip3 install -U pip wheel setuptools

pip3 install -r requirements.txt --extra-index-url https://download.pytorch.org/whl/cu121

pip3 install -r requirements.txt --extra-index-url https://download.pytorch.org/whl/rocm5.7

pip3 install -r requirements.txt
 ここで、おまけ。  以降のサンプルパターンでは、警告が出ませんが。  オリジナルのパターンをやろうしたら、警告が出ることがあります。  それを防ぐために、ソースをひとついじります。

ai8x-training/train.py
 73行目あたりに、下記の行をいれておきます。  (詳細は、「Python - トラブルシュート」の「tensorflow Warning」をご参照ください)

os.environ['TF_ENABLE_ONEDNN_OPTS'] = '0'
 次項の環境設定のために。

deactivate

5. ai8x-synthesis 環境設定

 「ai8x-synthesis」の環境を設定します。

cd ../ai8x-synthesis
 「python」のバージョンを「3.11.8」へ設定して。

pyenv local 3.11.8
 確認。

$ python --version
Python 3.11.8

python -m venv .venv --prompt ai8x-synthesis

echo "*" > .venv/.gitignore

source .venv/bin/activate
 パッケージインストール。

pip3 install -U pip setuptools

pip3 install -r requirements.txt

deactivate

6. msdk 環境設定

 前もって、必要なモジュールをインストール。  「root」ユーザ権限で。

apt install -y libxcb-glx0 libxcb-icccm4 libxcb-image0 libxcb-shm0 libxcb-util1 libxcb-keysyms1 libxcb-randr0 libxcb-render-util0 libxcb-render0 libxcb-shape0 libxcb-sync1 libxcb-xfixes0 libxcb-xinerama0 libxcb-xkb1 libxcb1 libxkbcommon-x11-0 libxkbcommon0 libgl1 libusb-0.1-4 libhidapi-libusb0 libhidapi-hidraw0
 以下、ログインユーザで。  「msdk」の環境を作成します。  下記のサイトへアクセスして。
GitHub - analogdevicesinc/msdk: Software Development Kit for Analog Device's MAX-series microcontrollers
 「Installation」の「Installation」

 リンク先で「DownLoad」の「Linux(Ubuntu)」


 リンク先の「MaximMicrosSDK_linux.run」


 ここで、ダウンロードが始まりますが。
 「Windows」同様、ログインを求められたり、「agrement」を求められたりします。
 アカウントを作成するか・・・「Google 大先生」のアカウント等の転用もできるようです。

 インストールします。
 ダウンロードした、インストーラへ実行権限をつけて。


chmod +x MaximMicrosSDK_linux.run
 デスクトップ上で開きます。  「次へ」

 「次へ」


 「次へ」


 「使用許諾に同意します」をチェックして「次へ」


 「インストール」


 パスワードを入力して「認証」


 「無視」
 (後で、「apt」コマンドで確認しましたが、「libncueses5」は、リポジトリに存在しません)


 「完了」


 「OK」
 (「Ubuntu」でも、「Visual Studio Code」使うんかしら?)




audiobook.jp
葬送のフリーレン Prime Video
earthcar(アースカー)
ネットオークションの相場、統計、価格比較といえばオークファン
アフィリエイトのアクセストレード
EaseUS
薬屋の独り言
サウンドハウス
Amazonギフトカード
損保との違い
TikTok Shop 【リピート用プログラム】
ベルリッツ
健康サポート特集
それがだいじWi-Fi
ハイスピードプラン
JETBOY
【usus ウズウズ】
U-NEXT
5G CONNECT