手把手从EasyDL模型训练到EdgeBoard推理

 
摘要:
edgeboard是百度打造的基于fpga的嵌入式ai解决方案系列硬件;easydl是百度推出的一站式ai定制化训练和服务平台。本文详细介绍如何使用easydl进行模型训练,然后部署到edgeboard,缩短从模型训练到推理实现的路径,提高开发效率。
edgeboard是百度自主研发的ai软硬一体深度学习加速套件,能够提供强大的算力,并支持定制化模型,适配不同场景的终端设备,大幅提高设备端的ai推理能力,具有高性能、高通用、易集成等优势。edgeboard还可以无缝衔接百度大脑的开放能力,可以轻松将在easydl和ai studio平台定制的ai模型完美适配到edgeboard上。本文会介绍如何将easydl训练的模型离线部署到edgeboard上,实现ai的终端应用。
easydl定制化训练和服务平台可以一站式定制ai模型,并且完全界面化操作,利用少量的数据就可以训练出一个高精度的ai模型。
图1. easydl界面
接下来我们准备以狗的分类作为实例来介绍从训练到推理部署,首先介绍使用easydl进行模型训练。
一. 选择训练平台
要完成狗的分类,需要使用图像分类模型进行训练,在easydl首页中点击开始训练,选择“经典版”训练平台,模型类型选择图像分类,如图2所示。
图2. 模型类型
二. 准备数据集              
下面是我们准备好的数据,共8分类,每个分类用50张左右的图片用来训练,剩下20张左右用来做推理测试。
图3. 8类狗的照片文件
图4. 狗的照片
三. 创建数据集
根据easydl训练模型的规则,首先我们创建数据集,将采集好的数据每个种类放到一个文件夹中,如图2所示,再压缩成一个zip文件,然后把数据集上传到easydl平台,如图5所示。
图5. 上传数据集到easydl平台
四. 创建模型
数据集建立完成后,创建模型,根据需要填写相应的信息,如图6所示。
图6. 创建模型
五. 训练模型
在训练模型页面中,应用类型选择“离线服务”,算法选择“高精度”和“高性能”都可以,添加数据集,开始训练,如图7所示。
图7. 训练模型
六. 发布模型
训练模型需要一定的时间,等模型训练完成之后,我们点击申请发布,跳转到发布模型页面,选择“软硬一体方案”的“edgeboard+专用sdk”,提交申请,如图8所示。
图8. 发布模型
五.下载sdk
审核成功后,点击“服务详情”,“下载sdk”,如图9所示。
图9. 下载sdk
至此,在easydl上的模型训练结束,接下来将转到edgeboard的推理实现上。
在图9中,我们会看到有“管理序列号”的按钮,如果购买了edgeboard,跳转页面中会有一个edgeboard专用的序列号,这是easydl模型在edgeboard上部署的通行证。
图10. edgeboard专用序列号
下面我们就开始把模型部署到edgeboard上,下图是edgeboard fz9a系列硬件,edgeboard的技术文档可在百度大脑ai开放平台edgeboard fz9a板块找到。
根据该技术文档,需要将easydl离线sdk通过ftp或者samba工具传到edgeboard系统中,然后将edgeboard专用序列号填写到离线sdk中。
图11. edgeboard上的文件
edgeboard内置linux系统,我们将使用命令行的方式进行后面的部署操作。由于离线sdk在第一次使用时需要联网激活,因此将edgeboard接入路由器,连通外网。
图12. 测试网络连接
同时,将edgeboard的时间改成当前时间,否则离线sdk可能会激活失败,然后对离线sdk解压,进入到easydl文件夹,解压cpp文件夹中的tar包。
图13.修改本地时间
图14. 解压cpp文件中的tar包
根据官方文档,编辑cpp-->demo文件夹中的demo.cpp文件,将edgeboard专用序列号填入指定的位置处,如图15所示,改过之后,在demo文件夹中新建build文件夹,进行编译。
图15. 添加序列号
图16. 编译过程
编译完成后,开始进行模型推理。我们放置一张图片(如图17)到res文件夹中,调用res资源文件夹中的模型,以及测试图片的路径,在build下运行命令,如图18所示。
图17. 待测试照片
图18. 执行推理预测
从上面的打印信息中可以看到,easydl的模型在edgeboard上做出了完美的预测,corgi,分值p=0.999023,说明99%的概率是柯基,是不是很准。如果说这样看起来不直观,easydl的sdk还支持http服务的调用,下面来开启一下http服务,如图19所示。
图19. 开启http服务
开启http服务后,在浏览器中写入http://{edgeboard ip地址}:24401,比如edgeboard的ip是192.168.1.254,就写http://192.168.1.254:24401就出来如图18的显示界面。
图20. http服务显示界面
点击上传图片,选择测试集中的狗的图片,结果就立马出来了,置信度为1说明,百分之百就是可爱的比熊啦!
图21. 上传图片进行推理预测
至此,我们就完成了一个狗分类的模型训练和离线部署。
福利
据可靠小道消息:edgeboard正在打折中,历史最低价,降价1000元,有兴趣可以看看。
编辑:baixue来源:eeworld