听说用CPU就能做深度学习!再也不用攒钱买GPU了?

简介: 听说用CPU就能做深度学习!再也不用攒钱买GPU了?

入了深度学习的坑,没有个GPU怎么能带得动,你是不是也发愁过配什么样的GPU?NVIDIA,AMD GPU,Intel Xeon Phis,Google TPU...各家芯片让人挑花了眼,一个不行还得多买几个,而且越专业的硬件价格就越贵。

所以近年来,有人就动了个念头,硬件不行,我改软件还不行吗!

2017年,MIT教授 Nir Shavit 在研究一个需要借助深度学习重建老鼠大脑图像的项目时,由于不知道如何在图形卡或GPU上编程,于是他选择了CPU。

Nir Shavit

没想到,竟然顺利完成了这一研究。Shavit回忆说:“看,我发现只要以合适的方式编程,CPU就可以完成GPU的工作。”

难道未来做深度学习可以不用挑选专门的硬件了?

GPU也不是百分百适合深度学习

其实,GPU成为深度学习的首选硬件也算是一个巧合。GPU(Graphics Processing Unit)也就是图形处理器,顾名思义,这些芯片最初是被设计用来在电子游戏等应用中快速渲染图形的。

我们都知道中央处理器CPU具有四到八个复杂的内核,是我们电脑中不可或缺的芯片,可以用来执行各种计算。GPU则由数百个只能执行特定操作的简单内核组成,但是这些内核可以同时执行操作,而不是一个接一个地执行,从而缩短了完成大量计算所需要的时间。

AI 研究领域的人们很快就意识到这种大规模并行化也使得 GPU 非常适合深度学习。像图形渲染一样,深度学习也涉及执行成千上万次的简单数学计算。

2011年,在与芯片制造商英伟达的合作中,谷歌发现在 2,000 个 CPU 上训练出来的计算机视觉模型可以区分猫与人,而仅仅在 12 个 GPU 上进行训练就可以达到相同的性能。于是,GPU成为了用于模型训练和推理的常用芯片。

但是GPU也不是百分百适合深度学习。一方面,它们不能作为独立芯片来使用。由于它们能执行的操作类型有限,因此必须依赖于 CPU 来处理其他操作。另一方面,GPU的高速缓存也非常有限 (这里的高速缓存是与芯片处理器最接近的数据存储区域), 这意味着大部分数据都存储在芯片之外,并且必须在处理时进行存取。这些来来回回的数据流最终成为了计算的瓶颈,从而限制了 GPU 运行深度学习算法的速度。

用CPU做深度学习,成本低范围广?

在MIT教授 Nir Shavit偶然间发现CPU可以完成GPU的工作后,他诞生了创业的想法。于是他和MIT研究科学家 Alex Matveev 在 2017 年合伙创办了一家名为公司Neural Magic的公司,宣称能通过一种“专有算法”让计算机在不配备专用硬件的前提下,运行复杂的数学函数,并使用更大规模的数据集。

官网链接:
https://neuralmagic.com/

该公司认为这不仅会降低深度学习的成本,还会使AI的使用范围更广。

Neural Magic用修改软件来替代硬件改造。该公司重新设计了深度学习算法,通过利用芯片自身的大容量可用内存和复杂的内核,使得算法在 CPU 上能更高效地运行。尽管这种方式失去了由 GPU 的并行化带来的速度,但据报道,由于它减少了在芯片内外传送数据的需求,从而节省了大致相同的时间。

该公司表示,这些算法可以在CPU上实现GPU的速度,但成本低了很多。

Neural Magic认为,以前没有采用这一方法也是有原因的。首先,这违反了大众普遍的认知。深度学习需要专用硬件的想法已经根深蒂固,以至于其他方法很容易就被忽略。其次,在行业中应用 AI 本身还是个相对较新的事物,并且很多公司刚开始寻找更简单的方法来部署深度学习算法。

对于Neural Magic公司来说,目前尚不清楚这样的新方法是否能够成就他们。该公司的产品正在数10家公司中进行Beta测试,这仅是整个AI行业的很小一部分公司。

目前来看,Neural Magic所提供的服务是否实用还是因公司而异。

正如Shavit所说,他们有一个客户是大型的显微镜设备制造商,现在正在尝试使用这种方法来为其显微镜增加 AI 功能。因为显微镜已经带有 CPU,所以他们不需要增加任何额外的硬件。对于他们来说,使用基于GPU的深度学习模型的设备则体积更大且更耗电。

但对于大部分公司来说,如果要先在专用硬件上训练他们的模型,再使用 Neural Magic 的软件将训练后的模型转换为与 CPU 兼容的格式,就有点多此一举了。

Shavit表示这也仅仅是个开始。Neural Magic 计划在将来扩展其产品,以帮助其他公司在 CPU 上训练 AI 模型。他说:“我们相信从现在开始10到20年后,CPU 将成为运行机器学习算法的实际架构。”

MIT计算机科学与人工智能实验室的研究科学家Neil Thompson则不这么确定。他说:“在芯片生产方面,经济确实发生了变化,这将导致更多的专业化。” 此外,尽管 Neural Magic 的技术能从现有硬件中获得更高的性能,但基本的硬件改进仍将是继续推动计算向前发展的唯一途径。

“这听起来是提高神经网络性能的一种非常好的方法。但我们不仅要改善神经网络,而且要改善整体计算,”Thompson说。

关于“无硬件深度学习”,你怎么看?

好奇的文摘菌在reddit上逛了一圈,看看大家关于“无硬件深度学习”的看法。文摘菌发现了一个很直白的楼主,他问道,“Neural Magic这家公司是骗子吗?是怎么用CPU实现GPU级别的算力的?”

评论区的同学表示,“骗子”倒不至于,“他们的背景是多线程计算技术,所以我猜他们使用了大量的近似方法,比如诱导稀疏性、低精度、哈希、压缩等,并自动生成非常高性能的多线程代码。这也可以解释为什么他们要针对推理。”

“但如果你是一个深度学习研究人员,我觉得它可能不会对你非常有用。”

他还补充道,“由于架构和软件方面的原因,这些东西通常在GPU上无法很好地运行。这就是为什么现在稀疏图工作负载通常在高性能计算的CPU上运行的原因。”

网友jminuse也表示,GPU在稀疏矩阵上效率较低,因此它们在本质上不如CPU能提供那么多的加速。在这个问题域内是公平的,如果稀疏模型在精度上与稠密模型相等也是公平的。但是如果他们说“我们可以和GPU一样快(如果我们使用的模型不那么精确)”,这就不是一个好的比较。

还有网友称,自己多年来也一直在用CPU训练神经网络,不过他们没有Neural Magic那么大胆的宣称在所有情况下始终能够以最快的速度运行。

对此,你怎么看?欢迎各位技术大大在评论区分享经验~

更多相关讨论详见:
https://www.reddit.com/r/MachineLearning/comments/dtircc/d_is_neural_magic_a_scam/

相关实践学习
部署Stable Diffusion玩转AI绘画(GPU云服务器)
本实验通过在ECS上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。
相关文章
|
1月前
|
弹性计算 人工智能 Serverless
阿里云ACK One:注册集群云上节点池(CPU/GPU)自动弹性伸缩,助力企业业务高效扩展
在当今数字化时代,企业业务的快速增长对IT基础设施提出了更高要求。然而,传统IDC数据中心却在业务存在扩容慢、缩容难等问题。为此,阿里云推出ACK One注册集群架构,通过云上节点池(CPU/GPU)自动弹性伸缩等特性,为企业带来全新突破。
|
2月前
|
监控 异构计算
Jetson 学习笔记(八):htop查看CPU占用情况和jtop监控CPU和GPU
在NVIDIA Jetson平台上使用htop和jtop工具来监控CPU、GPU和内存的使用情况,并提供了安装和使用这些工具的具体命令。
176 0
|
27天前
|
机器学习/深度学习 测试技术 PyTorch
深度学习之测量GPU性能的方式
在深度学习中,测量GPU性能是一个多方面的任务,涉及运行时间、吞吐量、GPU利用率、内存使用情况、计算能力、端到端性能测试、显存带宽、框架自带性能工具和基准测试工具等多种方法。通过综合使用这些方法,可以全面评估和优化GPU的性能,提升深度学习任务的效率和效果。
33 5
|
2月前
|
机器学习/深度学习 人工智能 并行计算
CPU和GPU的区别
【10月更文挑战第14天】
|
2月前
|
机器学习/深度学习 人工智能 缓存
GPU加速和CPU有什么不同
【10月更文挑战第20天】GPU加速和CPU有什么不同
66 1
|
3月前
|
机器学习/深度学习 测试技术 PyTorch
深度学习之测量GPU性能的方式
在深度学习中,测量GPU性能是一个多方面的任务,涉及运行时间、吞吐量、GPU利用率、内存使用情况、计算能力、端到端性能测试、显存带宽、框架自带性能工具和基准测试工具等多种方法。通过综合使用这些方法,可以全面评估和优化GPU的性能,提升深度学习任务的效率和效果。
312 2
|
3月前
|
人工智能 自然语言处理 文字识别
MinerU-大语言语料处理神器,CPU/GPU均可跑,开源免费“敲”好用
在7月4日举行的WAIC 2024科学前沿主论坛上,书生·浦语2.5正式发布,面向大模型研发与应用的全链条工具体系同时迎来升级。
MinerU-大语言语料处理神器,CPU/GPU均可跑,开源免费“敲”好用
|
4月前
|
机器学习/深度学习 编解码 人工智能
阿里云gpu云服务器租用价格:最新收费标准与活动价格及热门实例解析
随着人工智能、大数据和深度学习等领域的快速发展,GPU服务器的需求日益增长。阿里云的GPU服务器凭借强大的计算能力和灵活的资源配置,成为众多用户的首选。很多用户比较关心gpu云服务器的收费标准与活动价格情况,目前计算型gn6v实例云服务器一周价格为2138.27元/1周起,月付价格为3830.00元/1个月起;计算型gn7i实例云服务器一周价格为1793.30元/1周起,月付价格为3213.99元/1个月起;计算型 gn6i实例云服务器一周价格为942.11元/1周起,月付价格为1694.00元/1个月起。本文为大家整理汇总了gpu云服务器的最新收费标准与活动价格情况,以供参考。
阿里云gpu云服务器租用价格:最新收费标准与活动价格及热门实例解析
|
1天前
|
机器学习/深度学习 人工智能 编解码
阿里云GPU云服务器优惠收费标准,GPU服务器优缺点与适用场景详解
随着人工智能、大数据分析和高性能计算的发展,对计算资源的需求不断增加。GPU凭借强大的并行计算能力和高效的浮点运算性能,逐渐成为处理复杂计算任务的首选工具。阿里云提供了从入门级到旗舰级的多种GPU服务器,涵盖GN5、GN6、GN7、GN8和GN9系列,分别适用于图形渲染、视频编码、深度学习推理、训练和高性能计算等场景。本文详细介绍各系列的规格、价格和适用场景,帮助用户根据实际需求选择最合适的GPU实例。
|
24天前
|
弹性计算 固态存储 Linux
阿里云服务器、轻量应用服务器、gpu云服务器收费标准与实时活动价格参考
云服务器ECS、轻量应用服务器和gpu云服务器是阿里云的主要云服务器产品,目前轻量应用服务器2核2G收费标准为60元/月,活动价格只要36元/1年或68元1年,云服务器1核1G包月收费标准最低为24.0元/月,GPU云服务器中gn6i实例4核15G配置月付1681.00/1个月起,gn6v实例8核32G配置月付3817.00/1个月起。本文为大家整理汇总了阿里云服务器、轻量应用服务器、gpu云服务器的最新收费标准与活动价格情况,以表格形式展示给大家,以供参考。
下一篇
DataWorks