Wolfram 语言

在多个 GPU 上训练网络

为了减少训练时间,可以在 GPU 上而不是 CPU 上训练神经网络。Wolfram 语言现在支持用多个 GPU (来自同一台机器)进行神经网络训练,以加快训练速度。下面的例子显示了在有 6 个 CPU 的机器上和在有 4 个 NVIDIA Titan X GPU 的机器上进行训练的情况。

加载 CIFAR-10 训练数据集的子集。

Wolfram Neural Net Repository 加载 "Wolfram ImageIdentify Net V1" 架构。

NetEncoder 对输入数据进行预处理,以避免 CPU 预处理对估计网络的训练速度造成瓶颈。

删除不再需要的 NetEncoder 并替换第一个网络和最终的 NetDecoder,以便与数据集中的类相匹配。

在有 6 核 CPU 的机器上开始训练:

训练以每秒约 8 个样例的速度进行。

在单个 GPU(第四个,不建议使用负责显示的 GPU )上开始训练。

这次,训练以每秒约 200 个样例的速度进行。

在四个 GPU 上开始训练。

现在训练速度是每秒约 500 个样例。

可视化测得的三个训练速度。

相关范例

de en es fr ja ko pt-br