PatrickStar 分布式深度学习训练工具开源项目

我要开发同款
匿名用户2021年10月29日
99阅读
开发技术C/C++
所属分类人工智能、机器学习/深度学习
授权协议BSD

作品详情

PatrickStar是一款腾讯开发的分布式深度学习训练工具,它的设计目标是支持以GPT、Bert为代表的超大预训练模型训练。

用法

PatrickStar基于PyTorch,这使得迁移pytorch项目变得容易。以下是PatrickStar的示例:

frompatrickstar.runtimeimportinitialize_engineconfig={"optimizer":{"type":"Adam","params":{"lr":0.001,"betas":(0.9,0.999),"eps":1e-6,"weight_decay":0,"use_hybrid_adam":True,},},"fp16":{#lossscalerparams"enabled":True,"loss_scale":0,"initial_scale_power":2**3,"loss_scale_window":1000,"hysteresis":2,"min_loss_scale":1,},"default_chunk_size":64*1024*1024,"release_after_init":True,"use_cpu_embedding":False,}defmodel_func():#MyModelisaderivedclassfortorch.nn.ModulereturnMyModel(...)model,optimizer=initialize_engine(model_func=model_func,local_rank=0,config=config)...fordataindataloader:optimizer.zero_grad()loss=model(data)model.backward(loss)optimizer.step()

使用与 DeepSpeed配置JSON 相同的config格式,主要包括优化器、损失缩放器和一些PatrickStar特定配置的参数。

引用我们@article{fang2021patrickstar,title={PatrickStar:ParallelTrainingofPre-trainedModelsviaaChunk-basedMemoryManagement},author={Fang,JiaruiandYu,YangandZhu,ZilinandLi,ShengguiandYou,YangandZhou,Jie},journal={arXivpreprintarXiv:2108.05818},year={2021}}
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论