《主算法》作者Pedro Domingos:做机器学习硬件不能只考虑深度学习

简介:

当前,软件进步的速度已经远远超过了芯片制造商可以实现的进步,这使得他们不知道该从何处开始,更不要说如何将它们已经年老的智慧整合起来。

【编者按】本文选自The Next Platform,由机器之心编译,作者:Nicole Hemsoth,参与:Rick、吴攀

在信息技术漫长的历史发展过程中,一直以来都是软件在努力跟进硬件的高速发展——以便开拓新的功能和大胆地实现从未有过的基准。

但是,随着机器学习和深度学习对静态应用程序的替代,我们进入了一个新时代:软件进步的速度已经远远超过了芯片制造商可以实现的进步,硬件设备制造商正在争先恐后地追赶。

这个问题本身就已经足够重大了,而且它是一种完全不同的架构上的问题,而不是通用设备曾经涉足的任何领域。不断缩小的芯片尺寸和不断增长的可靠性与速度已是司空见惯,但是随着新算法的出现和初具规模,以及不可思议地年轻且丰富的代码生态环境的涌现和进化,芯片制造商甚至不知道该从何处开始,更不要说如何将它们已经年老的智慧整合起来。

应对这个过渡期的一个简单方法是购买专业知识,相对更难的是自己开发构建。而且因为机器学习的代码基础非常丰富且在快速改变,现在还不存在什么标准的"正确方法"。据华盛顿大学计算机科学教授、《主算法(The Master Algorithm)》的作者 Pedro Domingos 说,在这所有的问题中间的根本分歧是设备想要满足新型用户的方式与部署代码实际所需的硬件之间的差异。

“过去没有让人信服的理由去生产机器学习芯片,但这种情况已经改变。”Domingos告诉The Next Platform。随着机器学习和深度学习的复兴,在GPU的硬件和软件上的成果得到了大规模地证明,这样发展下来,从而为其它研究领域的加速发展提供了路径。而且也正巧,GPU非常擅长深度学习所需要的基于矩阵乘法的问题。

《主算法》作者Pedro Domingos:做机器学习硬件不能只考虑深度学习

我们需要能够通过从大规模数据中提取出重要模式以便减少信息负载的计算机。这具有很多深刻的和令人着迷的科学问题:一台计算机如何自动决定对于目标知识哪种表征是最好的?它可以如何将真正的规律和机缘巧合区分开?可以如何利用预先存在的知识?计算资源有限的计算机如何学习?我们可以通过怎样的方式理解所得到的结果?

这些问题汇集起来让NVIDIA尤其在深度学习训练的市场中有了一个明确的起点,但正如我们在过去几年所见过的报道那样,其它专用架构(包括FPGA、定制ASIC、神经形态芯片等)也在迎合这一部分市场的不同硬件需求上看到了机会。当然,英特尔也看到了机会,抢先拿下了Nervana Systems和Movidius——这两家都是研发带有为机器学习优化过的软件的硬件的设备制造商。尽管在争夺多种机器学习用户的处理器份额上存在这样的追赶和战争,但通用处理器玩家和不断演进的多样化机器学习社区的需求仍旧存在根本上的脱节。

“现在的大公司——英特尔和英伟达——仍然还在试图搞清楚这个领域。这是一种不同的思维方式。从机器学习的角度看,我们可以说出需要从硬件制造商那里得到什么具体的基本能力,但其中的问题是更深层次的……搞机器学习的人可以告诉做硬件的人他们想要什么,但做硬件的人也需要告诉研究机器学习的人他们实际上能做到和不能做到什么。这样的互动才能得到有价值的结果。”而现在的情况是,先把硬件设备做出来,然后看哪种方法的研发是一种浪费——甚至在快速演化的代码基础上的应用价值也更少。

“深度学习只是一种类型的机器学习。不能因为某种芯片在深度学习上表现好就意味着它也适合其它类型的机器学习。”Domingos说,“硬件制造商真正需要考虑的问题是当一股仍旧较新的机器学习浪潮到来时,硬件可以如何足够灵活地支持它,而如果存在一些可被部署在硬件中的基本元素,那么它们也就可以随时间改变。”在过去五年这个机器学习的新黄金时代期间,有一些基本元素并没有发生太大的变化。Domingos说,通过关注这些方面,英特尔等公司可以获得早期的立足点。

微芯片的发明过去是且现在仍然是一件激动人心的事;它是超级可靠的,它是完全确定性的;而且因为固态电子器件是如此可靠,它能让我们不断研发新事物。没有其它领域有这种了不起的天赋。化学工程没有,机械工程也没有——它们必须忍受所有的垃圾和噪声以及会碎裂的事物。但在计算机科学领域内,我们并不是活在真实世界中——而是一个我们开发程序的世界中。而机器学习正在将我们带回真实世界。它是关于统计的,它是关于概率的。而且我们不会总是知道为什么这会有效或为什么它不会一直有效。

这可能会让我们机器学习领域里面的人感到迷惑,但像英特尔这样的公司——那里的人们习惯于可靠但僵化的东西——对机器学习抱有一种非常不同的心态。“对于以统计学作为开始的机器学习,不是所有东西都需要被固定和定义的。这里有一个巨大的机遇,但这种做事方式的心理转换——应用中80%的时间有效vs.几乎100%的时间有效——总比没有任何东西好,而且也好过于拥有一堆只能抓取5%的潜在使用案例的预编程规则。”

但通用硬件的阵营目前正在大力开发机器学习,而它们这么做却形成了软件上的劣势;害怕错过一个可能有利可图的市场。毕竟就在不久前,英特尔刚刚声明其在数据中心运行的超过半数的工作负载将会拥有一个机器学习组件。技术层面上听起来很夸张——人们不得不想要知道英特尔所说的机器学习意味着什么。这是一个包罗万象的对高级分析的定义?或者实际上是作为一个顶层智能带——叠加在所有其它数据库、数据管理和其他工具与应用程序顶层的一层新技术?如果这不算夸张,我们是否可以说,我们将在未来五年内看到静态分析的死亡?无论哪种方式,大公司正在大踏步地在这一广阔领域抢夺先机——有几家同时押注了几种不同的机器学习负载;事实情况也在证明着这一说法:英特尔的Knights Mill和对Nervana/Movidius的收购以及英伟达为深度学习训练和推理所研发的众多芯片(Pascal、M40/M40、Tesla系列等)。

因此我们已经理解了,在广泛的实际价值方面,通用处理方法的发展仍然滞后,仍然在延长机器学习的应用名单,这会给我们带来什么,又会让我们失去什么?一个答案是寻求定制ASIC,这方面有一些创业公司(尤其是那些专注于深度学习的公司)将其视为前进的方向。

“有关机器学习的关键一点是:该问题具两面性;机器学习所产生的学习和模型。一旦你学习了一个模型,那真的只是一个简单的程序,而且它很容易在一个ASIC中实现。但问题是你不知道那会是什么,直到你有了数据——这意味着这会是一种在学习的第一部分不同的ASIC。”那样前期代价就太大了,此外模型的发展会让没有快速重新配置能力的ASIC毫无用处——而FPGA应该在这方面效果很好 。

数据决定方法。更好的算法是灵活的,而更灵活的算法在ASIC中更难实现。这与我们在计算机科学中过去已经习惯的不同,但这是机器学习的本质;它不是确定的。这是硬件公司的学习曲线。它需要一种完全不同的思维方式。

事实上FPGA尤其是深度学习神经网络的另一种可能的加速器——深度学习神经网络可以被看作是一种“柔软(soft)”版的神经网络。和使用定制ASIC一样,其问题在于:直到收到数据通知否则我们无法知晓该问题。换句话说,你可以从一个FPGA或神经网络中得到的所有东西就是一个子网络(subnetwork)。因此尽管它或许可以在部分工作负载效果良好,但却不能完成所有工作。

当然,GPU、FPGA和定制ASIC不是目前唯一有希望的硬件发展趋势。Domingos指出神经形态设备也是一个有希望的领域。“使用数字器件来构建用于深度学习的神经元的效率已经远比用一般硬件和软件组合高了。意见分歧就在这儿,但在很好地处理这些工作负载上,这是一个很有前途的研发高效半导体器件的路径。”

Domingos的希望就是,我们将开始看到一些融入硬件的核心元素,以及那些为了进一步统一软件工具以支持不同机器学习负载的核心元素。“我们会看到,软件层面的统一框架将迁移到硬件层面(逻辑、图形模型、贝叶斯网络等)。它们必须在关键领域成为机器学习的标准,尤其是图形和相似度计算。这是一个会产生进步的地方。”Domingos说到,但他也同意,在硬件方面仍然是任何人都可以参与的——而且涉及到很多不同的领域。


原文发布时间: 2016-09-12 15:25
本文来自云栖社区合作伙伴镁客网,了解相关信息可以关注镁客网。
相关文章
|
2月前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的眼疾识别系统实现~人工智能+卷积网络算法
眼疾识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了4种常见的眼疾图像数据集(白内障、糖尿病性视网膜病变、青光眼和正常眼睛) 再使用通过搭建的算法模型对数据集进行训练得到一个识别精度较高的模型,然后保存为为本地h5格式文件。最后使用Django框架搭建了一个Web网页平台可视化操作界面,实现用户上传一张眼疾图片识别其名称。
185 5
基于Python深度学习的眼疾识别系统实现~人工智能+卷积网络算法
|
2月前
|
机器学习/深度学习 数据采集 监控
深度学习中模型训练的过拟合与欠拟合问题
在机器学习和深度学习中,过拟合和欠拟合是影响模型泛化能力的两大常见问题。过拟合指模型在训练数据上表现优异但在新数据上表现差,通常由模型复杂度过高、数据不足或质量差引起;欠拟合则指模型未能充分学习数据中的模式,导致训练和测试数据上的表现都不佳。解决这些问题需要通过调整模型结构、优化算法及数据处理方法来找到平衡点,如使用正则化、Dropout、早停法、数据增强等技术防止过拟合,增加模型复杂度和特征选择以避免欠拟合,从而提升模型的泛化性能。
|
10天前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于机器学习的人脸识别算法matlab仿真,对比GRNN,PNN,DNN以及BP四种网络
本项目展示了人脸识别算法的运行效果(无水印),基于MATLAB2022A开发。核心程序包含详细中文注释及操作视频。理论部分介绍了广义回归神经网络(GRNN)、概率神经网络(PNN)、深度神经网络(DNN)和反向传播(BP)神经网络在人脸识别中的应用,涵盖各算法的结构特点与性能比较。
|
18天前
|
机器学习/深度学习 算法 安全
基于深度学习的路面裂缝检测算法matlab仿真
本项目基于YOLOv2算法实现高效的路面裂缝检测,使用Matlab 2022a开发。完整程序运行效果无水印,核心代码配有详细中文注释及操作视频。通过深度学习技术,将目标检测转化为回归问题,直接预测裂缝位置和类别,大幅提升检测效率与准确性。适用于实时检测任务,确保道路安全维护。 简介涵盖了算法理论、数据集准备、网络训练及检测过程,采用Darknet-19卷积神经网络结构,结合随机梯度下降算法进行训练。
|
6天前
|
人工智能 编解码 算法
使用 PAI-DSW x Free Prompt Editing图像编辑算法,开发个人AIGC绘图小助理
使用 PAI-DSW x Free Prompt Editing图像编辑算法,开发个人AIGC绘图小助理
|
2月前
|
机器学习/深度学习 人工智能 算法
机器学习算法的优化与改进:提升模型性能的策略与方法
机器学习算法的优化与改进:提升模型性能的策略与方法
382 13
机器学习算法的优化与改进:提升模型性能的策略与方法
|
17天前
|
机器学习/深度学习 人工智能 自然语言处理
解锁机器学习的新维度:元学习的算法与应用探秘
元学习作为一个重要的研究领域,正逐渐在多个应用领域展现其潜力。通过理解和应用元学习的基本算法,研究者可以更好地解决在样本不足或任务快速变化的情况下的学习问题。随着研究的深入,元学习有望在人工智能的未来发展中发挥更大的作用。
|
2月前
|
机器学习/深度学习 算法 网络安全
CCS 2024:如何严格衡量机器学习算法的隐私泄露? ETH有了新发现
在2024年CCS会议上,苏黎世联邦理工学院的研究人员提出,当前对机器学习隐私保护措施的评估可能存在严重误导。研究通过LiRA攻击评估了五种经验性隐私保护措施(HAMP、RelaxLoss、SELENA、DFKD和SSL),发现现有方法忽视最脆弱数据点、使用较弱攻击且未与实际差分隐私基线比较。结果表明这些措施在更强攻击下表现不佳,而强大的差分隐私基线则提供了更好的隐私-效用权衡。
62 14
|
3月前
|
算法
PAI下面的gbdt、xgboost、ps-smart 算法如何优化?
设置gbdt 、xgboost等算法的样本和特征的采样率
118 2
|
3月前
|
机器学习/深度学习 人工智能 算法
机器学习与深度学习:差异解析
机器学习与深度学习作为两大核心技术,各自拥有独特的魅力和应用价值。尽管它们紧密相连,但两者之间存在着显著的区别。本文将从定义、技术、数据需求、应用领域、模型复杂度以及计算资源等多个维度,对机器学习与深度学习进行深入对比,帮助您更好地理解它们之间的差异。

热门文章

最新文章