MLCommons:为每个人提供更好的机器学习
介绍:
MLCommons致力于通过三大支柱为每个人构建更好的机器学习。我们创建了基准测试,如MLPerf套件,用于衡量从微瓦到兆瓦的机器学习训练和推理速度。我们构建了大型、开放和公共的数据集,如《The People's Speech》(3万小时带标签的语音)和《Multilingual Spoken Words Corpus》(50种语言的2300万条话语的关键词识别),以激发社区的创新力。此外,我们建立了最佳实践,如MLCube,它为机器学习模型提供了一个通用的容器接口,使它们更容易共享和使用。
演讲内容:
我将简要介绍一下MLCommons,就是负责管理MLPerf的组织。
正如接下来几分钟你将看到的那样,MLPerf是机器学习领域的行业标准性能基准集。
我们将深入讨论MLCommons的角色,为什么我们需要进行性能基准测试,为什么构建大型数据集是必要的,为什么制定最佳实践是关键的,以及未来的发展方向。最后,我们将进行互动讨论,并在最后向观众提出一些问题。
这里的每个人可能都对我们作为人工智能和机器学习社区所做的创新有一些了解。我非常激动的一件事是,2019年我在北京时,虽然我不懂普通话,但我能够使用手机在商场里自己点餐并四处走动。这真的很酷,而这一切都是由机器学习支持的。
在路上看到特斯拉,听说有自动驾驶汽车的支持,可以挽救数万条生命。在医学中应用人工智能和机器学习的潜在影响是巨大的,这对整个社区来说真的很令人兴奋。
而且,这是一个庞大的市场。我可能不需要告诉你,这里有数十亿美元的市场。如果挽救生命的动机还不足够的话,显然我们都赞成在赚钱的同时改善世界,这是一个巨大的市场。
但我想指出的一点是,机器学习实际上是一项仍处于萌芽阶段的技术。如果将其与航空或电力相比,我们仍然处于早期阶段。在早期的飞机阶段,有人曾说:“我们将制造一架看起来像自行车的飞机,你骑着像鸟一样摆动,然后就可以起飞了。”现在事实证明,波音737使用了略有不同的原理,这是幸运的。但我们仍然处于这个早期阶段,目前还不太清楚未来的标准和最佳实践会是什么。
对于那些仔细关注机器学习的人来说,你们知道,在过去的五年内,我们看到了Transformer的发明,这在自然语言处理中非常常见,但现在也在其他领域以一种探索性的方式使用。我们还不知道它最终会对领域产生怎样的影响,因为书中的那一页尚未写出,这正是关键所在。这也是我们想要从手工制作的机器学习过渡到广泛可访问的阶段的原因。我们需要类似可互换零部件的东西,我们需要成熟的技术来在更多公司之间建立和普及人工智能和机器学习。
这确实是我们的目标,我们希望提供基础设施、构建模块,并助力加速该行业的发展。
因此,如果你稍微退后一步,当我们启动MLCommons时,第一个问题是,为什么要创建另一个组织呢?毕竟已经有很多行业标准组织,比如IEEE,他们在协同工程方面做得很好。你还有开放计算项目,他们也在工程方面做得很好。然后还有一些人工智能和机器学习的组织,比如合作伙伴关系的人工智能,他们非常关注政策。我们发现实际上没有一个组织处于专注于机器学习和协同工程的“韦恩图”的交叉点上。因此,这就是我们构建的组织,我有幸担任领导。
我们是一个全球性的组织,这些是我们会员公司的标志,我们覆盖了七大洲中的六个。如果有人知道一家总部位于南极洲的公司,请事后与我联系,或者如果你知道那里有一个学术站,请告诉我,我真的很希望能覆盖七大洲。
我们实际上是由学术界和工业界共同发起的,因此MLPerf的第一次会议是由一半的学术界人士和一半的工业界人士参加的,因此我们有这个非常强大的学术传统。
关于MLCommons的资金来源是来自会员公司还是来自基准测试审计过程,或者两者都有?
这是一个很好的问题。我们所有的资金都来自会员公司,我们有两个会员资格层次。首先是小型公司,人数超过10人但不到500人,或者如果是一家相对新的公司,人数超过500也算作小型公司,前五年也算。然后,如果人数超过500且有五年以上的历史,那么就被分类为大型公司。
我们非常幸运,MLPerf的成立时间比MLCommons早得多,所以让许多创始人加入我们并不是一个问题,我们有一个很棒的会员名单。学术界不需要支付任何费用,人数不到10人的小公司只要合理就不需要支付费用,我们不想要像在小屋里一样的五个家伙,一无所有。但如果你有一个合法的初创公司,我们不是要从种子轮融资的公司中赚钱,我们希望看到每个人都蓬勃发展。所以我们在整个社区中有很好的代表性。
回顾一下,MLCommons的目标是为每个人提供更好的机器学习,正如我所说的。我们有三个支柱,其中之一是基准和度量,其中最为显著的就是MLPerf。还有其他一些我们正在关注的基准。还有构建大型开放数据集,对我来说,数据集实际上是机器学习的原材料,数据集越大……
当然是无偏的,当然是无偏的?
是的,对,这实际上涉及到一个很好的话题,那就是在许多情况下,偏见是由你的数据集决定的。我们都足够幸运,或者至少我假设在座的大多数人都住在美国,对吗?这是最具商业意义的经济体,因此我们对美国人的行为有大量的数据,但是没人感兴趣,对吧?
你在这里可能会看到一台在公寓或房子里找到的炉子,但如果你在印度的某个地方说到炉子,你实际上可能会想象到一个坦多里烤箱,完全不同的东西。所以,这些数据集是我们赋予更广泛社区力量的必需品。有很多专有的数据集,但如果你想使人工智能民主化,你需要那些对许多人来说是开放且可商业使用的数据集。
然后最后一部分是最佳实践,对我来说,最佳实践是关于去除阻碍(friction)。当今机器学习充满了各种阻碍,我们今天早些时候有人谈到了与存储性能相关的一些问题,但还有很多其他问题,即使你已经训练好了一个神经网络,以高效的方式部署它也可能是一个需要花费几周的过程。当我们能够消除这些阻碍时,我们将看到行业更快地向前发展。
所有这些的基础是研究,我们希望进行研究,探索能够使行业变得更好的新事物。
几个快速的问题:一个是在你所说的每个人中,你如何计算其中的人数,第二个是当你说“民主化”时,你能告诉我你的意思是什么吗?
通过每个人,是指全世界的每个人。理想情况下,我希望每个人都能够享受到机器学习的好处,所以如果我们制作一个数据集,理想情况下它将有助于全球的每个人,使机器学习解决方案更快地进行训练,将有助于我们和每个进行机器学习实验的人更快地运行他们的实验,这将使我们更快地获得更多创新。是的,这不是一个只想帮助某个国家,比如美国,或者任何特定国家的想法。我们是一个全球开放的组织,所以我们欢迎每个人,而且我们真的希望造福每个人。
David,你会如何对比MLCommons和OpenAI这样的组织,它们也致力于使人工智能民主化?
我认为OpenAI在某种程度上有一个非营利组成部分和一个营利组成部分,他们非常努力地致力于自然语言处理NLP以及通用人工智能AGI。首先,我们是501(c)(6)结构,因此我们是一个产业联盟,这不是OpenAI的组织结构,据我所知,OpenAI有一个营利组成部分,那是一个标准的营利公司,我相信还有一个非营利组成部分。
但我们不会去筹集资金,OpenAI做了很多了不起的事情,他们有相当庞大的团队,我大约有七名工程师,在很多方面,我们都是同路人,我认为他们的目标在某种程度上与我们的相似,尽管对我们来说没有盈利动机,对我和我的组织来说,胜利在于如何让蛋糕变得更大。
我对MLPerf有基准测试的了解,但我之前并未察觉到你们还参与数据集的治理和生成,以及最佳实践。
实际上,数据集和基准测试之间存在真正的协同作用,稍后我会详细谈一下这个,但为了突显一些内容。
如果你建立自己的数据集,就会知道如何提高性能。
这实际上是跨多个实例的标准等等。
我们面临的一个挑战是,当我们启动一个我们想要进行基准测试的任务时,比如语音转文本,我们发现当时可获取的数据集与被认为是工业相关的数据之间存在几个数量级的差异。例如,当我们启动时,最大的公共语音数据集只有大约一千小时,对于训练端到端语音识别网络来说是不够的。因此,我们认为,如果我们要创建一个在商业上具有相关性的基准,就需要解决这个问题。在机器学习和其他一些基准之间有一个区别,其他基准可能可以使用虚假数据,但在机器学习中你不能这样做。
让我们谈谈为什么基准很重要。对我来说,基准有几个重要的点,其中一些可能有点微妙。我们都知道你可以使用基准来击败竞争对手,对吧,我们都看到过。但在许多方面,我认为最重要的是实际上推动对“更好”是什么的一致性认识。
当我们开始MLPerf时,我们看到人们进行毫无意义的比较。如果我可以打个比方,就像有人拿着一辆车来告诉你:“我的车时速可以达到200英里。”下一个人说:“我的车可以在四分之一秒内转弯。”而像我这样的聪明消费者可能会说:“我住在旧金山,在城里我不能超过40英里的速度,如果我那么快通过一个停车标志,我会撞死人的。所以也许速度并不是正确的度量标准,也许真正的度量标准是我多快能去趟杂货店,然后回来,以及成本是多少。”
所以我们需要好的度量标准,而基准的目的是在全球对每个人,包括消费者、研究人员、销售和市场营销,统一对“更好”是什么的看法。一旦你达到这种一致性,你就开始像图片所示的那样共同努力,迅速前进。这实际上是一件令人兴奋的事情,因为你可以通过这种协议推动的进步速度是非常快的。
当然,基准并不是完美的,我们都知道这一点。所以我有点把它类比为导航,使用我的基准是否能准确指向正北,可能并不完全准确,但我们可能只是偏离了四五度,但我们会一起前进,这才是重要的部分。
这里有一些关于我们如何共同推动性能的新闻报道,还有一些关于MLPerf前三轮训练的数据。是的,字体有点小,但关键是我们正在推动性能得相当好。希望这是完全可读的。
所以我想做的一件事,来展示基准对行业的影响,我在底部绘制了从摩尔定律预期的轨迹。摩尔定律说,每 24 个月我们就会将晶体管密度翻一番,所以如果你假设这等同于性能,那么在大约两年半的时间里,你会期望得到两倍半的性能提升,这很好。
但是如果你看看我们从一开始就一直使用的三个基准的性能,你会看到我们看到的性能提升更像是 16 到 30 倍。所以比摩尔定律快得多,我们的进展速度比摩尔定律更快,实际上这甚至低估了性能,因为对于蓝线和红线,都有一个星号,如果你能看到细节,但你不能因为它在屏幕之外,那个星号会告诉你我们实际上提高了准确性要求,所以它实际上进行了更多的计算。所以如果有什么的话,这低估了。
David,看起来好像在2019年之后事情变慢了,这背后有一个理性的原因吗?我是说,不是因为新冠疫情,不是的,这是2019年6月1日。所以它几乎就像是在正确追踪摩尔定律,可能如此,它从3.2上升到6.8,所以我将在这个演示文稿的一些未来幻灯片中深入挖掘一下。
我会说的是,如果我们看一下这里的点,每一个都是所有基准测试同时提交的,所以这实际上是四轮基准测试。是的,你是对的,从第一轮到第二轮的改进相当大,如果我必须猜测,我会说这是因为有很多低的目标可以达成。现在我会谈一下这些低的目标的性质。
这是说,Mask RCNN,这是所有基准测试的平均值?这是什么样的基准测试,David?
我们有的基准测试套件,根据套件的不同,大约有四到七个基准测试,每个都不同,所以这个。所以共振50是图像识别,SSD ResNet 34是一个带有ResNet 34骨干的目标检测器,然后Mask RCNN是一个更复杂、计算成本更高的两阶段分割器,所以这些都是视觉基准测试。视觉基准测试是唯一一直在每一轮中存在的,三个相当不同的神经网络,所以你看到的性能是这三个的训练时间。
在这里卷起的因素是30倍的性能。首先是摩尔定律,我们得到了更好的工艺技术,更先进的架构,以及更大的系统。一些早期的MLPerf提交大约是30或者100个处理器,而一些更近期的提交则更多,达到了500或者几千个。此外,还有软件的改进,整个软件栈在这里真的很庞大。如何在高级别上调整像高效PyTorch和TensorFlow这样的软件,比如说使用类似XLA的工具在代数层面更高效地进行调整。我们还有一些非常低级的线性代数库,可以为你的加速器或者CPU生成核心。因此,在网络方面也有改进。有很多杠杆可以操作,以达到我们目前所获得的30倍性能。
例如,摩尔定律线表示核心数与晶体管数量之间的关系。假设摩尔定律成立的起始日期,我们应该根据摩尔定律得到的晶体管数量的增加来衡量。
那第一个值是在2018年底的第一轮基准测试中。
在那之后有一些初始的收益,然后趋势逐渐平稳。
我认为这是公平的,而且这是基于这些基准测试的。现在我们也正在引入新的基准测试,但我对它们的完整历史并不了解。我们当前的推荐引擎是几年前引入的,相对较新。BERT是最新的,而最老的两个NLP基准测试实际上已被我们取代。我们有一个基于Transformer的,还有一个基于递归神经网络的语音和NLP基准测试。这两个都被BERT Large取代了,而BERT当然是GPT-3的表兄弟。因此,我们增加了和移除了基准测试,这是ML中的另一个挑战,一切都变化得如此之快。我们在确保与客户和学术界的交流方面付出了很多努力,以确保我们保持了与时俱进。
稍微离题一下,这是我们拥有的MLPerf基准套件,它们大致按照从最高能量级别到最低能量级别排列,我喜欢开玩笑说我们从微瓦到兆瓦都包括在内。
最大的MLPerf提交是在MLPerf HPC中,日本的理研提交了使用富岳的一半,这是世界第一的超级计算机,根据Top 500的说法。原来超级计算时间是要花费一些代价的,所以,也许下次,Satoshi真是太棒了,这是那个带领这个工作的绅士,我非常高兴他能参与,我认为他们对于有真实的工作负载感到非常激动。
我们有训练,我刚刚向你展示了MLP训练的数据,那更多地是面向商业的训练基准测试,而HPC实际上是针对大规模超级计算机的科学问题的。我们有数据中心和边缘推断,它们使用许多相同的网络,但在某些情况下有一些不同的指标。
我们在Android和iOS上都有一个移动应用程序,目前实际上如果你有兴趣运行它,我们可以提供给你,它确实可以在Windows上启动,但还没有产品化。然后我们有一组面向MLPerf Tiny的IoT基准测试,用于嵌入式微控制器执行唤醒词检测等任务。
这些基准测试例如可以在标准GPU上运行,但也可以在FPGA上运行,也可以在Cerebras等解决方案上运行,基本上可以在几乎任何你想用于AI训练或推断的东西上运行?
我会说广义上是对的。对于HPC的训练和推理,基准测试的规则实际上非常灵活,因为我们希望它既公平又有用。对我来说,公平意味着Cerebras、NVIDIA、CPU以及FPGA都处于一个公平的竞技场上,所以我们允许人们在一定程度上更改基准测试以优化其架构,以便我们不是在暗中选择赢家。
有些事情在不同的设备上运行可能没有意义,比如移动基准测试使用TensorFlow Lite,可能不会在数据中心GPU上运行,而IoT基准测试确实是为低级微控制器设计的,可能不会在高端处理器上运行。但看到Yahoo如何运行IoT Tiny可能很有趣,这可能很棒,你可能能够让他们在一个节点上运行它。
另外一个我想到的是,对于一些这些设备,它们是非常标准化的设备,所以你可能只需要在iOS上运行一次移动应用程序,例如,因为一旦它在iPhone 14上的性能如何,你就不需要再次运行它了,是吧?
我不同意。
这样吧,我不需要再次运行它,你只需要运行一次,然后我们就知道整个设备类别的性能了。
对于智能手机来说,实际上在软件堆栈中有很多复杂性,因为你可能会有可能通过空中传输交付的驱动程序更新,可能会有操作系统的升级,这可能取决于你的运营商。移动设备的事实实际上是一个令人惊讶的头痛。我进入这个的一个假设是,好吧,我们解决了推理,移动是推理的一个更容易版本。但事实证明,网络更小,更简单,计算需求也不那么高,但是移动生态系统真的很混乱。
我认为其中很大一部分原因是因为它们有很多的操作系统算法,它们在每次操作系统更新时都会发生变化,并且在你的设备处于低功耗状态或高功耗状态或电池状态变化时,设备的操作方式也会随之改变。关于我分配多少资源的问题,因为我知道,例如,iPhone在低功耗状态时,会改变其行为,以及它将分配给各种事物的资源有多少,所以根据你的电池电量水平。
我认为这可能适用于我们通常展示的性能图中的很多情况,其中性能的变化不仅仅是摩尔定律推动的,实际上还涉及到组件之间的交互以及潜在地将一些功能卸载到其他系统组件上,而不仅仅是中央处理器,所以我看了看,这并不是非常令人惊讶的性能,因为在做这些更快的摩尔定律时,还有各种各样的硬件和软件优化。
是的,没错,确实有不同的情况。我确实见过,即使在移动手机这个类别中,一些网络对于某些加速器来说更容易卸载,而另一些则不同。实际上,有几年前,Facebook的一些人发表了一篇论文,其中提到了特定于移动手机的挑战。我有一部新手机,全新的手机,但有数十亿的人仍在使用旧手机,它们没有有效的GPU,也没有神经网络加速器,因此你必须让你的核心功能在CPU上运行,以便在整个世界范围内部署它们。现在你得到了一部更快的手机,你可以做更多的事情,但是,这确实在某种程度上影响了事情。
现在好的一面是,如果你看过去的几年,大多数高端手机确实具有加速功能,这很棒,我认为我们可能为此做出了一点贡献,但你仍然可以得到一些无法放到加速器上的网络,你仍然必须退而求其次。
我们有一个新兴的以存储为重点的小组,专门研究为ML构建基准测试。我们发现在许多这些大型系统中,特别是对于训练,人们会建立大型计算集群,然后存储可能无法跟上,因此,我们如何帮助客户了解什么是正确的存储解决方案,存储对于训练NLP网络与推荐器与视觉的差异是什么,这是一个非常有趣的问题。
说到存储,David,看到MLPerf的结果更多地指示了基础架构而不仅仅是GPU和CPU以及一些软件选择的堆栈元素,存储将是一个很好的补充,但目前它并不可用。
是的,我认为总的原则是我们的目标是,我们网站上的结果信息应足以复现和提交。
现在我要批评一下NVIDIA,我不喜欢挑别人的毛病,但是NVIDIA可能是一个容易的例子,就是如果你有一个DGX,它自带一定量的存储空间,
那么不同的DGX可以有不同的存储配置,
如果这是相关的,应该有文档记录,可能存储配置除了是否有足够的空间存储数据之外,与性能无关,我不知道,例如,在DGX内的配置选项是否可以改变SSD的数量和它们的带宽,这是一个很好的问题。
你了解CloudPhysics吗?CloudPhysics是一个大概七八年前存在的公司,他们的做法是实际上构建了一个非常广泛的数据库,涵盖了各种各样的配置。他们实际上不仅仅是这方面,那方面的,而是构建了一个完整的数据库,涵盖了所有不同的情况,并列出了各种性能类型的度量标准,不仅仅是测量ML类型的性能,而是他们构建了他们声称包含数百万种不同配置的数据库,以及各种不同配置的各种不同数据。
这些配置,那么MLPerf的提交将是为单个配置。无论提交者或供应商想要提交多少配置,不一定是供应商,如果你真的看一下我们的结果,一些云方面的人正在提交大量东西,一些最终用户也在购买服务器并可能提交它们,但做类似于更详尽的搜索实际上可能非常耗时。
给你一个大致的概念,对于MLPerf训练,大多数基准测试的大致运行时间将是一周,使用单个V100,现在显然整个基准测试的运行时间可能是几分钟,甚至更短,但如果你使用了许多计算设备。
我只是简单地指出,他们实际上强调了从各种不同人那里收集数据以及确切的配置,我认为我们在文档化配置方面可以做得更好。
我认为他们已经有了这方面的信息,只是没有完全公开宣传。
是的,我认为我们以后可以讨论这个问题,我实际上非常想改进这个问题,这是一个问题,如何让提交者整理披露和所有配置的信息。
你是否要审计基准测试,或者它是如何工作的?
很好的问题,所以这些提交轮都是同时进行的,正是出于这个原因,它们都是由其他人进行同行评审的。我们对推理和移动基准测试进行了审计。你不需要以相同的方式对训练进行审计,但是,我们确实进行审计,它都是由同行评审的。发现错误并进行纠正并不罕见。
在训练方面,我们依赖于在训练会话期间生成的数据的准确性。你必须达到一个目标准确性,比如99.0或……
不,就像一个训练准确性的例子可能是75.9的top one图像识别,所以你必须达到这个目标,那时你就完成了任务,那时你就有时间进行训练。
而这不需要审计,因为它将从日志中显而易见,您只需重新运行它,这是可以想象的,有人可能会提交虚假的日志,但那将会很快被发现。
您是在研究的基准测试吗?然后训练需要多长时间……
确切地说,是的,这是训练时间,而对于推理来说,就是推理所需的时间或每秒推理次数,这取决于具体的场景。我们有四种不同的情景,所以再说一次,实际上很多这些东西都很容易再现,也许不是完全一样,但肯定可以。我是说一些东西,如果它在云中是商业上可用的,只需前往Google或Azure并说:“这里有一千美元,我想要这个系统,我要运行这段代码,瞬间就能得到相同的结果,不一定会得到完全相同的结果,机器学习不幸地是内在的变量,尤其是在训练方面,很多都是随机的,某种程度上是随机的,你有随机初始化,但基准测试是运行五到十次,我们对结果进行平均,所以它应该在一个窗口内是可再现的,所以,如果你正在复制某些东西,并且看到性能与某个窗口上的性能相比有30的差距,那就是一个问题,我是说我们的目标是加减2.5%。
另一件事我想提一下的是,基准测试实际上被用于购买,我是其中一个为我而设立的优先事项是弄清楚如何让更多的客户能够有效地使用这些基准测试,这只是一个项目,所以我对此的任何反馈都很愿意。
关于训练方面的问题,您是否正在进行任何比较,比如准确性和训练时间之间的比较,因为显然如果你只能在70%的准确性下进行训练,可能训练速度非常快,但可能需要很长时间,而如果你将其提高到90%的准确性,可能会有更长的时间,但你会得到更高的准确性。
所以有人实际上正在尝试使用这个来做出购买决策,可能愿意牺牲一些准确性,或者可能愿意花更多的钱来获得更高的准确性。
是的,这两种方式都可以。这是他们可能通过MLPerf来回答的问题。
因此,准确性是一个固定的目标以衡量速度。其中一个挑战是准确性和性能之间存在非线性关系。因此,我们所做的是选择一个非常接近最先进的准确性目标,然后说:“超过这个并衡量速度作为这个的函数。”
现在有一些情况,对于推理,我们允许准确性略有下降,1%以下。因此,您会看到人们在一定范围内进行竞争。这可能是我知道有一些提交者专门进行提交,其中他们不进行量化,因为这是他们认为最有价值和最合适的方式。但准确性是一个主要的,我们认为那是质量,质量是一个主要的指标。
我认为MLPerf令人印象深刻的另一点是,所有您的模型和所有您的数据都是开源的。它们都在GitHub上,世界上的任何人都可以去那里,只需将它们下载下来并在您的笔记本电脑上运行。
是的,参考模型定义了正确性。但是,对于NVIDIA、Intel、AMD或Cerebros来说,最好的模型可能会有一点不同。但他们可以自由地继续前进。发布这些是其中的一部分。事实上,与大多数基准测试不同,我们所做的一切默认都是开源的。现在您可以在您的解决方案中使用专有软件。显然有很多人有闭源驱动程序和其他系统软件,所以我们允许这样做。但是,我们希望事情尽可能地开放和可重复。部分原因是如果您是客户,您可以去获取MLPerf的提交并查看:“这是我如何调整事物的方式,这是我应该运行的内容。”在某种程度上代表了供应商的建议。
是的,这几乎就像所有这些模型的参考架构。
没错。好的,转换话题到数据集。
其中一个我想要强调的关键点是,如果你看一下机器学习的历史,至少是最近的一轮,真正催化了一切的是ImageNet以及对在GPU上执行的卷积神经网络能够在ImageNet图像识别上击败人类的发现。ImageNet的成本约为30万美元,因此这不是一个微不足道的金额,但如果考虑ROI,它是令人难以置信的。现在的挑战是,大多数公共数据集在这个屏幕的一侧具有不太理想的特性,它们不太大,尤其是与像谷歌这样的公司可能内部拥有的数据相比。它们在法律上受到许多限制,因此您可能无法基于该数据集构建商业产品。此外,它们不可重新分发。
我们实际上在一些基准测试中遇到了这个问题,因为ImageNet本身就不能重新分发。您可能也不应该在商业上使用它,但请咨询您自己的律师。正如我们之前讨论的,很多数据集在多样性方面存在问题。当您看很多图像数据集时,它们是在西方世界生成的,并且不代表全球的代表性。此外,它们也没有变化。因此,您需要这些数据集不断发展,因为那是我们生活的真实世界,我们希望它们变得更大,更易于使用等。
那么,为什么它们不改变呢?因为人们已经完成了,他们认为已经完成了。或者您认为是什么原因导致了这一点?
当你说它们不变时,部分原因是很多这些数据集是由学者建立的。如果考虑ImageNet是一个很好的例子。如果您考虑ImageNet是一个很好的例子。例如,我认为是费尔利的小组走到一起,他们建立它。毕业生项目在工作。
这就是我的意思,他们完成了。
要么是资金,要么是他们为某个特殊目的而建立它,然后将其免费提供给世界,或者完全是这样,要么他们可以将其用作某种投入生产的基线,某种情况下,他们可能无法提高学习板。我只是试图弄清楚原因,因为我们正在讨论这是错误的方式,这是我们认为是正确的方式,我想知道事情为什么会出错。
我是说,实际情况是构建数据集很性感和有趣,你会从中得到论文,但维护就不是那么有趣了,这是经典的工程问题。实际上,MLCommons的一部分是我们希望成为数据集花园的园丁。你必须拔除杂草,你必须种植新的东西,你必须给花园施肥,这是我们的目标。
我们有两个我们构建的数据集,第一个是专注于语音转文字,这在这里有点说明了挑战。首先,语音界面将在本十年中几乎普及,你的手机有它,许多智能音箱有它,智能电视等等。但是,如果你看看,但有很好的覆盖范围,比如英语和普通话,但一旦离开这个范围,情况就变得非常非常困难。
我猜这是个带有隐含问题的问题,但我还是会问,虽然我承认这是个带有隐含问题的问题,那么有没有特殊的倡议来捕捉像我们认为的濒危语言,比如土著民族的语言,不是拉丁语,对吧?
那些是我们目前没有参与的,但我认为Mozilla的Common Voice项目正在朝这个方向做一些工作。但我认为棘手的问题在于找到说这些语言的人。
这就是为什么我会这样说,而且如果你构建这个数据集只是为了帮助训练模型,那么包括一个真正濒危的语言,只有14个说话者,你可能不需要那个来训练现代手机的东西,所以这是我对语言范围的担忧。现在我要使用“偏见”这个词,但我并不是以常见的方式使用,我只是在数据方面使用它,就是人口规模的范围,小点的大小,解决了多少你的问题,但使用数据集的其他人可能希望它包括这些东西。
我们构建的第一个数据集仅包含英语,30,000小时的标注英语语音。当我们开始时,最大的数据集,我在和你们的播客上谈到过,大约是几千小时,而你大约需要15,000小时来训练一个端到端的语音到文本模型。所以我们最终有了约30,000小时的语音,CC-BY许可,所以任何人都可以在互联网上获取它,假设他们有几TB的存储空间和一些耐心。我们在去年的NeurIPS上发布了它,有一件好事是,实际上这是有点嘈杂的文本,里面有布道,有政治会议,不只是我现在所给的这样干净的音频信号。我们的麦克风离我很近,大多数人不会发出噪音,我们没有救护车经过,但我们确实希望在未来能够获取更多的口音和不同语言的多样性,以及更现实的语境。我们希望去收集在一个鸡尾酒会上的演讲。
第二个数据集是,这个我想深入研究一个特定的维度,我想在多语言口语词汇库上进行广泛的研究。你们大多数人可能都熟悉关键词识别,对吧,所以,“Alexa,打开车库,哄孩子睡觉,去买个礼物。”哦,顺便说一下,如果你的Alexa实际上不能哄孩子入睡,那真的很棒,你应该商业化这个。这是个巨大的市场。这就是关键词识别。
你意识到我现在必须回家关上我的车库门,到底是什么让每个人的车库门都打开了呢?
哦,我是说,有时候你要小心。
我们有50种不同语言的关键词识别,有大约2300万个话语。所以这里有一件很酷的事情,大多数这些语言没有现有的免费商用数据集,而且其中一些语言的说话者数量很多,比如乌克兰语有3000万说话者,直到我们发布这个数据集之前还没有乌克兰语的关键词识别数据集,这些建议的语言的说话者总共有50亿人,这真的很棒,所以当我考虑多样性和广度时,这真的很酷,当我们发布这个时,这些不是死掉或濒危的语言,但我们得到了来自加泰罗尼亚语和巴斯克语演讲者的很多热情反响,这些是非常充满活力的社区,但规模并不是很大,所以周围有很多热情。我们会随着时间的推移维护它,改进它,你可以在网上获取它,用于任何你想用它的地方。
那么,您是在收集现有的录音还是寻找新的录音呢?
这是从Common Voice中提取的,Common Voice是我提到的Mozilla项目,所以他们有一个网络界面,任何人都可以去他们的电脑上说点什么,录下来。然而,仅仅这样做是不足以获得标签的,这让你有了音频,但关键是要获得标签,这样你才能真正用它来训练。如果你读过NeurIPS的论文,它有关于这个的详细信息。但这里的一个关键点是获得标签,这样你就可以真正用它来训练,这意味着注释一些东西,比如时间,你说这个词时是什么时候,这个词是什么,还有其他你可能想要生成的东西。
你说它一直在维护,那么你是否不断寻找新的材料,因为显然语言会随着时间的推移而发展得很快。
是的,我们希望有像定期发布一样的频繁更新,是每个季度还是每半年一次,还不确定,但是我们肯定想要维护它并增加我们拥有的数据量,我们肯定看到有更多数据和更广泛数据的可能性。
你的ML性能基准测试中很多都有与其相关的大规模数据集,你这里并没有谈论这些,对吧?
实际上,如果我们回头看,“People's Speech”的最初动机是为了获取一个我们认为足够大的数据集用于基准测试,所以我们实际上可能会在我们的一些基准测试的未来迭代中使用这个。
你的推荐引擎有NLP,你有目标检测医学图像,等等,对吧?
我的意思是,我们可能有大约10个不同的数据集,也许有十几个数据集,我们在基准测试中使用,说实话,这对我们的组织来说是一个重大的努力。我认为我们计算过我们在这上面花了多少钱,我认为我们花费了大约五万美元来构建这个数据集。我们粗略估算的是,通过现有的商业工具来制作这个数据集,比如支付某人来进行转录,可能会花费几百万美元。所以,这里的一个核心观察和目标之一是,我们如何更智能地使用计算来构建数据集,但有时候数据确实很难获得,特别是在推荐方面存在大量的隐私问题。我很想构建一个在商业上相关规模的推荐数据集,这是一个非常困难的问题。
正如我所说的,ML的一个挑战是存在很多阻碍,我喜欢突出这一点的方法之一是,我谈到了BERT实际上是自然语言处理中的一种开创性模型,我认为它是在2017年由谷歌首次发布的,它彻底改变了语言学和NLP的做法,每个人都在采用某种BERT的变体,但当它被发布时,它只是一篇论文和一点在TensorFlow中的代码,由谷歌制作。
因此,研究人员的第一反应是,他们说,我们想去重现那个结果,看看它是否真的有效,但是,如果你在Facebook,你不能使用谷歌的基础设施,如果你在Azure,你不能使用谷歌的基础设施,它会看起来不同。所以,事实上重现这一点的人们制作了自己的BERT变体,大约花了一年的时间,我的真实估计是,可能有三到四个月的时间,只是像移植代码和让它运行这样的体力劳动。
实际上要重现一个现有的系统是有很多工作的,因此我们的一个目标是,我们如何缩短这个时间,使其像一个小时左右,所以我们有一个名为MLCube的项目,它的想法是它是容器化的一个扩展。这个想法是我们希望容器真正成为黑匣子,你只需要说,我拿到了这个容器,我按下训练按钮,过了一段时间模型就出来了。所以这是一个非常简单轻量级的接口集,而且这个想法是再次为ML启用可重现性和可移植性。
关于ML的训练和推理?
你可以用它进行推理,它在训练模型的背景下可能最有用,甚至可能用于构建一个复杂的管道。实际上,我们的一个成员公司一直在内部使用MLCube来进行服务器验证和测试工具,以获得更好的可重现性。像Docker这样的东西的一个挑战是你实际上关心里面是什么,你需要知道里面是什么才能操纵它,所以拥有这种黑匣子般的界面实际上是非常有价值的。
我们有一个,它基本上是采用发布和运行模型,你把东西打包成MLCube,然后你为它准备运行环境,我们有为本地机器、多种云以及Kubernetes准备的运行环境。如果你感兴趣,你可以访问URL了解更多。
我提到了研究,所以我们正在进行一些其他的工作,我们有算法研究,这是如何提高训练的效率或者获得更好的准确性。我们有一个名为DataPerf的项目,它目前处于非常初级的阶段,它关注的是如何提高准确性,但不是通过更好的模型,而是通过更好地处理数据集。例如,如果我们要谈论视觉,一个非常常见的做法是,你会从一组图像开始,然后可能会剪裁它们,旋转它们,以不同的方式扭曲它们,以增强数据集,从而帮助你获得更好的准确性。我们希望人们将数据视为机器学习中真正的第一类公民,那么我们如何进行不同的数据修改,以提高准确性,并让人们在这方面进行竞争。
其中一个让我非常激动的项目是医学研究工作组,专注于对医学模型进行联合评估。因此,以我身为一名日本研究人员的立场来看,假设我已经训练了一个能够预测心脏病发作的机器学习模型,我首先需要确认它在更多样化的人群中是否有效。我会尝试在洛杉矶的Cedars-Sinai医院或纽约的Langone医院运行它,因为虽然数据难以移动,但如何以安全的方式迁移模型、进行评估并获取结果,以及确定其是否普遍适用,是至关重要的问题。在这个领域有很多令人兴奋的工作,实际上这是MLCommons的一个概述。
事实上,我确实有一些问题想要提出,用于讨论。因为在这个组织中,我的目标是如何帮助这个行业。我们要讨论的一个重要方面是如何帮助媒体和分析师更好地了解MLPerf。你提到的一点是,我们希望在我们的基准测试中有更全面的披露和系统描述。我在这里是为了帮助行业中的客户以不同的方式使用MLPerf,因为它是开源的。我们希望人们能够在内部进行测试,所以如果你在开发编译器或数学库,请获取MLPerf,看看你如何改进它。你不必支付我们,只需获取代码并执行。
---【本文完】---
近期受欢迎的文章:
更多交流,可添加本人微信
(请附姓名/关注领域)