该团队正在使用对并行计算的深入分析来加速大规模机器学习。
通过解构和分析大规模并行计算中使用的久经考验的方法,由KAUST领导的协作开发了一个突破性的框架,可进行大规模有效的并行计算。该框架与机器学习中优化所需的处理类型特别相关。
“并行化”优化或数据处理任务使任务可以分布在许多计算节点之间。理想情况下,这会将计算所需的时间除以征募到该任务的节点数。然而,伴随并行化,需要在节点之间传递越来越多的信息,这意味着在实践中永远无法实现理想的加速程度。
“在分布式优化中,常见的问题是通信瓶颈,”视觉计算中心的Konstantin Mishchenko解释说。“假设您有一台具有四个内核的计算机,并且希望在具有16个内核的新计算机上运行并行化程序。自然,您希望新计算机的运行速度快大约四倍。但是,即使新计算机具有四倍于总计算能力的资源,大部分是在每次模型更新时通过同步内核来占用的,这种通信瓶颈降低了增加内核数量的积极影响,并且在我们将内核数量扩展到数百或数千时变得更加严重。 ”
彼得·里奇塔里克(PeterRichtárik)小组的最新研究已通过两种方式解决了这个问题:通过改善每次同步传递的信息的压缩率,以及对学习算法进行泛化,使其可用于任何压缩方案。
米申科说:“最难理解的是为什么现有观念总是可行。”“通常,研究人员首先猜测需要使用什么技巧,然后才开始理解它为什么起作用。这正是我们所做的:通过使用简单的反例,我们重新分析了两个众所周知的技巧,并意识到是使用它们的更好方法。”
这些技术称为量化和随机稀疏化,是通常在隔离中使用的压缩方法。通过结合并且至关重要地仅压缩新信息和先前更新之间的差异,该团队在数学上证明了可以在减少信息丢失的情况下实现更有效的压缩方案。
米什琴科说:“最重要的一点是,这种新技术可以压缩当前信息与先前信息之间的差异,而不仅仅是新信息本身,可以确保在进行压缩时丢失的信息更少。”“而且我们已经在实验中证明并观察到,使用我们的方法进行缩放比更接近理想值。”
另一个发现将学习算法推广到一系列不同的优化任务中,从而使其可与任何压缩方案一起使用。
研究小组的塞缪尔·霍瓦斯(Samuel Horvath)说:“我们的动机是创建一个不依赖任何特定压缩方案的通用理论,以了解压缩对分布式训练的影响。”
使用该理论可以构建用于分布式计算的算法,而不会出现优化不完全和不依赖现有方法所面临的特定压缩方案的问题。
Horvath说:“这项工作有助于我们更好地理解不同压缩方法的效果,并帮助我们针对给定的问题选择正确的压缩方案。”