在训练和使用神经网络时,哪些 GPU 规格很重要?

数据挖掘 神经网络 深度学习 显卡
2021-09-23 18:48:42

我需要购买一些 GPU,我计划将其用于训练和使用一些神经网络(很可能与 Theano 和 Torch 一起使用)。我应该注意哪些 GPU 规格?

例如:

还有什么重要的,还有什么不重要的?

例如,假设套接字数量、时钟速度和内核数量不会带来任何额外的有用信息(因为我们已经考虑了 Tflops 的数量)是否合理?

在此处输入图像描述

4个回答

除了列出的标准寻找

  • 核心数
  • 进行低精度算术的能力

实际上,您最好购买最新一代的 NVIDIA 显卡(目前为 10xx)。

这取决于您正在考虑的神经网络的预期大小。如果 DNN 包含具有大量默认输入的多个层和许多完全连接的层,那么您需要一个具有大内存的 GPU。

内存是最重要的因素,没有足够的内存,你的 GPU 就毫无用处。要了解任何 DNN 的大小,请尝试考虑全连接层的数量和大小。当然核心数量很重要,但内存更重要

我会添加更多参数来考虑:

  1. 与每个 cuda 核心关联的高速缓存内存大小。
  2. 显存吞吐量(Gb/s),越高越好。

如果特定 GPU 的内存不足以满足您的数据集,一种替代方法是处理您的训练集样本。尽管在某些情况下这可能是不可能的。

处理大型数据集的另一种方法是,如果您可以通过编写自己的 CUDA 内核来轻松移植算法,那么您可以通过水平分解数据集并交换每个部分直到处理整个数据集来克服内存限制。以这种方式实现反向传播非常麻烦,而且我还没有尝试在 GPU 上以这种方式实现它,因此获得有关您的进度的反馈会很有趣。

确保计算能力足以满足您的软件框架。

即 tensorflow 1.11 刚刚下降 CP=3.0