相关文章
编辑区 Code Cell
Code Cell是Notebook的代码编写单元。用户在Code Cell内编写代码(支持Python2、Python3)和shell命令,代码/命令在云端执行,并返回结果到Code Cell.
命令/编辑模式
绿色代表块内容可编辑状态-编辑模式(比如输入代码),蓝色代表块可操作状态-命令模式(比如删除Cell,必须回到蓝色),与linux编辑器vi/vim类似,编辑模式和命令模式之间可以用Esc和Enter来切换。
Linux命令
运行Linux命令的方式是在Linux命令前加一个!
,就可以在块里运行
! pip xxxx
Magic关键字
Magic关键字是可以运行特殊的命令. Magic 命令的前面带有一个或两个百分号(% 或 %%), 分别代表行Magic命令
和Cell Magic命令
. 行Magic命令
仅应用于编写Magic命令时所在的行, 而Cell Magic命令
应用于整个Cell.
侧边栏---文件夹
按照树形结构展示/home/aistudio
路径下的文件夹和文件。可以在该目录下进行如下操作:
/home/aistudio/data
是非持久化目录,请不要将您的文件放到该目录下,重启后,文件将会丢失.版本管理--用于保存项目空间中的重要文件, 以及恢复.--用户最多可以生成5个版本, 并制定不同的版本名称.
注意: 加载版本时, 执行的是全量覆盖操作, 即先清空该项目空间中全部内容, 然后把版本内容复制进去. 如果您当前项目环境中存在A文件, 但历史版本中不含有A文件, 则加载后A文件会消失.
后台任务
由于Notebook有高级版(GPU)环境每周运行总时长限制(70小时/周), 以及Notebook离线运行时长最多2小时, 如果需要突破这两种限制, 可以使用Notebook中的后台任务.
后台任务基于一个版本, 可以将全部版本内容提交至后台的GPU服务器上进行运行, 然后可以将运行后的结果全量返回并再次导入Notebook环境中的一种机制.
后台任务不依赖当前Notebook的硬件环境, 因此无论在普通版(CPU)环境, 还是在高级版(GPU)环境中, 均可以创建并提交.
后台任务运行于后台GPU单卡服务器上, 因此从运行开始即消耗GPU算力卡时长. 同样, 提交该任务需要用户算力卡余额>0.
当任务完成后, 用户可以将任务生成结果导入Notebook空间中, 其中, 如Notebook文件的Code Cell执行后, 返回结果将直接写入Notebook Code Cell下方的输出区.
任务根据其状态, 可以将结果导入Notebook环境中, 或下载到用户本地电脑. 任务可以删除. 同时, 在项目预览页面中, 用户也可以管理已经提交任务, 进行中止, 删除, 或下载运行后的结果.
Limit: 每个任务最大运行时长72小时(不含排队时间). 每个任务最大输出结果20GB. 超过会导致任务失败.
脚本任务项目的任务执行由GPU集群作为支撑, 具有实时高速的并行计算和浮点计算能力, 有效解放深度学习训练中的计算压力, 提高处理效率.用户可以先在Notebook项目中, 利用在线的Notebook功能, 完成代码的编写与调试, 之后在脚本任务项目中运行, 从而提高模型训练速度.
在脚本任务项目详情页中, 用户可以浏览自己创建的项目内容, 编辑项目名称及数据集等信息, 查看集群历史任务信息等
代码编辑:
左侧文件管理和数据集
文件管理
数据集管理
右侧文件预览编辑和提交任务
PaddlePaddle基于集群的分布式训练任务与单机训练任务调用方法不同。基于pserver-trainer架构的的分布式训练任务分为两种角色: parameter server(pserver)和trainer.
在Fluid 中, 用户只需配置单机训练所需要的网络配置, DistributeTranspiler
模块会自动地根据 当前训练节点的角色将用户配置的单机网路配置改写成pserver和trainer需要运行的网络配置:
t = fluid.DistributeTranspiler()
t.transpile(
trainer_id = trainer_id,
pservers = pserver_endpoints,
trainers = trainers)
if PADDLE_TRAINING_ROLE == "TRAINER":
# 获取pserver程序并执行它
trainer_prog = t.get_trainer_program()
...
elif PADDLE_TRAINER_ROLE == "PSERVER":
# 获取trainer程序并执行它
pserver_prog = t.get_pserver_program(current_endpoint)
...
PADDLE_TRAINERS=1
(PADDLE_TRAINERS
是分布式训练任务中 trainer 节点的数量)if PADDLE_TRAINING_ROLE == "TRAINER":
分支下执行, 例如数据集解压任务数据集与输出文件路径说明
./datasets
# 数据集文件会被自动拷贝到./datasets目录下
CLUSTER_DATASET_DIR = '/root/paddlejob/workspace/train_data/datasets/'
在页面左侧数据集中点击复制数据集文件路径, 得到文件的相对路径, 例如点击后复制到剪切板的路径为data65/train-labels-idx1-ubyte.gz
.
# 数据集文件相对路径
file_path = 'data65/train-labels-idx1-ubyte.gz'
真正使用的时候需要将两者拼合 train_datasets = datasets_prefix + file_path
./output
# 需要下载的文件可以输出到'/root/paddlejob/workspace/output'目录
CLUSTER_OUTPUT_DIR = '/root/paddlejob/workspace/output'
提交任务
点击【运行项目】后进入到任务编辑页面.
历史任务
历史任务页面如下所示.
任务操作:
xxx(任务编号)_output.tar.gz
.xxx(任务编号)_log.tar.gz
.