我正试图为这个名为Pocketflow的框架运行一个教程(按照这里的说明(,它基本上可以归结为运行一个带有python脚本参数的bash脚本:
./scripts/run_local.sh nets/resnet_at_cifar10_run.py
Pocketflow需要Tensorflow 1.10.0版本,并且需要使用空闲的GPU。因此,我认为应该在具有虚拟环境(指定TF版本(的集群(许多GPU(上运行它。有没有更简单的方法?安装页面概述了";码头工人";方法和";七";方法,但我不熟悉这些概念。
TensorFlow版本
从PocketFlow的requirement.txt文件来看,它似乎至少需要1.10.0,它可以与上面的任何内容配合使用(除了一些警告和不推荐使用的通知(。
在哪里跑步
你应该已经知道了。如果你有一个GPU集群,在那里运行它。否则,您可以使用免费的GPU选项,如Kaggle和Colab:Example。在Colab中,您可以定义使用哪个TensorFlow版本,官方示例。如果你在Kaggel和Colab之间选择任何人,你可能需要修改你必须使用PocketFlow的原始代码。
如果你有自己的GPU集群,我想你会安装Linux系统。您可以从中选择两个选项
使用Python虚拟环境
- 创建它:
python3 -m venv pocketflow-env
- 激活它:
source pocketflow-env/bin/activate
- 安装版本为
pip install -r requirements.txt
的所需软件包
使用Docker
- 通过运行
docker version
检查它是否已经安装。如果返回适当的消息,这意味着默认输出,那么这意味着Docker已经安装。否则,请按照官方文档安装Docker:在Linux上安装Docker。然后,您只需要像PocketFlow的官方文档所描述的那样运行接下来的两个命令 docker pull uber/horovod
它从Dockerhub中提取此映像并存储在您的系统中,以便用于下一个命令./scripts/run_docker.sh nets/resnet_at_cifar10_run.py