开放能力
开发平台
行业应用
生态合作
开发与教学
资讯 社区 控制台
技术能力
语音技术
图像技术
文字识别
人脸与人体识别
视频技术
AR与VR
自然语言处理
知识图谱
数据智能
场景方案
部署方案
行业应用
智能教育
智能医疗
智能零售
智能工业
企业服务
智能政务
智能农业
信息服务
智能园区
智能硬件
BML 全功能AI开发平台

    创建自动搜索作业

    创建自动搜索作业

    1.前提条件
    2.新建作业
    3.使用自动搜索作业训练模型
    3.1 基本信息
    3.2 算法配置
    3.3 数据集配置
    3.4 自动搜索配置
    3.5 资源配置
    3.6 查看搜索结果及可视化
    4.发布模型

    前提条件

    1. 自定义作业需要依赖于BOS对象存储读取输入文件,创建自定义作业之前需要保证您已经开通了BOS对象存储的服务。
    2. 授权自定义作业读写您的BOS对象存储,以顺利进行自定义作业的配置。

    image.png

    1. 在BOS中存储创建Bucket,并且存储用于训练的代码文件和数据集,创建一个空文件夹用于存储代码的输出文件。

    新建作业

    1. 在导航栏选择『自定义作业-自动搜索作业』,进入自动搜索作业的列表页。
    2. 点击『新建作业』,进入配置自动搜索作业流程

    image.png

    使用自动搜索作业训练模型

    自动搜索作业提供了多种开源框架、搜索算法以及优质的训练资源。您可以上传代码文件,数据集到BOS对象存储,通过自动搜索作业完成训练后,平台提供了每组超参数组合的参数值及其对应的模型评估指标、训练结果会输出到BOS中的指定输出目录,同时您也可以通过链接进入可视化界面查看具体搜索结果。

    基本信息

    填写作业名称和描述

    image.png

    算法配置

    image.png

    1. 选择AI框架:选择训练代码文件使用的算法框架,目前BML支持Paddle,TensorFlow(1和2),Pytorch,Sklearn,XGBoost五种主流算法框架。

    2.选择代码文件:从BOS对象存储中选取代码文件,完成代码录入。单机文件夹符号,从弹窗中选择bucket及文件夹。双击bucket或者单击『>』图标,即可进入下一级。

    image.png

    3.代码文件要求如下:

    • 选取对象可以是一个文件或者一个文件夹。
    • 所选代码文件必须与所选算法框架对应,所选路径必须包含适配自动搜索作业代码编写规范的代码文件,查看代码文件编写规范(链接到代码文件编写规范)。

      4.选择代码文件及启动文件:

    • 当代码文件项选择一个单独文件时,启动命令即为该文件,自动填充启动命令。
    • 当代码文件项选择的是一个文件夹时,启动命令为启动文件名称,如train.py,用户需要手动填写。

    数据集配置

    自动搜索作业数据集配置方式是从BOS中选取数据集。在弹出的对话框中选择数据集对应的bucket和文件夹。注:选择的数据集路径与代码训练时传入代码的训练集、测试集路径一致。为保证训练效率,最好将数据存放在压缩包内。

    image.png

    自动搜索配置

    image.png

    1. 配置方式:
    • 手动配置:用户需要在平台上手动选择搜索策略以及配置对应的参数。
    • yaml文件:用户可以通过yaml文件来设置自动搜索配置,文件上传方式分为本地上传与从BOS中选取两种,查看yaml文件编写规范(链接到yaml文件编写规范)

    image.png

    1. 搜索策略:

    自动搜索作业目前提供了5种搜索算法,见搜索算法简介。

    1. 参数配置:
    • 选择搜索策略后,参数配置表格会提供对应的参数进行选择,其中关于搜索算法的参数说明见搜索算法简介。
    • 非搜索参数的说明如下:

      • 数据采样比例:超参搜索需要进行多个模型的训练,因此为了提高效率,减少总的搜索耗时,可以设置训练集的数据采样比例。
      • 评价指标:用户在代码中可以自定义评价指标的计算方式,只需要在平台参数配置表格中填写评价指标的名称、优化方向(最大值/最小值)以及早停指标即可。下图是一个填写实例,评价指标:acc,最大值优化,当搜索实验的某个训练结果,acc的数值达到100%时,终止整个自动搜索任务。 image.png
      • 搜索参数:用户需要将待搜索的超参数填入显示框内,搜索参数的名称需要与代码中的名称保持严格一致!如搜索任务中有多个参数需要搜索,点击『+添加参数』即可,如下为搜索参数的参数类型以及对应的取值范围说明:

        • 随机整数:参数范围中填写搜索参数的上下界,算法在其中随机取整。
        • 离散值:参数范围中填写搜索参数的所有可能取值,以英文逗号隔开,算法会随机从中取值。
        • 平均采样:参数范围中填写搜索参数的上下界,算法在其中随机取值,包括整数和小数。
        • 对数平均采样:参数范围中填写搜索参数的上下界,算法在其对数尺度上随机取值,该参数类型适用于学习率等参数范围有尺度差异的超参数。
          image.png

    资源配置

    BML提供CPU和GPU两类训练机型。

    CPU机型供算法框架为sklearn,XGBoost时使用,用于机器学习训练:

    机型 规格说明
    CPU 4核 CPU 4核16GB内存
    CPU 16核 CPU 16核64GB内存
    CPU 64核 CPU 64核256GB内存

    GPU机型供算法框架为Paddle,TensorFlow,Pytorch时使用,用于深度学习训练:

    机型 规格说明
    GPU V100 TeslaGPU_V100_16G显存单卡_12核CPU_56G内存
    GPU P40 TeslaGPU_P40_24G显存单卡_12核CPU_40G内存
    GPU P4 TeslaGPU_P4_8G显存单卡_12核CPU_40G内存

    温馨提示: 未开通付费的情况下,可选的运行环境为CPU 4核,GPU P4, GPU P40,我们为每位用户提供了CPU 4核环境下100(小时×节点),GPU P4运行环境下100(小时×节点)和GPU P40运行环境下50(小时×节点)的免费算力支持,超出后请您付费购买。详见页面提示的价格说明。

    查看搜索结果及可视化

    查看搜索结果

    自动搜索作业运行完成后,在任务列表页中点击查看进入任务详情界面(任务运行时,也可点击查看实时信息)

    image.png

    点击搜索结果,表格中会显示所有试验的详细信息,如评价指标的值、搜索耗时,试验状态等;点击日志,可以查看每个试验的运行日志。

    image.png

    点击详情可以查看每个试验的超参数取值。

    image.png

    查看可视化视图

    可视化界面目前仅保存了所有试验中指标最好的5个结果。

    1. 点击查看可视化视图,可以进入飞桨VisualDL可视化界面。
    2. 点击标题栏的超参可视化,自动搜索作业一共提供了三种图:
    • 表格视图:搜索结果以表格的形式呈现。 image.png
    • 平行坐标图

      • 图中右方为柱状热力图,当在右上方选择一个参数时,平行坐标图便会以该参数作为基准结果,参数组合的折线颜色便会依据该组合在选择参数上的取值而改变。
      • 自动搜索作业中,选择评价指标(图中为acc)作为基准结果,然后观察各个超参数对其的影响大小。若某个超参数上相同颜色的折线较为集中,不同颜色有一定的距离,则说明该参数对于结果影响很大;而如果某个超参数上线条颜色混乱,则较大可能该参数对于结果的影响很小。 image.png
    • 散点图:呈现超参数与指标之间的分布关系。 image.png

    发布模型

    自动搜索作业训练完成后支持将最好的5个模型直接发布到模型仓库。

    1. 模型列表中,训练完成的模型支持『发布』操作,点击『发布』进入发布界面。 image.png
    2. 在发布界面,完成相关配置,如下所示:
    • 填写下图所示基本信息。『模型类型』和『版本』由系统自动生成,不支持修改。重新发布时,『模型名称和『模型描述』会自动填充,无需再次填写。 image.png
    • 根据算法框架的不同,您还需要在发布界面填写响应的额外配置项信息。
    算法框架 额外配置项
    PaddlePaddle
    TensorFlow 无。说明:自动搜索作业支持发布pb格式的模型文件到模型仓库,因此代码中需要保存pb格式的模型
    Pytorch 从BOS中选择源代码并输入源代码的主文件名。说明:选取的代码为启动服务的推理代码,具体说明点击这里(链接到pytorch代码示例中的推理代码部分)
    Sklearn/XGBoost 模型文件格式:支持发布pickle格式或joblib格式模型到模型仓库。模型文件:选择一个搜索结果后,下方模型文件会自动填充对应试验的路径,用户只需要在对应路径下选中保存的模型即可。说明:其他框架在保存模型时,模型名称是固定的,而机器学习框架中通常是用户指定,因此在发布模型时需要手动选择
    上一篇
    自动搜索作业简介
    下一篇
    自动搜索作业代码编写规范