所有文档

          EasyDL定制AI训练平台

          EasyDL经典版-图像分类快速开始

          目录

          1. 创建模型
          2. 数据上传
          3. 模型训练
          4. 模型校验
          5. 发布模型
          6. 模型调用
          7. 模型迭代
          8. 云服务数据回流
          9. 公有云API付费说明

          创建模型

          1. 进入EasyDL官方平台 选择【快速开始】

          image.png

          在经典版模型下,选择【图像分类】,点击【进入操作台】

          image.png

          1. 在模型列表下点击【创建模型】
            image.png

            填写模型信息后,点击【下一步】

          image.png

          1. 在模型列表下可看到所建模型信息,若平台已经上传好数据集,则点击【训练】跳转至模型训练配置界面,即模型训练;若无数据集,点击【创建】,在数据中心创建数据集,即数据上传
            image.png

          数据上传

          上传未标注数据集

          本地导入-上传图片

          1. 创建数据集时,填写数据集名称,选择数据集状态及导入方式,点击 【上传图片】

          image.png

          注意:上传图片时,一定注意格式要求!

          image.png

          1. 选择好图片后,点击【开始上传】

          image.png

          1. 上传成功后点击【确认并返回】

          image.png

          1. 在数据集列表下则可看到所建数据集,图片上传到平台,需要一段时间,等待片刻刷新页面后,待状态由【处理中】转为【正常】即为上传成功。

          image.png

          本地导入-上传压缩包

          1. 选择以压缩包的形式上传未标注数据集,点击【上传压缩包】

          image.png

          注意:上传压缩包,有相应格式要求,建议下载示例压缩包确认格式!

          image.png

          1. 上传好压缩包后,点击【确认并返回】

          image.png

          1. 在数据集列表下则可看到所建数据集,图片上传到平台,需要一段时间,等待片刻刷新页面后,待状态由【处理中】转为【正常】即为上传成功。

          image.png

          本地导入-API导入

          适用场景:线下有大量数据集,分包上传比较麻烦

          具体介绍可在经典版图像分类数据集管理API 文档中查看

          请求示例代码可参考:

          package API;
          
          
          
          import com.baidu.ai.aip.utils.HttpUtil;
          import com.baidu.ai.aip.utils.GsonUtils; import java.util.*;
          
          /**
          * easydl
          */
          public class dataset_create {
          
          /**
          *重要提示代码中所需工具类
          *FileUtil,Base64Util,HttpUtil,GsonUtils 请从
          *https://ai.baidu.com/file/658A35ABAB2D404FBF903F64D47C1F72
          *https://ai.baidu.com/file/C8D81F3301E24D2892968F09AE1AD6E2
          *https://ai.baidu.com/file/544D677F5D4E4F17B4122FBD60DB82B3
          *https://ai.baidu.com/file/470B3ACCA3FE43788B5A963BF0B625F3
          *下载
          */
          public static String easydlObjectDetection() {
          // 请求 url
          String url = "https://aip.baidubce.com/rpc/2.0/easydl/dataset/create"; try {
          Map<String, Object> map = new HashMap<>(); map.put("type","IMAGE_CLASSIFICATION");
          map.put("dataset_name","test_dataset_name"); String param = GsonUtils.toJson(map);
          
          // 注意这里仅为了简化编码每一次请求都去获取 access_token,线上环境 access_token 有过期时间, 客户端可自行缓存,过期后重新获取。
          String accessToken =access_token.getAuth();
          
          String result = HttpUtil.post(url, accessToken, "application/json", param); System.out.println(result);
          return result;
          } catch (Exception e) {
          e.printStackTrace();
          }
          return null;
          }
          
          public static void main(String[] args) {
          dataset_create.easydlObjectDetection();
          }
          }

          已有数据集导入-导入线上已有数据集

          1. 导入线上已有数据集,可供选择的是经典版任一模型下的数据集,根据需求选择导入全部数据(不带标注)或导入未标注数据,选择完成后, 点击【确认并返回】

          image.png

          1. 等待几分钟后,刷新页面,即可看到数据上传成功

          image.png

          上传已标注数据集

          本地导入-上传压缩包

          (一) 以文件夹命名分类

          1. 创建数据集时,填写数据集名称,选择数据集状态及导入方式,点击【上传压缩包】

          image.png

          注意:压缩包里的文件夹即为标签名,只能包含数字/字母/下划线

          image.png

          1. 选择好压缩包进行上传,点击【确认并返回】

          image.png

          1. 等待几分钟后,刷新页面,即可上传成功,此时数据集的状态都是标注完成的, 可以点击【查看】进行浏览

          image.png

          (二) 用json文件标记分类

          1. 制作json文件的Python示例代码:

            #coding:utf-8 
            import os
            import json
            path_dir = '【数据集路径】' for file in os.listdir(path_dir):
            file_name = file.split('.')[0]
            dict_in = {"name": "【类别名称】"} dict = {'labels': [dict_in]}
            file_name1 = file_name + ".json"
            path_result_dir = '【json 存储路径】' + file_name1 with open(path_result_dir, 'w')as f:
            f.write(json.dumps(dict, ensure_ascii=False))

            按类别制作json文件后,将所有图片和所对应的json文件按照格式要求放入一个文件夹并压缩,示例如下:

          image.png

          1. 创建数据集时,填写数据集名称,选择数据集状态及导入方式,点击【上传压缩包】

          image.png

          注意:上传带json文件的压缩包时,注意格式要求,要与示例压缩包格式一致

          image.png

          1. 选择好压缩包进行上传,点击【确认并返回】

          image.png

          1. 上传成功后,在数据集列表则可看到刚才所上传数据集

          image.png

          本地导入-API导入

          请跳转至本地导入-API导入,参考文档说明

          已有数据集导入-导入线上已有数据集

          1. 选择导入已有数据集,此时可供选择的数据集均为经典版图像分类模型下的现有数据集。点击【确认并返回】,即可上传成功

          image.png

          1. 导入成功后,在数据集列表下,可查看所上传数据集

          image.png

          标注数据集

          单图标注

          1. 找到未标注的数据集,点击【标注】,跳转至标注页面

          image.png

          1. 在右侧标签栏下,创建数据集标签,点击【添加/搜索标签】

            注意:标签名仅支持中文和数字,长度小于64位

          2. 在当前图片下选择右侧标签栏内的某一类别,代表为图片打上相应的标签,点击【保存当前图片】或直接点击下一张图标,在保存标注结果后自动跳转至下一张。标注完所有图片后,该数据集便可用于后续模型训练

          image.png

          批量标注

          1. 在数据集列表下,找到需要标注的数据集,点击【标注】

          image.png

          1. 在右侧标签栏下,点击【添加/搜索标签】,创建数据集标签

          image.png

          1. 返回数据集列表下,找到此数据集点击【查看】

          image.png

          点击【未标注图片】, 点击右侧【批量操作】

          image.png

          1. 选择数据集下同类别图片,点击右上方【移动】

          image.png

          1. 选择将图片移动到指定数据集的指定分类下,点击【提交】,即完成批量打标签的任务

          image.png

          模型训练

          1. 数据集准备好的前提下,点击【训练】,进入模型训练配置阶段

          image.png

          1. 根据需求选择模型各项配置后,添加训练数据集,点击【开始训练】

          image.png

          1. 在模型列表下,可以看到处于训练状态的模型,将鼠标放置感叹号图标处,即可查看训练进度,同时若勾选短信提醒,在模型训练完成后会以短信的形式通知

          image.png

          模型校验

          线上校验

          1. 模型训练完成后,可在模型列表下,点击【校验】

          image.png

          1. 点击【启动模型校验服务】,需等待几分钟

          image.png

          1. 点击【添加图片】,进行模型校验

          image.png

          在此处可以点击【申请上线】,进行模型发布,跳转到模型发布

          体验H5

          温馨提示:H5校验是在发布模型后才提供的功能,同时体验H5会耗费接口服务的调用量,免费调用限额累计1000次

          根据模型类型不同,免费额度不同。具体说明可参考经典版公有云API价格说明

          1. 点击【体验H5】

          image.png

          1. 选择所调用模型,点击【继续】

          image.png

          1. 自定义H5样式,填写好信息后,点击【生成H5】

          image.png

          1. 生成二维码,用百度或微信APP扫相应二维码,即可在手机端体验模型效果

          image.png

          模型发布

          1. 模型训练完成后,点击【申请发布】

          image.png

          1. 按要求填写相应信息后,点击【提交申请】

          注:同时可勾选下方【云服务调用数据管理】的服务条款,通过云服务调用数据反馈,可查找公有云服务模型识别错误的数据,纠正结果并将其加入下一次用于训练模型的数据集,实现训练数据的持续丰富和模型效果的持续优化。

          image.png

          1. 页面跳转至模型列表下,可以看到申请状态为【审核中】

          image.png

          1. 待平台审核后此状态变为【审核成功】,服务状态变为【发布中】

          image.png

          1. 等待几分钟,此状态就会变为【已发布】,即发布成功,同时可以体验H5。

          image.png

          模型调用

          1. 在 EasyDL“我的模型”列表页,点击【服务详情】后,会得到接口地址

          image.png

          此接口地址在模型调用代码中会用到。点击【立即使用】

          image.png

          1. 需要登录EasyDL经典版控制台中创建一个应用,点击【创建应用】

          image.png

          填写信息后点击【立即创建】

          image.png

          1. 立即创建后,在应用列表页即可得到 AK SK 密钥

          image.png

          1. 通过使用在线API测试所训练的模型效果

            import sys
            import time
            import socket 
            import json
            import base64
            import requests
            from datetime import datetime 
            
            print(datetime.now())
            domain = "aip.baidubce.com"
            myaddr = socket.getaddrinfo(domain,'https') 
            print(str(domain) + " = " + myaddr[0][4][0])
            
            start = time.time() 
            appid = 'appid'
            client_id = 'AK'
            client_secret = 'SK'
            host = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials'    host += "&client_id=%s&client_secret=%s" % (client_id, client_secret)
            
            session = requests.Session() 
            response = session.get(host)
            access_token = response.json().get("access_token")
            
            request_url = "【模型信息-服务详情-接口地址】" 
            with open('image.jpg', 'rb') as f:	
                image = base64.b64encode(f.read()).decode('UTF8') 
            headers = {
            'Content-Type': 'application/json'
            }
            params = {
            "image": image
            }
            request_url = request_url + "?access_token=" + access_token
            response = session.post(request_url, headers=headers, json=params)
            content = response.content.decode('UTF-8')
            print(json.loads(content)) 
            end = time.time()
            print('耗时时长: %1.2f s'% (end-start))

          模型迭代

          1.模型列表下,找到需要迭代的模型,点击右上方【训练】

          image.png

          2.选择需要迭代的模型名称,本次模型迭代以换用【高性能】算法为例,点击【开始训练】

          image.png

          3.在模型列表下可看到V2版本,点击【历史版本】,可以查看该模型的全部版本信息

          image.png

          image.png

          4.待模型训练完成后,点击【申请发布】

          注意:迭代后的模型仍需重新发布

          image.png

          若选择发布V2版本,则V1版本将会暂停服务,点击【确定】

          image.png

          5.点击【提交申请】

          image.png

          待审核成功后,V2版本模型即为【发布成功】

          image.png

          注意:迭代后的模型进行API调用时,接口地址与之前版本一样,无需在控制台创建新的应用

          6.点击【历史版本】,可看到V1模型已暂停服务,若后续需要用到V1版本模型,可再次点击【申请发布】

          image.png

          image.png

          云服务数据回流

          开通【云服务数据回流】功能后,可查找云服务模型识别错误的数据,纠正结果并将其加入模型迭代的训练集,实现训练数据的持续丰富和模型效果的持续优化

          具体流程如下:

          1. 若模型发布时没有勾选开启云服务数据回流功能,则点击【云服务数据回流】,选择好接口后,勾选接受条款后,点击【开通服务】,即可开通管理云服务调用数据

          image.png

          1. 若模型发布时勾选了开启云服务数据回流功能,则会自动开启【云服务数据回流】,通过选择调用时间、分类,并设置筛选条件,点击【查看筛选结果】查看疑似错误识别的图片

            注意:数据将从开通功能后开始存储,最多存储30天的数据。当天调用的数据暂不支持即时查看,可在第二天查看

          image.png

          1. 选择接口识别错误的图片,点击【重新标注】纠正结果后添加到指定数据集(建议新建数据集),点击【提交】

          image.png

          1. 若选择【立即重新训练】,则页面跳转至训练模型界面

          image.png

          在训练集列表下便可看到含有重新标注图片的数据集,只需增加包含接口数据的数据集,即可提升模型效果

          image.png

          公有云API付费说明

          1. 付费前,请仔细阅读经典版公有云价格说明文档,或在 EasyDL 首页产品定价查看刊例价。
          2. 云服务可以选择开通按「调用量后付费方式」「购买次数包方式」。按量后付费功能,即根据调用次数,自动扣除百度云账号余额。次数包功能,即购买固定调用次数额度。
          3. 购买次数包将自动开通按「调用量后付费方式」,两者同时开通情况下,系统将优先扣除次数包额度,再消耗按量后付费额度。
          4. 在上述价格说明文档顶部,点击进入【EasyDL 经典版控制台】

          image.png

          找到需要调用的接口API,最初模型状态为免费试用,根据模型类型不同,免费额度不同,具体说明可查阅上述文档。

          image.png

          1. 如已开通「按量后付费」或购买「次数包」后,有临时性的QPS高并发要求,可选择在某个时间段内叠加购买QPS,未开通付费的用户无法购买QPS叠加包。

          image.png

          开通按量后付费

          1. 在控制台,选择使用的版本,在公有云服务下,点击【开通】

          image.png

          1. 选择已测试好的模型服务,点击【确认开通】

          image.png

          1. 确认信息后,点击【去支付】,即可开通按量付费服务。

            注意:此服务为后付费服务,将根据使用情况从账户余额中扣除

          image.png

          1. 回到服务列表页面后,可以看到状态已经变为【付费使用】,即系统会按照成功调用次数,自动扣除账户余额。

          image.png

          购买次数包

          1. 在控制台服务列表下,点击「购买次数包」下的【购买】

          image.png

          1. 根据需求选择相应次数包,点击【下一步】

            注意:同规格下,不同模型次数包价钱不一样,具体计费标准请查看次数包价格说明文档

          image.png

          下图以图像分类模型为例:

          image.png

          1. 在弹出的提示框后,点击【确认】

            注意:购买次数包后,平台同时会自动开通「按量后付费」,计费调用优先抵扣次数包额度,额度耗尽自动切换为按量后付费形式

          image.png

          1. 确认订单信息后,点击【去支付】

          image.png

          1. 在支付界面,选择一种支付方式后,点击【确认支付】,即可成功购买次数包

          image.png

          购买QPS叠加包

          温馨提示:已开通按量付费(或购买次数包)后,若您有临时性的QPS高并发要求,可选择在某个时间段内叠加购买QPS,未开通付费的用户无法购买QPS叠加包

          1. 当开通「按量后付费」「购买次数包」前提下,点击QPS下的【购买】

          image.png

          1. 进入QPS购买详情页,按需选择相应的购买方式、购买期限,选择好数量后,点击【添加到购物车】,点击【去结算】

          image.png

          1. 确认好订单信息后,点击【去支付】

          image.png

          1. 选择支付方式后,点击【确认支付】,即可完成QPS叠加包的购买

          image.png

          更多参考

          如对文档说明有疑问或建议,请微信搜索“BaiduEasyDL”添加小助手交流
          备注:文档如使用中遇到报错等问题,请在控制台中通过“工单”联系我们,售后团队为您及时解决问题

          EasyDL官网入口
          EasyDL开发文档
          EasyDL软硬一体方案
          EasyDL经典案例

          上一篇
          平台简介
          下一篇
          经典版-物体检测快速开始