不更改一行AI模型的代码加速你的模型训练过程——AI模型训练加速库Nebulgym简介
1,303 阅读
加载中...
前几天初创AI企业Nebuly开源了一个AI加速库nebulgym,它最大的特点是不更改你现有AI模型的代码,但是可以将训练速度提升2倍。

nebulgym是一个Python库。它包含了最先进的优化技术,以帮助我们加速AI模型的训练过程。nebulgym大大减少了人工智能模型的训练时间,而不需要对训练设置进行任何修改。nebulgym优化了整个训练计算栈,从有效的数据加载,到更快的前向和后向传递,到更早的收敛等。
它的使用非常简单,如下所示:
@accelerate_dataset()
class MyDataset{…}
@accelerate_model()
class MyModel{…}
#Train your model as you usually do
也就是说,只需要在你先有载入数据集或者模型类上加上nebulgym装饰器即可。其他不用任何更改即可加速。下表是其测试结果:
这个测试是他们自己写的一个模型,epoch为10,batch size是8,可以看到,在不同的硬件平台上都有很好的加速表现。
除了这些加速外,nebulgym特点包括:
@accelerate_dataset,一个是针对模型加速的@accelerate_model。总的来说,这个库还是很有前景的,因为它真的很简单,使用conda或者pip都可以直接安装。它目前使用的技术就是在数据加载过程中进行加速以及通过稀疏策略(sparse stategy)和高效编译技术对前向和后向传播进行加速。我看了一下,目前代码完全由python实现,代码量不多。有兴趣的童鞋可以去GitHub上瞅瞅,学习试用一下。