资源 | GitHub新项目Deepo:一键安装11项深度学习框架与环境

百家 作者:机器之心 2017-12-18 06:41:34 阅读:419

选自GitHub

机器之心编译

参与:蒋思源


最近,一项关注于快速构建深度学习环境的 GitHub 项目十分流行,这个名为 Deepo 的项目由一系列 Docker 镜像组成,包含了 TensorFlow、MXNet、Caffe 和 Torch 等 11 个流行的深度学习研究环境。该项目发布一个多月已经有了近 3000 的收藏量,机器之心简要介绍了该项目,更详细的安装步骤请查看原 GitHub 项目。


项目地址:https://github.com/ufoym/deepo




因为 Deepo 是一系列 Docker 镜像,所以它要求先安装 Dokcker 客户端与环境。Docker 主要是希望创建可移植软件的轻量容器,并让这些软件可以在任何安装了 Docker 的机器上运行,而不用关心底层操作系统。所以希望利用该项目安装深度学习环境的读者首先需要了解 Docker。


Deepo 是一系列 Docker 镜像,它的主要特征有:


  • 允许我们快速配置深度学习环境

  • 支持几乎所有常见的深度学习框架

  • 支持 GPU 加速(包括 CUDA 和 cuDNN), 同样在 CPU 中运行良好

  • 支持 Linux(CPU 版和 GPU 版)、OS X(CPU 版)、Windows(CPU 版)


Deepo 的 Dockerfile 生成器主要有以下特征:


  • 允许使用类似乐高那样的模块自定义环境

  • 自动解决依赖项问题


可用的 Tags



快速启动


GPU 版


  • 安装


第一步:安装 Docker 和 nvidia-docker:


Docker:https://docs.docker.com/engine/installation/

nvidia-docker:https://github.com/NVIDIA/nvidia-docker


第二步:使用以下命令行从 Docker Hub 获取 一体式镜像


  1. docker pull ufoym/deepo


  • 用法


现在我们可以尝试使用以下命令:


  1. nvidia-docker run --rm ufoym/deepo nvidia-smi


这个命令应该能令 Deepo 从 Docker 容器中使用 GPU,如果该命令不起作用,那么可以在 nvidia-docker GitHub 项目中搜索 Issues 部分,上面有很多解决方案。为了获得一个和容器交互的 shell,它不会在我们推出后自动删除,我们需要键入:


  1. nvidia-docker run -it ufoym/deepo bash


如果我们希望在主机(机器或虚拟环境)和容器间共享数据和配置,那么可以使用 -v 选项:


  1. nvidia-docker run -it -v /host/data:/data -v /host/config:/config ufoym/deepo bash


该命令会将主机可视的 /host/data 变为容器中的/data,/host/config 作为/config。这种隔离减少了集装箱化试验重写或使用错误数据。


注意有些框架(如 PyTorch)是噢用共享内存以在进程中共享数据,所以如果使用默认的共享内存分区大小,那么容器运行多进程是不够的。因此我们需要使用 nvidi-docker 运行 --ipc=host 或 --shm-size 命令增加共享内存大小。


  1. nvidia-docker run -it --ipc=host ufoym/deepo bash


CPU 版


  • 安装


第一步:安装 Docker

第二步:使用以下命令行从 Docker Hub 获取 一体式镜像


  1. docker pull ufoym/deepo:cpu


  • 用法


现在我们能尝试使用以下命令行:


  1. docker run -it ufoym/deepo:cpu bash


如果我们希望在主机(机器或虚拟环境)和容器间共享数据和配置,那么可以使用 -v 选项:


  1. docker run -it -v /host/data:/data -v /host/config:/config ufoym/deepo:cpu bash


注意有些框架(如 PyTorch)是噢用共享内存以在进程中共享数据,所以如果使用默认的共享内存分区大小,那么容器运行多进程是不够的。因此我们需要使用 nvidi-docker 运行 --ipc=host 或 --shm-size 命令增加共享内存大小。


  1. docker run -it --ipc=host ufoym/deepo:cpu bash



本文为机器之心编译,转载请联系本公众号获得授权

✄------------------------------------------------

加入机器之心(全职记者/实习生):hr@jiqizhixin.com

投稿或寻求报道:content@jiqizhixin.com

广告&商务合作:bd@jiqizhixin.com

关注公众号:拾黑(shiheibook)了解更多

[广告]赞助链接:

四季很好,只要有你,文娱排行榜:http://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

关注网络尖刀微信公众号
随时掌握互联网精彩
赞助链接