Notebook简介
ModelArts集成了基于开源的Jupyter Notebook和JupyterLab,可为您提供在线的交互式开发调试工具。您无需关注安装配置,在ModelArts管理控制台直接使用Notebook,编写和调测模型训练代码,然后基于该代码进行模型的训练。
- Jupyter Notebook是一个交互式笔记本。关于Jupyter Notebook的详细操作指导,请参见Jupyter Notebook使用文档。
- JupyterLab是一个交互式的开发环境,是Jupyter Notebook的下一代产品,可以使用它编写Notebook、操作终端、编辑MarkDown文本、打开交互模式、查看csv文件及图片等功能。关于JupyterLab的详细操作指导,请参见JupyterLab官网文档。
其中,ModelArts还提供了华为自研的分布式训练加速框架MoXing,您可以在Notebook中使用MoXing编写训练脚本,让您代码编写更加高效、代码更加简洁。
支持的AI引擎
每个工作环境多种AI引擎,可以在同一个Notebook实例中使用所有支持的AI引擎,不同的引擎之间可快速、方便的切换,并且有独立的运行环境。其中,Conda-python2不包含任何AI引擎的基础Python2.7环境,Conda-python3不包含任何AI引擎的基础python3.6环境。
- ModelArts的Notebook支持多引擎,即同一个Notebook实例,可以使用所有支持的AI引擎,不同引擎之间可快速、方便切换。
- 创建Notebook时,选择一种工作环境,包含多引擎,分为Python2和Python3两个不同版本的环境,推荐使用Multi-Engine 1.0 (python3)。请参考表1选择适用的工作环境。
- 不同Region支持的AI引擎不一样,请以控制台实际界面为准。
工作环境名称 |
预置的AI引擎及版本 |
适配芯片 |
|---|---|---|
Multi-Engine 1.0 (Python3, Recommended) |
MXNet-1.2.1 |
CPU/GPU |
PySpark-2.3.2 |
CPU |
|
Pytorch-1.0.0 |
GPU |
|
TensorFlow-1.13.1 |
CPU/GPU |
|
TensorFlow-1.8 |
CPU/GPU |
|
XGBoost-Sklearn |
CPU |
|
Multi-Engine 1.0 (python2) |
Caffe-1.0.0 |
CPU/GPU |
MXNet-1.2.1 |
CPU/GPU |
|
PySpark-2.3.2 |
CPU |
|
PyTorch1.0.0 |
GPU |
|
TensorFlow-1.13.1 |
CPU/GPU |
|
TensorFlow-1.8 |
CPU/GPU |
|
XGBoost-Sklearn |
CPU |
|
Multi-Engine 2.0 (python3) |
Pytorch-1.4.0 |
GPU |
R-3.6.1 |
CPU/GPU |
|
TensorFlow-2.1.0 |
CPU/GPU |
|
Ascend-Powered-Engine 1.0 (python3) |
MindSpore-1.1.1 |
Ascend 910 |
TensorFlow-1.15.0 |
Ascend 910 |
使用限制
- 出于安全因素考虑,ModelArts集成的Notebook暂不开放用户root权限,可使用非特权用户jovyan或者ma-user(Multi-Engine引擎)进行操作,因此暂不能使用apt-get安装操作系统软件。
- 针对当前的AI引擎框架,Notebook仅支持单机模式训练模型。如果需要使用分布式模式训练模型,建议使用ModelArts训练作业,资源池设置多节点的方式实现。
- 开发环境暂不支持apt-get。您可以使用自定义镜像的方式训练模型。
- 不支持GUI图形相关的库,如pyqt等。
- 使用Ascend规格创建的Notebook,不支持挂载EVS。
- 不支持连接DWS服务以及数据库服务。
- 不支持直接读取OBS中的文件, 需要先下载到本地。如需访问OBS中的数据,建议使用MoXing或者SDK进行交互。
- 开发环境中不支持TensorBoard,建议使用“训练作业”下的“可视化作业”功能。
- 针对已创建好的Notebook实例,在创建完成后无法修改规格。例如将CPU规格修改为GPU、修改工作环境。因此,建议在创建实例时,选择业务所需的规格配置,或者在开发过程中,及时保存您的代码和数据至OBS,方便快速上传至新的Notebook中使用。
- 在关闭页面后,再次打开时依然运行代码看到输出,建议使用Terminal。
- 自行升级PyTorch等AI框架的版本后,请注意是否和当前cuda版本兼容。预置在Multi-Engine 2.0和 Multi-Engine 1.0工作环境中的cuda版本不同。切换cuda版本请参见GPU类型实例,在Terminal中切换cuda版本。