计算机视觉领域的'hello world'—MNIST 数据库,收集了 70,000 个手写的数字。我们运行 Keras 中的多层感知机 (MLP) 来处理 MNIST 数据库。多次感知机只需全连接层而不用卷积。该模型将数据训练了 20 个 epoch 之后,准确率达到了 98%。
训练该模型时,GTX 1080 Ti 比 AWS P2 的 K80 要快 2.4 倍。这是让人感到惊讶的结果,因为通常说来这二者的表现应该差不多。我认为原因可能出在 AWS K80 的虚拟化或者降频问题上。 CPU 运行起来比 GPU 慢 9 倍之多。所有实验结束后我们可知,这其实对处理器来说已经是一个很好的结果了。因为此类简单模型还不能充分发挥出 GPU 并行运算的能力。 有意思的是,台式机 Intel i5-7500 在 Amazon 的虚拟 CPU 上实现了 2.3 倍的加速。 VGG(Visual Geometry Group)调参 VGG 网络将被用于 Kaggle 举办的猫狗辨识比赛。这个比赛旨在辨识出给定图片是猫还是狗。在 GPU 上运行相同批次(batches)数量的模型不太可行。所以我们在 GPU 上运行 390 批次(1 epoch),在 CPU 上运行 10 个批次。代码可以在 GitHub 上找到:https://github.com/slavivanov/cats_dogs_kaggle
1080 Ti 比 AWS GPU(K80) 快了 5.5 倍。这应该与上一个实验结果(i5 快 2.6 倍)有类似的原因。然而 CPU 对于该任务来说根本不适用,因为相较于 GPU, 运行这种包括了 16 层卷积层和一对 semi-wide(4098)全连接层的大型模型,CPU 得花 200 多倍的时间。 Wasserstein GAN GAN(生成对抗网络)是一种训练模型使其生成图片的方法。其原理是将两种网络结构放在一起相互对抗:其生成器将学习生成越来越高质量的图片,而辨别器则会尝试辨别出哪些图片是真实的哪些是由生成其「伪造」出来的。 Wasserstein GAN 是经典生成对抗网络的升级。我们用 PyTorch 来实现这一模型,该实现和 WGAN 作者所完成的很像。模型训练了 50 步,几乎每一步都有损失,这是 GAN 网络模型的普遍情况。通常并不考虑使用 CPU 来完成。
GTX 1080Ti 比 AWS P2 K80 快了 5.5 倍,这样的结果与之前的实验结果是一致的。 风格迁移 最后一个基准测试是源自一篇关于图片风格转换器的论文(Gateys et al.),使用的是 Tensorflow。风格转换是一种图片处理技术,它能将某一张图片(比如一幅画)的风格与另一张图片的内容相结合,从而生成新的图片。它分离和重组任意图像的内容和样式,为艺术图像的创建提供了一种新算法。
GTX 1080Ti 比 AWS P2 K80 快了 4.3 倍。这次 CPU 比 GPU 慢了 30-50 倍,已经比在 VGG 任务中的表现好多了,但仍然比 MNIST 多层感知机实验结果慢。该模型主要使用 VGG 网络中的较初级的层级,我怀疑这样浅层的网络无法充分利用 GPU。 以上就是这一次搭建的深度学习盒子的基准测试,我不知道从 AWS 转入到自建服务器到底是好还是坏,但时间会告诉我们一切! 原文地址:https://blog.slavv.com/the-1700-great-deep-learning-box-assembly-setup-and-benchmarks-148c5ebe6415 (责任编辑:本港台直播) |