5分钟搭建强大又好用的深度学习环境

为深度学习项目建立一个良好的环境不是一件容易的任务。因为需要处理的事情太多了:库必须匹配特定的版本,整个环境需要可以复制到其他机器上,所有东西都需要能够机器中的所有驱动程序通信。这意味着你需要为你的NVIDIA GPU安装特定的驱动程序,并且CUDA库必须与你的驱动程序和你想要使用的框架兼容。 2021-03-05 14:52:32 深度学习人工智能工具 女子被困浴室超30小时,危急情况AI能否救人于水火? 本文介绍了几种危急情况下AI技术救人姓名的案例,探讨了危急情况下是否可以信任AI的问题。 2021-03-05 14:20:45 AI人工智能机器学习 快递员控诉Uber的人脸识别技术,内置的种族偏见让他们面临工作危机 为Uber Eats和Uber工作的BAME(非白人种:黑人,亚裔和少数族裔)快递员声称,该公司有缺陷的识别技术让他们失去了生计。 2021-03-05 14:12:59 人脸识别人工智能AI 人工智能将为医疗健康领域带来一场颠覆性革命 将人工智能(AI)引入医疗健康领域,是当今国际医学中倾向性较强的前瞻性探索之一。医学界认为,人工智能将为医疗健康领域带来一场颠覆性革命。 2021-03-05 14:02:08 将人工智能AI医疗健康领域 Facebook新AI模型SEER实现自监督学习,LeCun大赞最有前途 刚刚,Facebook宣布了一个在10亿张图片上训练的AI模型——SEER,是自监督(Self-supervised)的缩写。 2021-03-05 12:58:31 AISEER模型 无人机技术扩展移动物网的覆盖范围 无人机正在扩大移动物联网的覆盖范围,可以成为解决该领域问题的一种低成本、低危险的方式。 2021-03-05 11:29:57 人工智能移动物网无人机 人工智能工具有助于在远程工作时提高团队的工作效率 人工智能技术不仅仅是用于远程连接,还用于监控和管理员工的工作,帮助部门经理跟踪和提高生产率。以下列出了人工智能在远程工作中提供团队工作效率的一些好处。 2021-03-05 10:59:01 人工智能AI深度学习 斯坦福连续发了四年的AI报告,今年讲了什么? 2021 年度的斯坦福 AI Index 报告正式发布,从七大版块出发,探讨了过去一年中的 AI 总体发展情况。 2021-03-05 10:57:33 AI 数据人工智能 两会聚焦“AI人脸识别”生物特征数据亟需立法规范 近年来,人工智能取得了巨大进展,尤其是人脸识别应用以及非常普及,由于当前没有相关的法律法规,导致了人脸识别应用处于非常混乱的境地。 2021-03-05 10:33:57 人工智能人脸识别生物信息 机器学习隐私研究新进展:数据增强风险被低估,新算法“降服”维数依赖 如今,数据是推动人工智能创新的核心要素。但数据的安全和隐私问题限制了数据充分释放其潜能。一直以来,微软都倡导打造负责任的人工智能,并正在开发和利用多种技术以提供更强大的隐私保护、确保数据安全。

深度学习项目建立一个良好的环境不是一件容易的任务。因为需要处理的事情太多了:库必须匹配特定的版本,整个环境需要可以复制到其他机器上,所有东西都需要能够机器中的所有驱动程序通信。这意味着你需要为你的NVIDIA GPU安装特定的驱动程序,并且CUDA库必须与你的驱动程序和你想要使用的框架兼容。

为深度学习项目建立一个良好的环境不是一件容易的任务。因为需要处理的事情太多了:库必须匹配特定的版本,整个环境需要可以复制到其他机器上,所有东西都需要能够机器中的所有驱动程序通信。这意味着你需要为你的NVIDIA GPU安装特定的驱动程序,并且CUDA库必须与你的驱动程序和你想要使用的框架兼容。

[[385488]]

随着容器彻底改变了软件开发的世界,现在它们也可以帮助数据科学家构建更健壮的环境。

有一件事是肯定的:数据科学可以从软件开发领域学到一些东西。

NVIDIA NGC是一个软件中心,提供gpu优化框架、预训练模型和工具包来培训和部署生产中的AI。它是一个容器注册中心,包含训练模型所需的所有工具:无论您使用的是caffee2、Pytorch、Tensorflow、Keras、Julia还是其他工具都没有关系。

在NGC目录中有大量可生产的容器,你只需要选择你自己想用的。

Nvidia NGC不仅是一个容器注册中心,它还内置了许多功能,可以帮助您的组织将模型带到生产环境中。

从头开始

让我们从一台配备了GPU的Linux机器开始(GPU不是强制性的,但如果你想训练模型,强烈建议使用GPU)。我在Ubuntu 20.04 LTS和18.04 LTS上测试了这个功能,但是可以很容易地适应其他Linux发行版。

我们需要做什么?

步骤很简单,我们只需要安装NVIDIA驱动程序和Docker。然后我们下载我们想要的docker镜像并开始工作!

第一步:在Ubuntu 20.04上安装NVIDIA驱动程序

注意:如果你使用的是另一个Ubuntu版本,请确保你修改了相应的脚本。此外,如果启用了Secure Boot,这种方法也不起作用。

  1. sudoaptinstalllinux-headers-$(uname-r)
  2. curl-Ohttps://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin
  3. sudomvcuda-ubuntu2004.pin/etc/apt/preferences.d/cuda-repository-pin-600
  4. sudoapt-keyadv - fetch-keyshttps://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/7fa2af80.pub
  5. sudoadd-apt-repository"debhttps://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64//"
  6. sudoaptupdate
  7. sudoapt-yinstallcuda

使用nvidia-smi命令验证安装。你应该看到这样的东西。

5分钟搭建强大又好用的深度学习环境

第二步:在Ubuntu 20.04中安装Docker

  1. #!/bin/sh
  2. #Setuptherepository
  3. sudoapt-getupdate
  4. sudoapt-getinstall-y\
  5. apt-transport-https\
  6. ca-certificates\
  7. curl\
  8. gnupg-agent\
  9. software-properties-common
  10. #AddDocker’sofficialGPGkey:
  11. curl-fsSLhttps://download.docker.com/linux/ubuntu/gpg|sudoapt-keyadd-
  12. #setupthestablerepository
  13. sudoadd-apt-repository\
  14. "deb[arch=amd64]https://download.docker.com/linux/ubuntu\
  15. $(lsb_release-cs)\
  16. stable"
  17. sudoapt-getupdate
  18. sudoapt-getinstall-ydocker-cedocker-ce-clicontainerd.io
  19. #Substituteubuntuwithyourusername
  20. sudousermod-aGdockerubuntu

注意:你需要注销和登录,以在没有sudo权限的情况下使用docker命令。

第三步:让Docker与NVIDIA driver通信

  1. curl-s-Lhttps://nvidia.github.io/nvidia-docker/gpgkey|\
  2. sudoapt-keyadd-
  3. curl-s-Lhttps://nvidia.github.io/nvidia-docker/ubuntu16.04/amd64/nvidia-docker.list|\
  4. sudotee/etc/apt/sources.list.d/nvidia-docker.list
  5. sudoaptupdate
  6. sudoapt-getinstall-ydockernvidia-container-toolkit

我们现在想测试Docker是否能够与NVIDIA驱动程序通信。要做到这一点,只需运行以下命令,您应该会看到与步骤1类似的结果。

  1. sudodockerrun--rm--gpusallnvidia/cuda:11.0-basenvidia-smi

注意:我在不同的云主机提供商上试验过,根据操作系统、虚拟机类型和gpu,此时可能需要重启。因此,如果出现错误,请尝试sudo reboot并再次执行上述命令。正常的话应该看到nvidia-smi结果。

第四步:让我们获取镜像并运行它!

  1. #DownloadNGCTensorflow2Image
  2. dockerpullnvcr.io/nvidia/tensorflow:20.12-tf2-py3
  3. #createlocal_dirfoldermountedat/container_dirinthecontainer
  4. mkdir/home/ubuntu/local_dir
  5. dockerrun--gpusall--shm-size=1g--ulimitmemlock=-1--ulimitstack=67108864-it--rm-v/home/ubuntu/local_dir:/container_dirnvcr.io/nvidia/tensorflow:20.10-tf2-py3

注意:flags - shm-size=1g - ulimit memlock=-1 - ulimit stack=67108864是必要的,为了避免操作系统限制资源分配给Docker容器。

我们现在进入了容器,让我们看看是否一切正常。

正如你从图片中看到的,GPU是可用的,tensorflow可以使用它。

5分钟搭建强大又好用的深度学习环境

最后:访问docker环境

当您断开与机器的连接时,您将注意到您已经不在容器内了。

要再次连接,你需要使用docker ps找到正在运行的容器的container_ id,然后:

  1. dockerexec-it<containerid>/bin/bash</containerid>

最后总结

在本教程中,我们发现使用NVIDIA NGC的图像创建一个具有所有库和工具的生产就绪环境是多么容易。

我们看到了配置Docker使其与NVIDIA驱动程序和所需框架通信是多么容易。

我们在5分钟内完成了所有这些工作

©本文为清一色官方代发,观点仅代表作者本人,与清一色无关。清一色对文中陈述、观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何明示或暗示的保证。本文不作为投资理财建议,请读者仅作参考,并请自行承担全部责任。文中部分文字/图片/视频/音频等来源于网络,如侵犯到著作权人的权利,请与我们联系(微信/QQ:1074760229)。转载请注明出处:清一色财经

(0)
打赏 微信扫码打赏 微信扫码打赏 支付宝扫码打赏 支付宝扫码打赏
清一色的头像清一色管理团队
上一篇 2023年5月8日 00:31
下一篇 2023年5月8日 00:32

相关推荐

发表评论

登录后才能评论

联系我们

在线咨询:1643011589-QQbutton

手机:13798586780

QQ/微信:1074760229

QQ群:551893940

工作时间:工作日9:00-18:00,节假日休息

关注微信