PAI-EasyVision提供图像打标训练及预测功能,支持多机分布式训练和预测。本文为您介绍如何通过PAI-EasyVision使用已有的训练模型完成图像打标离线任务。

数据格式

请参见标注文件格式说明

图像多标签预测

基于已有的文件列表,您可以通过PAI命令启动图像打标离线任务,示例如下。
pai -name ev_predict_ext
             -Dmodel_path='您的模型路径'
             -Dmodel_type='multilabel_classifier'
             -Dinput_oss_file='oss://path/to/your/filelist.txt'
             -Doutput_oss_file='oss://path/to/your/result.txt'
             -Dimage_type='url'
                   -Dnum_worker=2
                   -DcpuRequired=800
                   -DgpuRequired=100
             -Dbuckets='您的OSS目录'
             -Darn='您的rolearn'
             -DossHost='您的OSS域名'

输出结果

结果文件的每行表示原始图片路径及模型预测结果,示例如下。
oss://path/to/your/image1.jpg,  { "class_probs":{ "小品":0.0008051558979786932, "个人生活动态":0.7316102385520935 "饰品":0.0008112151990644634, "跳舞":0.0008053297060541809 }, "classes":[ 1 ], "predictions":[ false, true, false, false ], "class_names":[ "个人生活动态" ], "probs":[ 0.00054657127475366, 0.7316212648051790893, 0.0005365353426896036, 0.0007256706594489515 ] }
oss://path/to/your/image1.jpg,  { "class_probs":{ "小品":0.0008051558979786932, "个人生活动态":0.7316102385520935 "饰品":0.0008112151990644634, "跳舞":0.0008053297060541809 }, "classes":[ 1 ], "predictions":[ false, true, false, false ], "class_names":[ "个人生活动态" ], "probs":[ 0.00054657127475366, 0.7316212648051790893, 0.0005365353426896036, 0.0007256706594489515 ] }
oss://path/to/your/image1.jpg,  { "class_probs":{ "小品":0.0008051558979786932, "个人生活动态":0.7316102385520935 "饰品":0.0008112151990644634, "跳舞":0.0008053297060541809 }, "classes":[ 1 ], "predictions":[ false, true, false, false ], "class_names":[ "个人生活动态" ], "probs":[ 0.00054657127475366, 0.7316212648051790893, 0.0005365353426896036, 0.0007256706594489515 ] }

预测结果为JSON字符串,各字段的解释如下。

参数 含义 Shape 数据类型
classes 标签ID [num_labels] INT Array
class_names 标签名称 [num_labels] STRING Array
class_probs 所有标签概率 [total_labels] Dict{Key:STRING,Value:FLOAT}