企业上云-快速部署
快速部署
本章节主要帮助用户快速部署“仪表识别”解决方案。
配置节点 |
参数名称 |
类型 |
是否可选 |
参数解释 |
默认值 |
---|---|---|---|---|---|
运行配置 |
输出目录 |
string |
必填 |
选择一个OBS空目录存储训练输出的模型。 |
空 |
分割数据集 |
string |
必填 |
选择从AI Gallery下载水表识别模型分割数据的OBS目录’train_imgs’。 |
空 |
|
正反数据集源路径 |
string |
必填 |
选择一个OBS空目录存储正反数据集源。 |
空 |
|
资源配置 |
规格 |
string |
必填 |
选择配置各个节点运行的资源规格 |
“切割元素”:默认规格CPU:8核32GB。 “元素分割模型训练”、“正反分类模型训练”、“OCR算法训练”和“智能预标注”节点默认规格GPU:1*NVIDIA-V100(34GB)|CPU:8核64GB |
切割元素 |
seg_pattern_sub_dir_ph0 |
string |
必填 |
分割图片过滤子目录路径 |
“raw_image/2000_type1/**/*.json” |
seg_image_sub_dir_ph1 |
string |
必填 |
分割图片原图子路径 |
‘raw_image/2000_type1/’ |
|
seg_target_labels_ph2 |
number |
必填 |
分割标签 |
“{"客户":1,"读数":2,"id":3,"二维码":4,"条形码":5}” |
|
seg_output_mask_sub_dir_ph3 |
string |
必填 |
分割输出的mask子目录路径 |
“label_mask/2000_type1” |
|
seg_labels_file_name_ph4 |
number |
必填 |
分割标签输出的文件名 |
“labels.txt” |
|
split_train_file_name_ph5 |
string |
必填 |
分割训练文件名 |
“train.txt” |
|
split_eval_file_name_ph6 |
string |
必填 |
分割验证文件名 |
“eval.txt” |
|
ocr_json_sub_dir_ph7 |
string |
必填 |
标注json文件子目录 |
“raw_image/2000_type1” |
|
ocr_target_labels_ph8 |
number |
必填 |
分割标签中哪些是OCR需要处理的标签 |
“{"客户":1,"读数":2,"id":3}” |
|
ocr_output_train_sub_dir_ph9 |
string |
必填 |
OCR训练集 输出子目录 |
“label_image/2000_type1/train” |
|
ocr_output_eval_sub_dir_ph10 |
string |
必填 |
OCR验证集输出子目录 |
label_image/2000_type1/eval” |
|
split_ratio_ph11 |
float |
必填 |
数据切分比例 |
0.8 |
|
元素分割模型训练 |
seg_labels_file_name_ph4 |
string |
必填 |
分割标签输出的文件名 |
“labels.txt” |
split_train_file_name_ph5 |
string |
必填 |
分割训练文件名 |
“train.txt” |
|
split_eval_file_name_ph6 |
string |
必填 |
分割验证文件名 |
“eval.txt” |
|
batch_size_ph12 |
int |
必填 |
批处理并行训练参数,与显存大小有关 |
6 |
|
epochs_ph13 |
int |
必填 |
训练的迭代次数 |
200 |
|
num_classes_ph14 |
int |
必填 |
训练类别数 |
6 |
|
img_dir_ph15 |
string |
必填 |
训练的原始图像子路径 |
“raw_image/2000_type1” |
|
ann_dir_ph16 |
string |
必填 |
训练的mask标签图像子路径 |
label_mask/2000_type1 |
|
正反数据集创建 |
创建或复用数据集名称 |
string |
必填 |
创建正反数据集名称。 |
空 |
正反数据集标注 |
Label_Task_Name |
string |
必填 |
创建正反标注任务名称 |
空 |
release_dataset |
train_evaluate_sample_ratio |
float |
必填 |
正反模型训练训练验证集切分比例 |
0.9 |
正反分类模型训练 |
batch_size_ph17 |
int |
必填 |
批处理并行训练参数,与显存大小有关 |
128 |
epochs_ph18 |
int |
必填 |
训练的迭代次数 |
60 |
|
num_classes_ph23 |
int |
必填 |
类别数,必须为2,暂不可修改 |
2 |
|
OCR算法训练 |
batch_size_ph20 |
int |
必填 |
批处理并行训练参数,与显存大小有关 |
8 |
epochs_ph21 |
int |
必填 |
训练的迭代次数 |
60 |
|
flip_correction_label_name_ph238 |
string |
必填 |
此种标注的标签,会在ocr训练时翻转180度矫正 |
反 |
|
import_dataset_path_ph239 |
string |
选填 |
选择填入经过manifest文件导入的原始类别为反的路径,会将此目下图片进行翻转矫正 |
空 |
|
是否进行模型部署 |
deploy_service_cond_cond_ph_ph28 |
string |
必填 |
打开模型部署开关:Workflow会自动运行“创建模型”节点,不会运行“智能预标注”节点。 关闭模型部署开关:Workflow仅会运行至“智能预标注”节点,您需要手动运行“创建模型”节点。 |
关闭 |
创建模型 |
model_step_input |
string |
必填 |
选择你的基础镜像 |
空 |
智能预标注 |
data_url |
string |
必填 |
选择从AI Gallery下载水表识别模型分割数据的OBS目录“test_imgs” |
空 |
seg_num_classes_ph25 |
int |
必填 |
分割数据中的类数 |
6 |
|
flip_num_classes_ph26 |
int |
必填 |
翻转数据中的类数 |
2 |
|
ocr_target_labels_ph27 |
string |
必填 |
需要分割到OCR算法训练中的Label要素 |
“{"客户":1,"读数":2,"id":3}” |
|
filter_labels_ph28 |
string |
必填 |
选择的类别,将使用最大连通区域优化过滤其他区域 |
“{"读数": 2, "二维码": 4, "条形码": 5}” |
|
filter_width_ph29 |
string |
必填 |
连通区域过滤宽度 |
10 |
|
filter_height_ph30 |
string |
必填 |
连通区域过滤高度 |
10 |
|
filter_area_ph31 |
string |
必填 |
连通区域过滤面积 |
500 |
- 准备数据
从AI Gallery下载水表识别模型分割数据。
本示例使用AI Gallery中已有的数据集,您可以直接下载使用。
a. 打开水表识别 - 分割模型开源转换数据集页面,单击“下载”。
图2 下载数据b.在“下载详情”页面,配置以下参数。
“目标区域”:选择“华北-北京四”。
“目标位置”:在“请选择对象存储(OBS)路径”对话框中,选择准备工作中已创建的OBS桶,单击“创建文件夹”,创建一个命名为“segmentation”的文件夹,此处的文件夹名称““segmentation””仅为举例,您可以自定义文件夹名称。
图3 下载详情c.单击“确定”,开始下载数据集至目标位置。
系统页面将自动跳转至“我的数据”页面,在“我的下载”页签下,可查看对应数据集的下载进度,数据集下载需要几分钟到十几分钟时间,请耐心等待。
图4 下载进度2.(可选)使用自有分割数据。
如果您想使用自己的数据集,直接将数据上传至OBS文件夹中。具体操作,请参见上传文件。
- 订阅Workflow
1. 打开Workflow 水表识别工作流页面,单击“订阅”(注意:如需使用,请到立即咨询录入信息联系开通白名单)。
图5 订阅workflow
2.订阅完成后,单击“已订阅”旁的“运行”。
3.在弹出的“从AI Gallery导入工作流”对话框中配置参数。
“资产版本”:选择最新版本。
“云服务区域”:“华北-北京四”。
确保导入页面URL(“https://console.huaweicloud.com/modelarts/?region=cn-north-4#/ai-workflow/subscription/6fc22001-c778-46a7-99f9-154ebb7a9579”)中的region取值为cn-north-4,如果为其他区域,请手动修改为cn-north-4,刷新页面后再进行导入。
图6 导入Workflow4.单击“导入”。
页面自动跳转至ModelArts管理控制台Workflow运行总览页面。
- 配置Workflow
1.登录ModelArts管理控制台,在控制台顶部区域下拉框中,选择“华北-北京四”。
图7 进入Workflow2.在左侧导航栏,选择“Workflow”。
3.在Workflow列表中,单击Workflow所在行操作列的“配置”。
Workflow配置中各个节点的详细配置参数信息,请参见上表3-1 参数说明
图8 配置Workflow4.完成以上节点参数配置后,在Workflow页面右上角单击“保存配置”。
图9 保存配置 - 启动Workflow
1.在Workflow页面右上角单击“启动”,自动跳转至工作流运行总览页面。
图10 启动workflow2.工作流开始从切割元素节点运行,您可以在运行状态区域,查看节点的运行状态,节点运行成功后自动运行下一个训练节点
3.当工作流运行至正反数据集标注节点时,需要手工对正反数据集进行数据标注,每个正反标签至少标注5张图片。您可以单击“运行状况”区域的“详情”,跳转至数据标注页面,具体操作请参见图片标注。
图11 标注正反数据4.图片标注完成后,返回至工作流运行页面,单击“继续运行”,工作流自动运行至下一个训练节点。
5.部署服务的配置要在所有节点运行完成后,才能进行配置。“创建模型”节点运行成功后,单击“部署服务”节点,在部署服务区域进行参数配置。
选择模型版本:选择模型对应的版本
节点规格:选择“T4-GPU卡”
分流:设置当前AI盈余公版流量占比,服务调用请求根据比例分配到当前版本上。
计算节点个数:设置当前AI版本应用的实例个数。
环境变量:您可以根据业务需求增加环境变量
参考配置图如下:
图12 模型部署 - 模型评估
节点训练完成之后,可以单击对应的训练节点,单击节点详情,查看对应的训练日志。您可
以根据模型评估指标情况,在Workflow配置中修改模型节点参数,重新启动Workflow进
行模型部署
1.分割模型评估指标
a) “class”: 类别。
b) “IOU”: 交并比。
c) “ACC”: 精准率。
d) “aACC”: 总体的精准率。
e) “mIOU”: 各个类别平均的交并比。
f) “mAcc”: 各个类别平均精准率。
图13 分割模型指标2.翻转模型评估指标
a) “acc”: 精准率。
图14 翻转模型评估指标3.识别模型评估指标
a) “word_acc”: 整个单词的精准率。
b) “word_acc_ignore_case”: 忽略大小写后整个单词的精准率。
c) “woed_acc_ignore_case_symbol”: 忽略大小写,空格等符号之后整个单词的精准率。
d) “char_recall”: 单个字符的准确率。
e) “char_precision”: 单个字符的准确率。
f) “1-N.E.D”: 字符的Levenshtein 距离,距离越小,值越大,效果越好。
图15 识别模型评估指标