SageMaker功能模块简介html
1Ground Truthgit
Ground Truth是一个给数据打标签的平台。能够选择纯人工打标签,若是工做量特别大,也能够选择人工和智能机器协做打标签。github
例如在Ground Truth平台上操做,框选出猫眼睛,会自动生成一个json文件如图中右上角,json描述了眼睛在图中的左上角、右下角坐标。算法
生成的json文件(即标签信息)能够做为对象检测训练的输入数据。json
标记任务api
建立一个打标签任务,主要包含待打标签图片所在路径、生成的标签信息文件json所在路径。并发
输入任务名称、输出路径后,点击“建立清单文件==>输入图片路径==>建立==>use this manifest框架
IAM角色下拉框==>create a new role机器学习
这里以对象识别模型为例,任务类型选“边界框”ide
下一步把标签任务分配给相关工做人员:
公有:aws庞大的人工团队,须要付费。
私有:贵公司本身的员工。
供应商:第三方专业打标签的供应商,须要付费。
选择“私有”须要先建立一个团队(后面讲)
红框“启用”表明人和机器共同劳做,系统自动将图片分发给人和机器,机器一开始并不知道怎么打标签,因此打出来的标签每每是错误的,
这时系统会自动将机器打完标签的图片又回传给人工复核,机器经过学习复核结果提高技能。
这个过程是来来回回、反反复复的直到机器掌握足够的水平。接下来机器开始自动打标签,对于一些机器不能肯定的图片仍然会交由人工处理。
待识别的图片必须大于1250张才可启用机器标签,建议5000张图片以上,才选择启用。
能够给图片添加多个标签,好比须要识别图片中的猫眼睛,猫耳朵等。
这里假如只但愿识别眼睛,因此只添加一个eyes标签。
提交后,看到任务状态为“正在进行”。这时贵公司工做人员可经过邮件提供的地址登陆Ground Truth平台开始打标签工做。
任务结束后,生成一份output.manifest文件,即标签信息总文件。后续训练模型时做为输入文件(train通道)。
相似的,选择另一批图片,创建另一个Ground Truth任务生成另一个相似的manifest文件,并作为object detection模型训练时的另一个输入文件(validation通道)
(训练模型一般须要training data和validation data)
标签任务还生成一些其余中间文件,详情参考
https://docs.aws.amazon.com/sagemaker/latest/dg/sms-data-output.html
标记随需人力
1,邀请新工做人员 输入员工经过邮件,员工会收到邮件告知登陆Ground Truth平台的URL、用户名、密码。
2,建立私人团队 建立团队后刷新一下页面,再向团队添加以前建立的工做人员。
2 笔记本
建立一台EC2笔记本,jupyter已经搭建安装好各类语言及机器学习框架供科学家直接使用。
熟练的科学家能够在这个平台以编写代码调用sagemaker API的形式完成机器学习的整个流程,从一开始的构建本身的算法,验证算法,训练模型,调优,等等直到最后部署模型。
一个参考例子:
非专业人员,建议使用sagemaker图形界面来完成这些操做。
3 训练
算法
科学家在这建立本身的算法,后续经过“训练任务”生成算法模型。
训练任务
训练任务将算法训练出一个实用的模型。
算法源:sagemaker内置了众多著名、经典成熟的算法,包括对象检测(object detection),固然也能够选择科学家本身设计的算法。
输入模型:Pipe
资源配置:训练时建议选择P系列EC2,生产部署建议C系列。
运行时间:根据实际状况设置训练任务时长。
超参:非专业人员建议使用默认值,科学家可自定义。
超参详情
https://docs.aws.amazon.com/zh_cn/sagemaker/latest/dg/object-detection-api-config.html
以前Ground Truth生成的manifest文件内容以下:
source-ref栏位是图片路径
lzd-eye是自定义的标签名
输入数据配置:
1,默认只有一个“train”通道接收training data。
按上图填好manifest路径及source-ref、lzd-eye(根据实际标签名填写)等信息
2,添加validation通道接收validation data,除通道名称为validation外,其余信息与train通道相似。
输出数据配置:即输出模型路径
最后建立训练任务并生成模型。
超级参数优化做业
与“训练任务”相似,科学家也能够在这里从零开始训练模型或在现有的模型基础上优化训练,这里能够更加自由地设定超参范围,让sagemaker经过并发训练任务等方式在指定范围内找到最佳超参。
4 推理
模型训练好以后,部署在AWS上,部署分为实时和批量。
实时:模型实时在线,用户随时能够调sagemaker API对图片进行实时的对象检测,并实时返回结果。
批量:模型按需启动,对用户提供的批量图片进行对象检测,并返回批量结果。
training job==>create model
输入model名称,其余保持默认。
点击model名称
这里才批量推断为例:create batch inference job
按实际状况选择实例类型及数量。
按实际状况填写待检测图片所在路径及检测结果输出路径。
batch job结束后在输出路径下为每一个图片生成一个json文件,描述图片中检测到多少个物体,每一个物体所在坐标及类别。
详情请参考:
https://docs.aws.amazon.com/zh_cn/sagemaker/latest/dg/object-detection-in-formats.html