Notebook——A New Golden Age in Computer Architecture: Empowering the MachineLearning Revolution

当今ML发展 = 可用的数据集 + 分析数据的计算资源

一、影响ML硬件设计的六个因素

1、Training

training(训练)和inference(推理)同样重要,但是training需要的运算操作以及硬件资源远超inference。所以ML硬件设计通常选择更简单,更容易扩展的推理部分入手

2、Batch Size

Batch Siz(批处理大小)对体系结构具有根本性意义,是操作数重用的实现形式。某些情况批处理大小会限制ML性能,这时增加Batch Size即可;有时候训练速率小于批处理大小,意味着Batch Size不是瓶颈,需要寻找其他算法或者体系结构方法来加速。

3、Sparsity and Embeddings

Sparsity:细粒度和粗粒度。本文认为粗粒度(coarse-grain)具有更大潜力: Mixture of Experts (MoE) models, 使用更少的触发器训练更多的权重获得更高的准确性。
Embeddings:嵌入能将大型的稀疏空间转化为更紧凑的,适合线性运算的紧密空间。(常用于Web搜索、文本翻译等,在大型数据结构中访问相对较小的数据)

4、Quantization and Distillation

inference所用到的技术可能在training方面也很有效,比如:Quantized(量化)和 Reduced-Precision Arithmetic (精简计算)。但是在精简计算和小规模模型只有少量工作。通常使用大规模模型引导小规模模型训练来获得更高准确度,但是我们能直接训练小规模模型来获得更高准确度吗?在较大模型训练是否一定能得到更高准确度呢?

5、Networks with Soft Memory

一些深度学习技术提供了类似随机访问存储器的功能,以期望加速内存访问。因为Soft Memory需要计算所有条目的平均权重,Hard Memory只需要从存储器中加载单个条目。

6、Learning to Learn (L2L)

神经网络模型本身可以用来搜索或开发更好的神经网络模型 :类似理解为以硬件资源成本增加换取人力开发资源减少与开发难度降低。

二、ML Hardware Fallacies and Pitfalls(ML硬件的谬论和陷阱)

Fallacy 1:ML问题的规模巨大,所以硬件设计应该集中精力在提升每秒操作数而不是解决时间。

 解决ML问题时我们首先需要知道衡量这个问题的正确指标,这样有助于理解ML问题从而更好地应用。吞吐量是易于收集的指标,但是不意味着它是唯一指标。对于面向用户的推理工作负载,延迟甚至比吞吐量更重要。 训练系统的最佳度量是收敛精度的时间,或者是将模型完全训练到所需精度的时间。

Fallacy 2:可以牺牲准确度来加快运行速度

 需要结合具体应用场景来小心权衡速度与准确度,在移动端应用精度要求不高往往可以这样做;但在高精度要求的应用中不能这样做。

Pitfall 1:使用去年的模型设计硬件

 在广为使用的基准程序出现前,使用ML领域,特别是ML竞赛最新的获奖成果作为优化目标来确保获得最有价值的设计成果。

Pitfall 2:设计ML硬件时忽略ML软件

 摩尔定律终结,不再有免费的午餐。了解ML软件运行规范的设计往往能取得更好的效果。

三、结论:巨大的机会

 ML计算量不断上升,传统微处理器上通用代码的性能已经随着摩尔定律和Dennard缩放而停滞不前,ML专用加速硬件有巨大发展空间。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值