如何对SAP Leonardo上的机器学习模型进行从新训练

Jerry以前的两篇文章介绍了如何经过Restful API的方式,消费SAP Leonardo上预先训练好的机器学习模型:web

如何在Web应用里消费SAP Leonardo的机器学习API
部署在SAP Cloud Platform CloudFoundry环境的应用如何消费api

当时Jerry提到,Product Image Classification API只支持29种产品类别:浏览器

clipboard1,1

若是咱们开发应用时须要支持额外的产品类别,就得须要自行提供该产品类别的图片并从新训练。网络

clipboard2,2

下面是SAP Leonardo上机器学习模型的从新训练步骤。app

假设咱们指望从新训练以后,Product Image Classfication这个模型可以识别出不一样种类的花,那么咱们首先得搞到大量花的图片。Tensorflow的官网上,已经体贴地给想作模型训练的学习者们,提供了一个作练习用的压缩包,里面包含了大量各式花的图片。
http://download.tensorflow.or...机器学习

SAP Leonardo接受的能用于从新训练模型的数据集,必须符合下列的层级结构,即training, validation和test三个文件夹下面,分别包含以产品类别命名的字文件夹,且数据规模之比为8:1:1.异步

clipboard3,3

有了用于训练的数据后,下一步就是把这些数据上传到SAP Leonardo的模型在线存储平台上。post

Jerry的前一篇文章部署在SAP Cloud Platform CloudFoundry环境的应用如何消费曾经介绍了如何在SAP云平台上建立Leonardo机器学习的服务实例,这个实例的service key里包含了一个IMAGE_RETRAIN_API_URL,能够用来获取在线存储的url:学习

clipboard4,4

向这个url发送一个HTTP get请求,获得在线存储的url:url

clipboard5,5

把这个url粘贴到浏览器里,输入postman里返回的accessKey和secretKey登陆,就能以web的方式访问这个在线存储了:

clipboard6,6

下一步是把本地的训练文件上传到这个部署在AWS上的在线存储上去。

首先用命令行mc config host定义一个名为sapjerrys3的远程站点,将上一步从postman得到的AWS在线存储url,accessKey和secret绑定到这个站点上:

clipboard7,7

而后使用命令行上传文件:
mc.exe cp -r C:CodeMachineLearningStudyflowersjerry sapjerrys3data
大概十几分钟后,文件上传完毕:

clipboard8,8

此时能够从浏览器里看到AWS在线存储上传完毕的训练文件。

clipboard9,9

如今能够提交一个后台做业了,让Leonardo去处理这些上传好的文件,ABAP顾问们能够把这个动做理解成在Netweaver事务码SM36里定义一个后台做业并提交。发送一个HTTP post请求,除了下图jobName, dataset和modelName须要本身维护外,其余字段都使用SAP官网上定义的默认值。

clipboard10,10

这个请求会返回一个后台做业ID,抄下来后把它拼到url末尾,而后从新发送一个HTTP get请求,便可查询到这个做业的执行状况。Jerry作的时候,等待了大概五分钟,做业状态就变为SUCCEEDED了。

clipboard11,11

由于上一篇和本文作的练习都是在SAP Cloud Platform的CloudFoundry环境中进行的,所以咱们也能够用cf命令行来查询这些做业的执行状况:

cf sapml retraining jobs -m image

clipboard12,12

若是遇到做业状态为FAILED的状况,去AWS在线存储上查看以做业名称命名的文件夹,里面包含了详细的训练日志,能够用做错误分析:

clipboard13,13

在这个训练好的模型能正式被使用以前,咱们还须要对其进行部署,相似ABAP Netweaver里的“激活”动做。

clipboard14,14

和提交训练的后台做业相似,模型部署也是一个异步执行的步骤,提交部署请求后,获得一个部署做业ID:ms-26c5a22c-6d07-4164-8222-a4182969162d

clipboard15,15

根据这个部署做业ID能够查询模型部署状态:

clipboard16,16

成功部署后,咱们就能够用Restful API消费这个模型了,url的格式为:https://mlfinternalproduction...;model name>/versions/1

我从网络上随便找一张向日葵的照片,

clipboard18,18

将这张图片做为HTTP POST的参数发给我从新训练而且部署好的模型flowerjerrymodel,获得的结果显示,从新训练后的模型认为这张图片有大约87%的可能性是表明向日葵。

clipboard19,19
clipboard20,20

接下来有时间的话,我打算搜集一些异形的图片来训练,看SAP Leonardo能不能把我桌上挂着的这个异形吊饰识别出来。感谢阅读。

clipboard21,21

clipboard17

要获取更多Jerry的原创文章,请关注公众号"汪子熙":
公众号截图

相关文章
相关标签/搜索