0359-模型训练和部署-Iris数据集

温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。
Fayson的github:
https://github.com/fayson/cdhproject
提示:代码块部分可以左右滑动查看噢

1.文档编写目的


在前面的文章Fayson介绍了关于《CDSW1.4的新功能》、《Hadoop之上的模型训练 - CDSW1.4新功能模块》、《CDSW1.4的Experiments功能使用》、《Hadoop之上的模型部署 - CDSW1.4新功能模块》及《CDSW1.4的Models功能-创建和部署模型(QuickStart)》。本篇文章Fayson会使用CDSW内置的Python模板项目来引导完成端到端的实操示例,即包含从模型创建,训练到部署或投产。我们使用CDSW的实验模块来开发和训练模型,然后使用模型模块的功能来进行部署。

此示例使用Fisher and Anderson的标准Iris数据集构建一个模型,该模型根据花瓣的长度预测花瓣的宽度。

Fisher and Anderson参考:

https://onlinelibrary.wiley.com/doi/abs/10.1111/j.1469-1809.1936.tb02137.x

Iris数据集参考:

https://archive.ics.uci.edu/ml/datasets/iris

  • 内容概述

1.创建项目

2.训练模型

3.部署模型

4.总结

  • 测试环境说明

1.CM和CDH版本为5.15

2.CDSW版本为1.4

3.操作系统为RedHat7.4

2.创建示例工程


1.你可以在CDSW打包的Pyton模板项目中找到这个示例脚本。首先,从Python模板创建一个新项目:登录CDSW平台创建一个Python模板的工程

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ffkFs8UY-1583680890037)(https://ask.qcloudimg.com/http-save/yehe-1522219/chus9c313s.png)]

工程创建成功,进入工程目录列表

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dWddMVtu-1583680890038)(https://ask.qcloudimg.com/http-save/yehe-1522219/hrmqf3p3ls.jpeg)]

cdsw-build.sh:主要用于模型和实验构建的自定义脚本,在部署模型和试验是会使用pip命令安装我们指定的依赖项,这里主要使用到scikit-learn库。

fit.py:作为试验的模型训练示例。生成包含模型拟合参数的model.pkl文件。

predict.py:作为模型部署的示例函数。调用fit.py生成的model.pkl来预测花瓣宽度。

3.训练模型


1.进入test-models工程点击“Experiments”,进入该工程的试验列表

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tKyKrwqO-1583680890039)(https://ask.qcloudimg.com/http-save/yehe-1522219/hltihmw6it.jpeg)]

2.点击“Run Experiment”,使用fit.py创建一个Experiment

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zt8m6WuP-1583680890040)(https://ask.qcloudimg.com/http-save/yehe-1522219/osvaxmmtbt.jpeg)]

注意:确保使用Python3环境运行。

3.点击“Start Run”,新的实验在列表中显示,点击实验ID进入查看详细,可以看到实验概述,点击Session和Build可以看到实时的查看实验的构建及运行进度

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XE4zg0Ur-1583680890040)(https://ask.qcloudimg.com/http-save/yehe-1522219/7sd30cl2lu.jpeg)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mHiDNAi0-1583680890040)(https://ask.qcloudimg.com/http-save/yehe-1522219/4o0xl10yei.jpeg)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0qeQiFPP-1583680890041)(https://ask.qcloudimg.com/http-save/yehe-1522219/67ui7163w4.jpeg)]

4.等待实验运行成功,在Overview界面可以看到该实验输出的model.pkl文件

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MpG1SEld-1583680890041)(https://ask.qcloudimg.com/http-save/yehe-1522219/dlkq4vzf3p.jpeg)]

勾选model.pkl,点击“Add to Project”将生成的model.pkl文件添加到我们的test-models工程里。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qUx5wAv1-1583680890042)(https://ask.qcloudimg.com/http-save/yehe-1522219/8fr3x9dvxv.jpeg)]

4.部署模型


我们使用predict.py脚本来部署模型,该脚本中包含了predict函数,花瓣长度为该函数输入参数,并使用上一步训练的模型来预测花瓣的宽度。

1.进入test-models工程页面,点击“Models”

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-P01Eyeyb-1583680890042)(https://ask.qcloudimg.com/http-save/yehe-1522219/ks58gxyhn7.jpeg)]

2.点击“New Model”创建一个新的Model,确保使用Python3环境运行

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DHM3BV2o-1583680890043)(https://ask.qcloudimg.com/http-save/yehe-1522219/8f7amxpli4.jpeg)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yiEshDpt-1583680890043)(https://ask.qcloudimg.com/http-save/yehe-1522219/ehcdmmdc0m.jpeg)]

3.点击“Deploy Model”

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WN1hGAAT-1583680890044)(https://ask.qcloudimg.com/http-save/yehe-1522219/l85vggsupo.jpeg)]

在Models列表可以看到刚部署的模型状态为Pending状态,等待Model部署成功

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4JKtNKF6-1583680890044)(https://ask.qcloudimg.com/http-save/yehe-1522219/mhw1l6filj.jpeg)]

4.点击“test-model”进入模型部署的详细界面,包含模型的部署,构建,监控以及设置等模块

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UusQkYcA-1583680890044)(https://ask.qcloudimg.com/http-save/yehe-1522219/ug5ljcfrao.jpeg)]

Overview界面还提供了Model功能测试

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tbCYJAUg-1583680890045)(https://ask.qcloudimg.com/http-save/yehe-1522219/6is6t37iks.jpeg)]

5.提供了API接口调用模型,同时也提供了Python和R调用示例代码,如下Fayson在命令行测试:

curl -H "Content-Type: application/json" -X POST http://cdh05.fayson.com/api/altus-ds-1/models/call-model -d '{"accessKey":"mrsqqfchljq5n1sp24r12ab4byai2uzh","request":{"petal_length":5.4}}'

(可左右滑动)

参考:

https://www.cloudera.com/documentation/data-science-workbench/latest/topics/cdsw_models_examples.html

提示:代码块部分可以左右滑动查看噢
为天地立心,为生民立命,为往圣继绝学,为万世开太平。
温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。

你可能感兴趣的:(Hadoop实操)