常见问题
Q1.什么是Notebook?
Notebook 是一个 Jupyter 笔记本环境,不需要进行任何设置就可以使用,适用于进行机器学习深度学习的培训和开发.
Q2.支持哪些浏览器?
Notebook 在 Chrome/ Firefox/ Safari的各个桌面版本上进行了最全面的测试,不支持 IE以及IE内核浏览器。
Q3.Jupyter 和 Notebook 有什么区别?如何使用Jupyter?
Jupyter Notebook是一个开放源代码项目,定义的基于web的交互式编程方法已经逐渐成为全球数据科学/机器学习/深度学习领域的前端标准. BML中Notebook 是在 Jupyter Notebook 基础之上开发的。通过BML中的Notebook,您可以使用 Jupyter Notebook,完全不需要在您自己的计算机上下载、安装或运行任何内容,只要有浏览器就可以使用. 通过查阅Jupyter Notebook使用手册,您可以充分了解Juypter指令使用方法.
Q4.我的代码在哪里执行?如果关闭浏览器窗口,我的执行状态会怎样?
代码会在专供您使用的docker容器中执行。docker容器闲置一段时间后会被回收,并且系统为docker容器强制设置了最长有效期.关闭浏览器窗口期间的代码执行的标准输出不会在屏幕窗口中展示,因此,建议您如果需要在关闭浏览器窗口的情况下继续运行代码,可以把程序标准输出/标准错误输出存储到文件(非/home/work/data目录下文件)中.
Q5.Python有哪些基础类库,我应该如何学习?
您可以参考Python3.5手册和Python2.7手册. 因为Python2.7官方已不再支持,推荐您使用Python3.5及以上版本.
Q6. 我在Notebook中pip install的Python package在下次运行时为什么不见了?
如果需要进行持久化安装, 需要使用持久化路径, 如下方代码示例:
!mkdir /home/work/external-libraries
!pip install beautifulsoup4 -t /home/work/external-libraries
同时添加如下代码, 这样每次环境(kernel)启动的时候只要运行下方代码即可:
import sys
sys.path.append('/home/work/external-libraries')
除上述操作外,在保存模型时,需要将'/home/work/external-libraries'及其包含的文件作为代码库进行保存,并在下次启动Notebook时使用该代码库,从而在启动Notebook后才可以使用已安装的Python库。
Q7. 为什么我的项目打开后, 文件不见了?
Data目录为非持久化目录, 在Data下进行的文件操作, 重启之后会被自动恢复.
Q8. BML中Notebook除了PaddlePaddle外,是否支持TensorFlow等其他框架?
框架的支持需要大量的硬件适配工作, 而我们暂无人力开展此项工作. 用户自行安装的框架往往不能在GPU环境下正常运行, 从而对我平台稳定性产生质疑. 因此最终决定暂停支持. 平台对PaddlePaddle进行了充分的适配工作,您可以尝试使用PaddlePaddle. 附带一份TensorFlow和PaddlePaddle的API映射表: https://aistudio.baidu.com/aistudio/projectdetail/80548
Q9. 为什么我使用PaddlePaddle显存占用这么大?
PaddlePaddle在分配requested_size大小的显存时,先定义一个显存池的大小,记为chunk_size,chunk_size由环境变量 FLAGS_fraction_of_gpu_memory_to_use 确定,表征chunk_size在全部显存的占比,默认值为0.92,即框架预先分配显卡92%的显存 注:若GPU卡上有其他任务占用显存,可以适当调整chunk的占比,保证框架能预分配到合适的chunk,比如可以分配40%的显存可以这样设置:
exportFLAGS_fraction_of_gpu_memory_to_use=0.4 # 预先40%的GPU显存
提醒:chunk占比应该尽可能大,只有在想测量网络的实际显存占用量时,可以设置该占比为0,观察nvidia-smi显示的显存占用情况。
Q10. Notebook中如何同步git内容?
您可以在code cell中执行如下命令来同步git
!git clone https://yourgitaddress.git
请注意, 如果git网址为http (而不是https), 有可能被要求再次确认, 而Notebook中缺乏该类交互能力.
如有必要, 请使用Terminal功能.
Q11. 为什么在Notebook中同步GitHub会比较慢?
经测试, 主要是中国访问海外资源的总带宽有限.
可以尝试使用国内代码托管服务来替代.
或通过其他方式将GitHub资源下载后, 再上传至AI Studio.
Q12. 为什么不能运行turtle或tkinter?
turtle/tkinter运行时会创建一个GUI, 但是BML中Notebook是一个运行在云端的网页服务. 它无法在你的机器上打开一个窗口.
如果确实有必要, 请自己修改turtle或tkinter的代码, 对其GUI行为进行限制, 或使得它们直接支持Notebook.
Q13. 是否支持导入ipynb文件?
为了系统安全及稳定性,Notebook对ipynb文件进行了隐藏, 同时一个项目仅支持一个活动的ipynb文件, 作为整个项目的启动文件.
用户可以上传并替换默认的ipynb文件。
Q14. 如何通过apt-get或apt-install安装库?
限于安全策略, 我们暂不支持通过这种方式进行安装. 也不建议编译模式(make)进行安装. 如果的确有需求, 请通过mailto: aistudio@baidu.com 申请.
Q15. 如何移动Notebook中的文件?
可使用终端命令来进行文件位置操作. 例如:
#!/bin/bash
direc="%%1" #$(pwd)
for dir2mv in $direc/* ; do
if [ -d $dir2mv ]; then
mv $dir2mv "%%2"
fi
done
Q16. 平台中的Notebook模式使用的v100资源是几张卡呢?
目前是1张
Q17. Notebook项目中能运行的代码, 在脚本任务中需要改吗?
需要进行修改. 在创建脚本任务时会提供一些范例, 请按范例说明进行修改.
Q18. 我想把本地项目文件上传至Notebook项目中, 但文件数量比较多, 怎么上传?
a. 请将项目文件打成zip包后, 在Notebook环境中上传.
如果项目文件较大(>150mb), 请使用数据集功能上传, 然后挂载到项目中.
b. 最后在项目中通过unzip命令进行解压缩(请注意需要解压到work目录下)
c. 如执意需要.rar包, 由于该格式为RAR共享软件独有, 请自行百度解压命令及用法.
Q19. 我上传文件时, 系统告诉我上传失败, 怎么办?
已知上传失败有3种情况:
- 您本地的系统时间和互联网标准时间差异过大, 此时您需要调整本地电脑时钟, 使之和互联网标准时间基本一致, 然后重新上传.
- 您使用了VPN软件, 这类软件可能会导致上传失败. 此时您需要关闭VPN软件, 然后重新上传.
- Notebook内部服务异常. 此时您可发送问题页面url及截图, 请提交工单联系我们.
Q20. 我在卸载或者安装包时,输出进程提示输入(y/n)没有输入框。不知从哪输入y或者n
部分情况, 在Notebook的输出区有对应输入位置. 如确定没有, 则请使用Notebook中的"终端"功能.
Q21. 如何在Notebook中进行调试?
Notebook环境自启动后, 其实就已经在调试状态了. 点击每个Cell前面的运行按钮,可以视为Step-Over的执行状态. 如果需要添加断点等功能, 请使用Python自带的调试器: PDB.