您当前的位置: 首页 >  深度学习

庄小焱

暂无认证

  • 1浏览

    0关注

    805博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

深度学习平台——PaddleCloud简介

庄小焱 发布时间:2021-03-07 13:58:32 ,浏览量:1

摘要

PaddleCloud能够帮助您一键发起深度学习任务,为您提供免费底层计算资源、或提供快速打通云上计算资源通道,支持您快速发起单机/分布式Paddle框架训练任务,致力于推动AI应用更广泛地落地。

怎么样使用 免费使用

目前的免费策略,每位用户每天任务总运行时长不得超过100分钟,同时运行中的任务不能超过2个,每个任务运行时间限定不超过30分钟(将根据用户使用情况灵活调整)

使用步骤:

1)下载PaddleCloud命令行工具(目前仅支持命令行工具)

2)填入企业或个人邮箱,申请token,等待邮件通知

3)将邮件中的token填入客户端配置文件

4)开始提交训练任务

付费使用

支持使用百度云付费GPU(付费BCC GPU虚拟机)按需跑训练任务,仅在任务运行过程中收取BCC GPU虚拟机费用,任务运行完自动结束计费

使用步骤:

1)注册百度云账号并实名认证,在账号中提前充入部分资金

2)下载PaddleCloud命令行工具(目前仅支持命令行工具)

3)配置百度云账号ak/sk

4)开始提交训练任务

快速开始 准备环境
  • 安装python3环境和依赖库

1)自行安装Python3和pip3(Python3包安装和管理工具)

2)安装Python依赖库

pip3 install requests
pip3 install rsa
  • 下载命令行工具

PaddleCloud当前只支持命令行方式使用,暂时还不支持web方式

linux & mac

bash -c "$(curl -X GET http://ppoc-filecenter.bj.bcebos.com/install_paddlecloud_stable.sh)"; source ~/.bashrc

Windows

暂未开放,敬请期待

开始使用

免费使用

目前的免费策略,每位用户每天任务总运行时长不得超过100分钟,同时运行中的任务不能超过2个,每个任务运行时间限定不超过30分钟(将根据用户使用情况灵活调整)

填入企业或个人邮箱,申请token,等待邮件通知(注意:有些邮件供应商可能会屏蔽该邮件或将邮件判别为垃圾邮件)

paddlecloud gen_token --email=
例如:paddlecloud gen_token --email=张三@163.com

将邮件中的token填入命令行工具的配置文件

登陆自己的邮箱,查收Baidu PaddleCloud邮件,将token对应的ak/sk依次填入命令行中

paddlecloud gen_token --email=
create_token...
Paste your ak here:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Paste your sk here:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
create_token done

也可以将token对应的ak/sk复制并粘贴到~/bin/paddlecloud/conf/client.conf文件中(先找到该文件并用编辑器打开后在粘贴)

// 注:如下内容仅为示例,以自己收到的邮件中的内容为准
[main]
debug = 0
userid: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ak: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
sk: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

付费使用

百度云BCC计费说明,PaddleCloud自动性价比较好的套餐

  • 百度云实名认证并开通BCC权限,在账号中提前充入部分资金

    按照百度云BCC文档完成 BCC注册及实名认证

    注:仅需完成注册及实名认证即可,无需手动购买BCC,提交GPU训练任务时,PaddleCloud会自动帮您购买BCC GPU/CPU计算资源,并按照BCC的收费标准进行计费,PaddleCloud本身不产生额外费用

    • 注册
    • 实名认证
配置百度云账号AK/SK

[bcc]
ak: // 私人的百度云虚拟化计算资源Access Key
sk: // 私人的百度云虚拟化计算资源Secret Key

[bos]:
ak: // 私人的百度云虚拟化存储资源Access Key
sk: // 私人的百度云虚拟化存储资源Secret Key

注意:此处的两套AK/SK可以保持一致, 使用付费资源时,需要在命令行中加入--public_bcc=1参数

    先按照文档 获取百度云AK/SK(如果已拿到百度云AK/SK,可以跳过此步骤;此处的百度云AK/SK区别于免费的token)
    将百度云AK/SK填入命令行工具的配置文件 打开安装目录在~/bin/paddlecloud/client.conf文件,将百度云AK/SK信息填入到该文件中
一键开始GPU训练
  • 提交训练任务(以plsc任务为例,这里将PLSC内置到了命令行工具里,了解详情可参考:大规模分类示例)
paddlecloud plsc
  • 查看任务详情
paddlecloud query_job --job_id=job-b4b917843790cc7964ca49d776457004
  • 下载任务目录
paddlecloud get_files --job_id=job-b4b917843790cc7964ca49d776457004 --download=1
fit-a-line(房价预测)示例

示例代码目录结构

.
├── job: 示例任务父目录,用paddlecloud命令行提交任务时配置--file=./job,可将该目录提交到计算集群上
│   ├── data: data目录用来存放训练和测试数据集的本地目录,提交训练任务后,该目录会被整体上传到计算集群中
│   │   ├── train_data: 训练数据集的目录,可将训练数据放到该目录下,提交任务时会将该目录上传(或者挂载)到集群的计算节点上
│   │   ├── test_data: 测试数据集的目录,可将测试数据放到该目录下,提交任务时会将该目录上传(或者挂载)到集群的计算节点上
│   ├── run.sh: 训练任务的启动脚本,主要用来调起任务的python脚本,例如:python train.py,该脚本是在计算集群上被调用
│   ├── train.py: 具体的算法代码,此处的是房价预测的paddle组网代码
├── submit.sh: 提交任务的脚本,该脚本会调用paddlecloud命令行工具,将训练数据data和训练代码train.py、运行脚本run.sh提交到计算集群中,需要在自己的机器上执行,并且需要先下载并安装paddlecloud命令行工具,该脚本仅支持linux和mac上使用

说明

1)data目录用来存放训练和测试数据集的本地目录,提交训练任务后,该目录会被整体上传到计算集群中;该目录名称可以按需修改为其他名称,在训练代码中使用时需要相应修改。

2)train.py是训练相关的代码,run.sh是任务运行脚本,提交训练任务后,这些脚本都将被上传到集群中,并且在集群中运行

3)train_data和test_data是data的子目录,用来区分训练数据集和测试数据集,作为data的子目录,提交训练任务后,该目录会被整体上传到计算集群中。

在计算集群上获取该路径的方法是:

LOCAL_DATA_PATH = os.getenv("LOCAL_MOUNT_PATH") # LOCAL_MOUNT_PATH内置的环境变量,直接获取该值即可
cluster_train_dir = LOCAL_DATA_PATH + "/data/train_data" # 计算节点上训练数据的路径
使用说明 1、安装paddlecloud命令行工具
  • 安装python3环境和依赖库

    1)自行安装Python3和pip3(Python3包安装和管理工具)

    2)安装Python依赖库

    pip3 install requests
    pip3 install rsa
  • 下载并安装命令行工具

    PaddleCloud当前只支持命令行方式使用,暂时还不支持web方式

    • linux & mac
    bash -c "$(curl -X GET http://ppoc-filecenter.bj.bcebos.com/install_paddlecloud_stable.sh)"; source ~/.bashrc
    
    • Windows

    暂未开放,敬请期待

2、申请&配置token
  • 免费使用

    目前的免费策略,每位用户每天任务总运行时长不得超过100分钟,同时运行中的任务不能超过2个,每个任务运行时间限定不超过30分钟(将根据用户使用情况灵活调整)

    • 填入企业或个人邮箱,申请token,等待邮件通知(注意:有些邮件供应商可能会屏蔽该邮件或将邮件判别为垃圾邮件)

      paddlecloud gen_token --email=
      例如:paddlecloud gen_token --email=张三@163.com
      
    • 将邮件中的token填入命令行工具的配置文件

      登陆自己的邮箱,查收Baidu PaddleCloud邮件,将token对应的ak/sk依次填入命令行中

      paddlecloud gen_token --email=
      create_token...
      Paste your ak here:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
      Paste your sk here:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
      create_token done
      

      也可以将token对应的ak/sk复制并粘贴到~/bin/paddlecloud/conf/client.conf文件中(先找到该文件并用编辑器打开后在粘贴)

      // 注:如下内容仅为示例,以自己收到的邮件中的内容为准
      [main]
      debug = 0
      userid: xxx
      ak: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
      sk: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  • 付费使用

    百度云BCC计费说明,PaddleCloud自动性价比较好的套餐

    • 百度云实名认证并开通BCC权限,在账号中提前充入部分资金

      按照百度云BCC文档完成 BCC注册及实名认证

      • 注册
      • 实名认证

      注:仅需完成注册及实名认证即可,无需手动购买BCC,提交GPU训练任务时,PaddleCloud会自动帮您购买BCC GPU/CPU计算资源,并按照BCC的收费标准进行计费,PaddleCloud本身不产生额外费用

    • 配置百度云账号AK/SK

      • 先按照文档 获取百度云AK/SK(如果已拿到百度云AK/SK,可以跳过此步骤;此处的百度云AK/SK区别于免费的token)
      • 将百度云AK/SK填入命令行工具的配置文件 打开安装目录在~/bin/paddlecloud/client.conf文件,将百度云AK/SK信息填入到该文件中
      [bcc]
      ak: // 私人的百度云虚拟化计算资源Access Key
      sk: // 私人的百度云虚拟化计算资源Secret Key
      
      [bos]:
      ak: // 私人的百度云虚拟化存储资源Access Key
      sk: // 私人的百度云虚拟化存储资源Secret Key

      注意:此处的两套AK/SK可以保持一致, 使用付费资源时,需要在命令行中加入--public_bcc=1参数

3、提交任务

直接执行如下命令即可将任务提交到计算集群上运行

// linux中使用该命令
sh submit.sh

也可以将submit.sh中的内容拿出来单独执行,例如:

paddlecloud submit_job --files=job --start_cmd="sh run.sh"
// --files用来指定本地代码和数据的目录,本地的job目录会被整体上传到计算集群中
// --start_cmd指定任务的启动命令,该命令会在计算集群上被执行
4. 查看任务详情
$ paddlecloud query_job --job_id=job-d22c1fffb768d9b0748def85b158f303

bos_url: paddlecloud-public.bj.bcebos.com/dd9d92e3dad72633c5053c718203204d/job
create_time: 2020-05-18 11:24:53
error_msg:
finish_time: 2020-05-18 11:26:14
instance_count: 1
instance_ids_list:
job_id: job-d22c1fffb768d9b0748def85b158f303
job_name: tmp_job
job_status: success
job_type: gpu
kill_flag: 0
public_bcc: 1
public_bos: 1
queue_reason:
start_cmd: sh run.sh
start_time: 2020-05-18 11:25:12
wall_time: 00:30:00
5. 查看作业目录
$ paddlecloud get_files --job_id=job-d22c1fffb768d9b0748def85b158f303

2285758331454547565081a3eb37e538/job/output/job-d22c1fffb768d9b0748def85b158f303/       0       2020-05-19T06:39:03Z
2285758331454547565081a3eb37e538/job/output/job-d22c1fffb768d9b0748def85b158f303/log/trainer-0.log      9649    2020-05-19T06:39:53Z
2285758331454547565081a3eb37e538/job/output/job-d22c1fffb768d9b0748def85b158f303/rank-0/__model__       5322    2020-05-19T06:39:47Z
2285758331454547565081a3eb37e538/job/output/job-d22c1fffb768d9b0748def85b158f303/rank-0/fc_0.b_0        28      2020-05-19T06:39:47Z
2285758331454547565081a3eb37e538/job/output/job-d22c1fffb768d9b0748def85b158f303/rank-0/fc_0.w_0        78      2020-05-19T06:39:47Z
....
6. 查看作业日志
  • 下载作业日志
$ paddlecloud get_files --job_id=job-d22c1fffb768d9b0748def85b158f303 --download=1
  • 查看日志列表
$ ll output/2285758331454547565081a3eb37e538/job/output/job-d22c1fffb768d9b0748def85b158f303/log

drwxrwxr-x 3 work work 4096 May 18 11:29 ./
drwxrwxr-x 3 work work 4096 May 18 11:29 ../
drwxrwxr-x 2 work work 4096 May 18 11:29 trainer-0.log
  • 查看日志
$ cat output/2285758331454547565081a3eb37e538/job/output/job-d22c1fffb768d9b0748def85b158f303/log/trainer-0.log
博文参考

关注
打赏
1657692713
查看更多评论
立即登录/注册

微信扫码登录

0.0390s