打开网易新闻 查看精彩图片

人工智能推动了新数字格式的爆炸式增长,这些格式决定了数字在计算机中的表示方式。工程师们正在寻找各种可能的方法来节省计算时间和能源,包括缩短用于表示数据的位数。但适用于人工智能的方法并不一定适用于科学计算,无论是计算物理学、生物学、流体力学还是工程仿真。IEEE Spectrum采访了最近加入巴塞罗那Openchip公司担任AI工程师的Laslo Hunhold,了解他开发专门用于科学计算的定制数字格式的努力。

Laslo Hunhold是巴塞罗那初创公司Openchip的高级AI加速器工程师。他最近在德国科隆大学完成了计算机科学博士学位。

数字格式为什么让你感兴趣

Hunhold:我不知道还有哪个领域像这样,很少有人关注但影响如此巨大。如果你制作的数字格式能效提高10%,这可以转化为所有应用程序效率提高10%,能够节省大量能源。

为什么会出现这么多新的数字格式

Hunhold:几十年来,计算机用户的日子很轻松。他们只需要每隔几年购买新系统,就能免费获得性能提升。但在过去10年里情况并非如此。在计算机中,你用特定的位数来表示单个数字,多年来默认是64位。对于人工智能,公司注意到他们每个数字不需要64位。所以他们有强烈的动机降低到16位、8位甚至2位来节省能源。问题是,用64位表示数字的主导标准并不适合较低的位数。所以在人工智能领域,他们提出了更适合AI的新格式。

为什么人工智能需要与科学计算不同的数字格式

Hunhold:科学计算需要高动态范围:你需要非常大的数字,或者非常小的数字,在这两种情况下都需要很高的精度。64位标准具有过度的动态范围,在大多数情况下需要的位数远超必需。人工智能则不同。数字通常遵循特定分布,不需要那么高的精度。

什么让数字格式"优秀"

Hunhold:你有无限的数字但只有有限的位表示。所以你需要决定如何分配数字。最重要的部分是表示你实际将要使用的数字。因为如果你表示一个不使用的数字,你就浪费了一个表示。最简单的考虑是动态范围。其次是分布:如何将位分配给特定值?你有均匀分布还是其他分布?有无限种可能性。

什么促使你引入takum数字格式

Hunhold:Takums基于posits。在posits中,使用频率更高的数字可以用更高密度表示。但posits不适用于科学计算,这是一个巨大问题。它们对接近1的数字有高密度,这对人工智能很好,但一旦你看更大或更小的值,密度就急剧下降。在过去几年里,人们提出了几十种数字格式,但takums是唯一真正为科学计算量身定制的数字格式。我发现了科学计算中使用的动态范围值,如果你看所有领域,并设计了takums,这样当你减少位数时,不会降低动态范围。

Q&A

Q1:为什么人工智能的数字格式不适合科学计算?

A:科学计算需要高动态范围,既要处理非常大的数字,也要处理非常小的数字,在两种情况下都需要很高的精度。而人工智能的数字格式通常针对特定分布优化,不需要那么高的精度,因此不能满足科学计算的严格要求。

Q2:takum数字格式有什么特殊优势?

A:Takums是唯一真正为科学计算量身定制的数字格式。它基于posits但解决了posits的问题,确保在减少位数时不会降低科学计算所需的动态范围,能够更好地适应科学计算中各个领域的数值范围需求。

Q3:开发新数字格式能带来多大的效益?

A:如果开发出能效提高10%的数字格式,这可以转化为所有应用程序效率提高10%,从而节省大量能源。虽然很少有人关注这个领域,但它对整体计算性能的影响非常巨大。