Raven:全球首个真正分布式深度学习训练协议

对于深度学习研究者来说,计算能力非常关键,但 CPU 和 GPU 资源往往是有限的。Raven 协议正是解决这一问题的良方。Raven 协议可以利用空闲的计算资源来训练深度神经网络,而这些资源均来自个人用户设备的分享。分享空闲计算资源进行深度学习训练的概念可以为资源使用者节约大量的研究成本,而资源的贡献者则可以得到 Raven 币(RAV)作为补偿 / 回报。

在一个普通的、计算能力有限的计算机上训练一个 AI/ML 模型往往需要数周甚至数月的时间。对于更好的计算芯片(GPU)的需求是一个必须考虑的成本因素。密集和频繁地使用高速计算资源来操作计算数据、计算和更新深度神经网络中不同神经元的梯度,其需要的成本往往是小型到中型公司和开发者无法担负的。云计算在一定程度上对这一问题有所帮助,但获取云资源来支持 AI 研发仍是一笔难以负担的开支。目前,在绝大部分云计算平台上,每小时所需支付的金额都在 2.5~17 美元之间。

对于中小型企业来说,要解决算力资源问题最简单的方式是通过众包。众包这一概念从很早之前便开始挑战传统经营模式,使得计算资源服务更加便宜、更加容易获得。Uber 和 Airbnbs 就是通过众包存活下来的代表。AI 世界也注意到了这种优秀的模式。Kaggle 平台的开发就是通过众包,利用海洋协议(Ocean Protocol)来收集数据。AI 生态系统非常欢迎这种新方法。而 Raven 协议的目标就是将众包火炬传递下去,通过对空闲计算资源的充分利用,建立第一个真正去中心化、分布式的深度学习训练系统,使深度学习模型的训练更为经济。

希望进行技术革新的 AI 爱好者和企业家们现在可以从 AI 研究中有所收获了,因为众包资源可以解决计算资源短缺难题。AI 社区中的许多成员,如 Singularity.net、Ocean Protocol、OpenMind、Deep Brain Chain 等等,都建立起了资源共享平台,用于在安全的区块链内共享计算和数据资源,进而助力机器学习 / 深度学习算法向商业模型的转变。

Raven 协议成功建立起了去中心化、激励性和安全的机器学习 / 深度学习模型训练机制。

经过几十年的发展,传统的神经网络相关算法已进化为深度神经网络(DNN),并在各种应用领域取得了巨大成功,尤其是模式识别领域。

这种基于训练的方法的理论局限是,一个 DNN 架构怎样在一个节点上训练、在多个不同的服务器上应用,或分割成数个部分并分发到数个服务器上训练。显然,这种训练方式极其消耗算力,所以只能在强大的 GPU 和服务器上进行操作。Raven 解决这一问题的方式是装配动态节点分配机制,对网络中的设备进行分工。这样,Raven 就可以消除主节点的所有依赖,并显著地减少任务所需的计算能力。

Raven 协议相较于其他相似规则的突出之处在于它处理异步更新及数据碎片的并行所产生的延迟的方法。这种延迟问题用其他方案无法解决,而且延迟在模型训练过程中是一个主要耗时因素,可能会消耗数周甚至数月。即使是拥有大量计算资源,对这一问题也无能为力。另外,如果想要让数据实现并行化,用户必须拥有可处理庞大计算资源的平台。这一因素使得规模较小的用户群无法访问该平台。Raven 协议允许个人用户贡献、分享空闲设备的计算资源,使得研究者对性能强大的 CPU 或 GPU 硬件的需求降到最低。分享空闲计算资源来进行训练的概念,会大大降低成本。作为补偿 / 回报,计算资源的分享者们会得到 Raven 币(RAV)。只需要在以太坊区块链中通过智能合同进行两步简单的校验,这种激励机制便可实现。

Raven 可以成功地将模型训练过程中所需的数量庞大的小型异步运算,搭建为一个动态图。