我需要使用基于TensorFlow的神经网络架构(PointNet https://github.com/charlesq34/pointnet)来执行一些机器学习任务。由于我没有所需的物理资源,我希望利用云基础设施来完成这项工作。客户的要求是,他们希望在训练结束后获得我使用的整个设置好的机器,而不仅仅是最终模型。因为他们是研究人员,希望自己使用这台机器,探索和理解我所做的事情,但他们不希望自己进行设置和安装工作。遗憾的是,他们目前无法提供自己的(物理或虚拟)机器。
问题是:是否可以合理地在像谷歌云或AWS这样的云基础设施提供商上设置一台机器,安装所需的软件(使用Nvidia Cuda),并在适当的硬件可用时导出这台机器,导入到虚拟化工具(如Virtual Box)中,并在自己的系统上继续使用?安装的GPU/Cuda相关软件如TensorFlow等是否还能正常工作?
回答:
我认为这是可能的,但需要配置特定的硬件才能在本地环境中正常工作。
对于Google Cloud Platform,深度学习容器的介绍将允许你创建可移植的环境。
深度学习容器是一组预装了关键数据科学框架、库和工具的Docker容器。这些容器为你提供性能优化的、一致的环境,可以帮助你快速原型设计和实现工作流程。了解更多信息。
此外,请查看使用GPU加速器运行实例
Google为用户提供了一种无缝的体验,使他们能够在Container-Optimized OS VM实例上运行Docker容器中的GPU工作负载,从而用户可以从其他Container-Optimized OS功能中受益,例如安全性和可靠性。
要在Virtualbox上配置Docker,请查看这个外部博客。