算法开发

开发深度学习算法

简介

Notebook 操作流程

以下为 Notebook 模块操作流程图

descript

  1. 当用户需要从无到有开发算法时,首先需要创建 Notebook ,期间可以根据自己的需要进行一系列相关配置。
  2. Notebook 创建完成后,即可在界面上点击「打开」进入 JupyterLab 界面进行代码编辑。如果用户在本地已有代码,也可直接上传。
  3. 代码编辑完成后,还可进行在线运行代码。算法开发完成后,可点击「保存算法」,将开发完成的算法保存到「算法管理」的「我的算法」中。

算法管理操作流程

以下为算法管理模块操作流程图:

descript

  1. 用户首先需要准备算法,算法的获取途径有四种:
  • 在「我的算法」页面中上传算法。
  • 使用「预置算法」页面中的预置算法。
  • fork 已有算法。
  • 从 Notebook 列表中保存算法。
  1. 在 Notebook 列表中创建一条Notebook后在线编辑。编辑完成并保存算法后,可使用该算法创建训练任务,进入后续的训练环节。
  2. 「我的算法」是用户创建的算法列表,可进行上传算法、在线编辑、创建训练任务、下载、 fork 、删除等操作。
  3. 「预置算法」是自带参数、命令、镜像等信息的算法列表,可快速创建训练任务,并可进行下载、 fork 等操作,管理员权限支持上传、删除预置算法等操作。

案例管理(管理员端功能)

该功能是管理员发布公共实验案例,可以供普通用户端创建notebook,进行在线算法实验。系统内置了多个已发布的案例实验环境,普通用户可直接使用

descript

创建环境

系统支持新建案例环境进行发布,操作步骤如下:

  1. 点击「创建环境」按钮

descript

  1. 在弹出的信息框中输入创建环境的名称、描述、运行环境以及上传包含算法代码的资源文件

descript

  1. 点击「确认」按钮

这边创建的速度根据资源文件的大小有关,资源文件的大小不超过4个G

descript

  1. 创建完成后在环境列表中可以找到相关记录

descript

删除环境

点击右侧「删除」按钮,删除单条记录

descript

也可选择多个环境记录,点击「批量删除」按钮,一键删除多条记录

descript

Notebook

Notebook 是一种交互式编程环境,AI 开发者可以在云端进行机器学习的开发。该模块集成了开源的 JupyterLab ,可支持开发者在线编辑、调试、运行代码,同时预置了 OneFlow,PyTorch,TensorFlow 等多种深度学习框架,用户可在多种框架之间自由切换。每个 Notebook 都是一个独立的编程环境,用户可以对 Notebook 实现创建、打开、停止、启动、删除等操作,算法开发完成之后,还可以将其保存到「算法管理」的「我的算法」中,从而可以进行后续的训练工作。

Notebook 列表

用户可在该界面中查询到属于自己创建的 Notebook 信息,并可对 Notebook 进行创建、打开、停止、启动、删除、保存算法、搜索等操作。

  1. 进入列表

点击左侧菜单,进入 Notebook 列表页面:

  • Notebook 列表中创建的 Notebook,可进行启动、删除、打开、停止、保存算法等操作。

descript

  • 「启动中」、「停止中」状态的 Notebook ,不可以进行任何操作。
  • 点击「保存算法」,可以将 Notebook 中包含的算法保存到算法管理列表中。
  • 点击「一键停止」,可以停止所有运行中的 Notebook。

特殊说明: Notebook 默认将会在启动后八小时自动关闭,请及时保存您的代码。Notebook 自动关闭时间可在控制台-用户管理-修改配置中进行设置。

  1. 查看详情

点击列表中任意一条 Notebook ,在右侧弹窗中可查看具体的基本信息和规格参数:

descript

创建 Notebook

用户可在该界面中创建 Notebook ,创建成功后, Notebook 会自动启动为运行状态。运行状态的 Notebook 可进行停止、打开、保存算法等操作。

  1. 点击创建按钮

Notebook 列表中,点击「创建 Notebook」按钮,即可弹出创建 Notebook 窗口

descript

  1. 填写内容

点击「创建 Notebook」,在弹窗中输入 Notebook 名称,选择开发环境、挂载数据集,选择 CPU 或 GPU 节点规格,Notebook 名称仅支持字母、数字、和下划线,且英文横杠不可在首尾。

descript

  1. 创建完成

填写完正确信息后,点击「确定」按钮,弹窗关闭, Notebook 列表页提示创建成功,新建的 Notebook 默认启动。启动完成后为「运行中」状态,可进行打开、停止、保存算法等操作。

descript

descript

注意:

  • 启动中或停止中的 Notebook 不可以对其进行任何操作。
  • Notebook 默认将会在启动后八小时自动关闭,请及时保存您的代码。Notebook 自动关闭时间可在控制台-用户管理-修改配置中进行设置。

打开Notebook

Notebook 模块集成了JupyterLab ,无需配置即可编写、调试、运行代码。同时支持 PyTorch,TensorFlow 等多种深度学习训练框架,开发过程中,用户可在多种框架之间自由切换。

  1. 点击打开

Notebook 处于运行状态时,可在列表界面点击「打开」,在打开的新窗口中,进入相应的 Notebook 的编辑界面

descript

  1. 进入JupyterLab

在此页面中可进行算法文件的创建和编辑,左侧新建文件夹/文件,导入文件夹/文件等,右侧选择运行程序的环境,目前支持 Python3,PyTorch,TensorFlow 等环境。

descript

  1. 开发与调试

可在此开发环境中编写、调试、保存代码程序

descript

Notebook 注意事项

介绍一些 Notebook 在使用过程中的注意事项

  1. parse_args() 函数

Notebook 不支持 parse_args()函数,如果程序当中用到这个函数,Notebook 执行时会报错:

descript

解决方法: 将 parse_args() 函数改为 parse_known_args()[0] 函数即可解决:

descript

  1. 安装额外软件包

用户在开发算法的过程中用到的软件包是多种多样的,Notebook 当中提供了一种方法可以让用户安装自己所需要的软件包

  • 打开终端

descript

  • 启动 bash
  • 启动相应虚拟环境,这里选择 oneflow-0.1.0-py36 的环境
  • 安装所需软件包,这里以安装 SciPy 为例

descript

安装完成后即可使用 SciPy 包进行开发。

算法管理

算法管理用于保存一些平台预置的算法以及用户自己开发的算法。对于已经保存的算法,用户可以进行创建训练任务、下载、 fork 、删除等操作。算法管理分为「我的算法」和「预置算法」两个页面,用于管理自定义开发和平台预置的算法。

页面简介

  1. 我的算法

点击「上传算法」,可以上传用户自定义开发的算法,也可从Notebook 列表中点击「保存算法」到算法管理中,对算法可进行创建训练任务、下载、 fork 、删除等操作。

descript

点击算法列表中任意一条算法,可在右侧弹窗中查看和编辑基本信息。

descript

  1. 预置算法

点击「预置算法」进入预置算法列表,可对列表中的算法进行创建训练任务、下载、 fork 等操作。

descript

上次算法

用户可在此页面上传算法,上传成功后算法会保存到 「我的算法」。

  1. 在「我的算法」列表页面中,点击「上传算法」。

descript

  1. 在弹出的窗口中填写信息

descript

注意:

  • 算法名称仅支持字母、数字、和下划线,且算法名称不能重复。
  • 上传代码包,请将算法文件打成一个 zip 包上传。

zip算法包文件参考如下:
descript

用算法创建训练任务

用户可选择用算法来创建训练任务。

  1. 在「算法管理」页面(「我的算法」和「预置算法」均可)中,如果需要使用某个算法来创建训练任务,可点击该算法后方的「创建训练任务」按钮。

descript

  1. 进入创建训练任务页面填写信息

descript

Fork 已有算法

用户在「我的算法」和「预置算法」列表中,通过「 fork 」复制一份新算法。

  1. 可在「预置算法」界面中,点击「 fork 」。

descript

  1. 在弹出的窗口中填写信息。

descript

在我的算法列表内会新增一条算法记录

descript

How is this guide?