主要内容

平行和云中的深度学习

在多个GPU上深入学习

神经网络是固有的平行算法。您可以通过使用并行计算工具箱™来利用这种并行性,以跨多核CPU,图形处理单元(GPU)和具有多个CPU和GPU的计算机集群的培训。

培训深网络是极其计算机密集型,您通常可以使用高性能GPU加速培训。如果您没有合适的GPU,您可以在一个或多个CPU内核上训练,或租用云中的GPU。您可以在单个GPU或CPU或多个GPU或CPU内核上培训卷积神经网络,或在群集中并行。使用GPU或任何并行选项需要并行计算工具箱。

小费

GPU支金宝app持是自动的。默认情况下,Trainnetwork.功能使用GPU(如果可用)。

如果您可以访问具有多个GPU的机器,只需指定培训选项'executionEnvironment','multi-gpu'

如果您想使用更多资源,您可以扩展到云的深度学习培训。

深度学习内置并行支持金宝app

培训资源 设置 学到更多

本地机床上的单个GPU

自动的。默认情况下,Trainnetwork.功能使用GPU(如果可用)。

'executionenvironment'

为分类创建简单的深度学习网络

本地机器上的多个GPU

指定'executionEnvironment','multi-gpu'与之培训选项功能。

'executionenvironment'

选择特定的GPU用于培训

本地机器上的多个CPU核心

指定'executionEnvironment','平行'

使用默认设置,'平行'使用本地集群配置文件。只有使用CPU,如果您没有GPU,因为CPU通常远远低于GPU进行培训。

'executionenvironment'

群集或云中

设置默认群集后,指定'executionEnvironment','平行'与之培训选项功能。

培训在群集中执行并将内置进度图返回到本地MATLAB®

使用自动并行支持云中的火车网络金宝app

并行列车多个深网络

培训情景 建议书 学到更多
在您的本地机器或云中交互式 用一个议案循环训练多个网络,并使用绘图结果outputfcn.。默认情况下在本地运行,或选择其他群集配置文件。 使用Parcom来培训多个深度学习网络
在您当地机器或云中的背景中 Parfeval.在没有阻止您当地的matlab的情况下训练,并且使用绘图结果outputfcn.。默认情况下在本地运行,或选择其他群集配置文件。

并行列车深入学习网络

使用Parfeval培训多个深入学习网络

在群集中,关闭您的本地机器 使用将培训代码发送到群集的功能。您可以在以后关闭MATLAB和FETCH结果。 向群集发送深度学习批处理作业

在云中深入学习

如果您的深度学习培训需要数小时或几天,您可以在云中租用高性能GPU以加速培训。在云中工作需要一些初始设置,但在使用云的初始设置之后可以减少培训时间,或者允许您在同一时间培训更多网络。为了在云中尝试深度学习,可以遵循设置帐户的示例步骤,将数据复制到云中,并创建群集。在此初始设置之后,您可以运行培训代码,并在云中运行最小的更改。设置默认群集后,只需指定培训选项'executionEnvironment','平行'在多个GPU上培训云集群上的网络。

在云中配置深度学习 笔记 学到更多
设置Mathworks云中心和亚马逊帐户 一次性设置。 云中心入门
创建一个集群 使用云中心在Amazon Cloud中设置和运行群集。对于深度学习,请选择具有GPU的机器类型,例如P2或G3实例。 创建云集群
将数据上传到云端 要使用云中的数据,请上传到Amazon S3。使用数据存储来从桌面客户端MATLAB或群集工作人员中访问S3中的数据,而无需更改代码。 将深度学习数据上传到云端

快速多节点GPU通金宝app信的高级支持

如果您使用的是使用Linux计算群集,并且在诸如Infiniband的机器之间的快速互连或不同机器上的GPU之间的快速互连,例如GPudirect RDMA,您可能能够利用MATLAB中的快速多节点支持。金宝app通过设置环境变量,在池中金宝app的所有工人上启用此支持parallel_server_fast_multinode_gpu_communication1。在群集配置文件管理器中设置此环境变量。

此功能是GPU通信的NVIDIA NCCL库的一部分。要配置它,必须设置其他环境变量以定义网络接口协议,尤其是nccl_socket_ifname.。有关更多信息,请参阅nccl文件特别是部分nccl环境变量

相关话题