在imx8qm上开心把玩Machine Learning

【在imx8qm上开心把玩Machine Learning】在上搭建ARM-NN+-的软件开发环境
本篇,将带领大家进入的世界,讲述如何在上搭建机器学习开发环境,以其让AI在上飞奔
OS:Linux--16.04
ARM-NN与-简介
ARM-NN是一套由ARM公司所提供的开源Linux软件和工具,以支持在嵌入式设备上运行机器学习算法 。特别的,针对于ARM处理架构有着特别的支持!桥接了几近所有的神经网络框架与高效能的ArmCPUs ( -mM or -A )、Arm Mali GPU ( with)或Arm机器学习处理器 。如图所示,为ARM所提供的机器学习框架:
特别的,针对于-A系列处理器,其系统架构:
针对于广大的MCU群体,ARM-NN同样有所涉猎:

在imx8qm上开心把玩Machine Learning

文章插图
因此,可以这样理解,ARM-NN其实是ARM所提供的一套上层开发套件,通过他,即可进行ML的架设!可以称之为指挥官,那么问题来了,冲锋陷阵的战士在哪里呢?当然,这个时候就要轮到-以及CMSIS-NN(将在下期为大家进行分解)登场了,顾名思义,-指代了一系列的数学计算库,以-A CPU和Mali GPU等可编程内核为目标,尽可能的提高算法执行效率,其利用ARM指令级对ML操作进行汇编级的优化,同时利用充分利用Mali GPU的优势,利用GPU对算法进行加速 。
首次发布的ARM-NN版本提供了对于Caffe的支持,同时,ARM后续还会依次发布支持以及其他神经网络框架的版本 。那么ARM-NN是如何实现机器学习的移植的呢:
首先,ARM-NN将神经网络框架中的网络转换为内部ARM-NN的格式,然后通过-将它们高效地部署在-A CPU和Mali-G71及Mali-G72等Mali GPU上(当然,如果你确定使用了ARM的Mali-GPU的话) 。
环境搭建
下面将介绍如何进行软件开发环境的搭建,请切记一定要保证版本的一致!!!