参考:
The MAX78000 Microcontroller, Some Coffee, and Artificial Intelligence
GitHub - MaximIntegratedAI/ai8x-training: Model Training for ADI's MAX78000 and MAX78002 AI Devices
ai8x-synthesis/WSL2.md at develop · MaximIntegratedAI/ai8x-synthesis · GitHub
微信(建议)
【嵌入式AI开发&Maxim篇二】美信Maxim78000Evaluation Kit AI开发环境
项目开发路线:
训练生成的文件分布
..../ai8x-training/ ..../ai8x-synthesis/ ..../ai8x-synthesis/sdk/
省略号是项目的根目录
准备
PyTorch
不能使用虚拟机,只能安装适用于 Linux 的 Windows 子系统 (WSL2)。操作如下:
ai8x-synthesis/WSL2.md at develop · MaximIntegratedAI/ai8x-synthesis · GitHub
WSL2
适用于 Linux 2 的 Windows 子系统允许在 Ubuntu Linux 下进行模型训练,并具有 CUDA 硬件加速功能,与主要在 Linux 上开发的大量机器学习工具完全兼容。
空间大小
确保有足够的可用空间用于WSL2安装和MAX78000/MAX78002工具以及数据集。强烈建议至少 32 GB 的可用空间,但要求因所用数据集的大小而异。
New versions of Windows (Windows 10 21H2 or newer, and Windows 11) support WSL2, the Windows Subsystem for Windows, with CUDA hardware acceleration.
好像太老了版本。怎么办
突然发现实验室电脑的版本正好合适,我也找了一块GT 710的显卡装了进去
安装显卡驱动程序
完犊子,这个型号的老显卡,没有CUDA 硬件加速的驱动程序。。。。
把下载类型,改成游戏就好了。。。。服了这个老六
开始安装:
完犊子,驱动都安装失败了
先跳过这一步,往后面进行
确保CUDA可用于视窗
打开命令提示符并运行nvidia-smi
好像可以啊,只不过版本好像很低,继续往下
WSL2 安装
以管理员权限打开命令提示符并安装 WSL2(注意一定要用管理员身份运行哦~具体办法自己搜索)
wsl --install
安装完成了!下一步,重启电脑!
重启之后,就这样了
在window上使用Ubuntu
整一个用户名和密码
搞定
测试一下,可不可以再WSL2用CUDA nvidia-smi
不能用,绝了。
驱动刚刚还好好的,能么就不能用了
没办法了,更新驱动吧,又是漫长的等待~(谢谢360驱动管家,助我一臂之力!)
时隔两周再次尝试
一切over!
与 Windows 共享文件
WSL2 文件系统应该用于所有操作,例如创建 git 存储库。直接在 Windows 文件系统上操作可能会导致问题。
- 要从WSL2 中访问 Windows 文件,请使用/mnt/c/,例如/mnt/c/Users/<name>/Documents/.
- 当 WSL2 正在运行时,可以使用网络路径从 Windows\\wsl$\Ubuntu访问 WSL2 文件系统,例如使用 Windows 资源管理器。此路径也可以映射为网络驱动器。 注意:如果 Ubuntu 20.04 是从 Windows 商店安装的,则网络路径可能改为 \\wsl$\Ubuntu-20.04.
用户主页通常位于\\wsl$\Ubuntu\home\<name>\。
请注意,MaximSDK MinGW shell 在 C:\MaximSDK\Tools\MinGW\msys\1.0\home\<name>\. 此目录独立于 Windows 文档和 WSL2 主目录。
系统和工程安装
安装一些系统包
需要一些额外的系统包,安装这些额外的包需要管理员权限。这是唯一需要管理员权限的时间。
$ 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 xz-utils tk-dev libffi-dev liblzma-dev \ libsndfile-dev portaudio19-dev
忘记Ubuntu密码怎么办?
参考这个:
Win10 WSL2 Ubuntu子系统用户密码忘记解决方案 - Qiyez七夜 - 博客园
无法定位到包
那就更新一下包
sudo apt-get update sudo apt-get upgrade
这个包,装了差不多十几分钟
装完包,在安装系统包,搞定
拉取工程代码
为方便起见,定义一个名为 的 shell 变量AI_PROJECT_ROOT:
(别忘记这一系列文件夹,是自己建好的)
$ export AI_PROJECT_ROOT="$HOME/Documents/Source/AI"
将此行添加到~/.profile,然后执行以下命令:(有的命令也要权限sudo)
$ cd $AI_PROJECT_ROOT $ sudo git clone --recursive https://github.com/MaximIntegratedAI/ai8x-training.git $ sudo git clone --recursive https://github.com/MaximIntegratedAI/ai8x-synthesis.git
虚拟环境搭建
教程使用的是pyenv搭建虚拟环境,而且对ai8x-training和ai8x-synthesis各搭建了一个,其实这是没必要的,稳妥可以按教程来。
但博主本身就使用conda搭建过自己的深度学习环境了,所以只需版本对,且补充一些原来没有的包就行了。(注意:同时安装conda和pyenv可能会引起source activate 命令冲突,需要在.bashrc文件将其中之一注释掉。所以还是建议不要在根目录下使用pyenv install 命令直接安装pyenv)。
按教程来
先试试你没有python环境
首先查看是否有默认的Python解释器,是否为3.8.x版本:(出现以下这种情况都是没有)
$ python Command 'python' not found, did you mean: command 'python3' from deb python3 command 'python' from deb python-is-python3 # no default python, install pyenv $ python --version Python 2.7.18 # wrong version, pyenv required
很遗憾,我没有
安装pyenv
curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash curl -L "https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash"
连接不上啊
解决办法:
参考:http://t.csdn.cn/IFsi3 解决方式一
cd /etc sudo vim hosts 199.232.28.133 raw.githubusercontent.com
白高兴一场,又错了
不使用直接安装,先下载包,再手动安装
git clone https://github.com/yyuu/pyenv.git ~/.pyenv sudo echo 'export PYENV_ROOT="$HOME/.pyenv"'>>~/.bash_profile sudo echo 'export PATH="$PYENV_ROOT/bin:$PATH"'>>~/.bash_profile sudo echo 'eval "$(pyenv init -)"'>>~/.bash_profile source ~/.bash_profile pyenv --help
成功
再安装python3.8.11
pyenv install 3.8.11
成功
进入项目目录
$ cd ai8x-training
如果使用 pyenv,将本地目录设置为使用 Python 3.8.11
pyenv local 3.8.11
在所有情况下,验证是否使用 3.8.x 版本的 Python:
$ python --version Python 3.8.11
搭建虚拟环境
python -m venv venv --prompt ai8x-training
一直报错
文件夹权限的问题
sudo chmod 777 ai8x-training
修改之后,再次执行虚拟环境的搭建
python -m venv venv --prompt ai8x-training
成功
开始激活环境
source venv/bin/activate
激活成功之后,命令行会有这样的变化,多了个前缀
继续
pip3 install -U pip wheel setuptools
使用 CUDA 安装的文件
pip3 install -r requirements-cu11.txt
淦 ,好像报错了
不管了,既然小问题,继续搞
暂停这个虚拟环境
deactivate
进入另一个目录,先修改权限
sudo chmod 777 ai8x-synthesis
检查检查python环境
$ python --version Python 3.8.11
然后老规矩,一套组合拳,创建激活虚拟环境,安装支持文件
python -m venv venv --prompt ai8x-synthesis source venv/bin/activate (ai8x-synthesis) $ pip3 install -U pip setuptools (ai8x-synthesis) $ pip3 install -r requirements.txt
到此为止,两个虚拟环境搭建完毕。
训练
看教程中,需要进行SDK安装,但我是在两个电脑开发项目的,这台电脑没装SDK,只用来训练模型。
进入工程目录,打开虚拟环境,并验证环境:
cd ai8x-training source venv/bin/activate ./check_cuda.py
大家可以先进入scripts中看一下,都一些现成的例子
.sh文件内是训练的命令文件,一些具体命令描述使用--help查看,或查看开发文档。
直接开始训练一个已有的,试试水
scripts/train_mnist.sh
发现少了几个包
安装
$ pip install -e distiller $ pip install shap $ pip install pytsmod $ pip install apputils
还是报错
硬件加速检查
检查CUDA加速
nvidia-smi -q
验证 PyTorch 是否识别 CUDA
python check_cuda.py
训练脚本
scripts/train_mnist.sh
还是老问题
打开train.py文件
主要训练软件是train.py. 它驱动训练方面,包括模型创建、检查点、模型保存和状态显示。
export PATH=/home/iron/Documents/Source/AI/ai8x-training/venv/lib/python3.8/site-packages
cd /home/iron/Documents/Source/AI/ai8x-training/
最直接的办法,直接把那些包复制到相应文件夹下,但有一个包一直下载不下来
model_summaries是什么鬼?
尝试从其他的源下载:
python -m pip install model_summaries -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
不行
更新一下pip的版本
python -m pip install --upgrade pip
已经是最新的了,还是不行
用一下pip3
pip3 install model_summaries
还是不行
直接去官网下载这个包
PyPI · The Python Package Index
这也没有啊!!
太玄学了,包都没安装上,居然开始训练了