PAI图像多标签预测

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

数据格式

请参见输入数据格式

图像多标签预测

基于已有的文件列表,您可以通过PAI命令启动图像打标离线任务,示例如下。您可以使用SQL脚本组件进行PAI命令调用,也可以使用MaxCompute客户端或DataWorks的开发节点进行PAI命令调用,详情请参见使用本地客户端(odpscmd)连接开发ODPS SQL任务

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}