XBM框架:基于MindSpore的计算机视觉模型库
X Basic&Big Model(XBM)是一个基于MindSpore的计算机视觉模型库,通过整合常用的ANN、Transformer等框架的计算机视觉模型库,可以搭建各种SOTA模型并进行迁移学习。
更新日志
Sep 9, 2022
- Rebuilt and added models
- Added the docs directory to store markdown files
- TODO
merge the code in the xbm directory
设备支持
获取
注意,XBM框架是基于MindSpore AI计算框架的,请确保已经成功安装mindSpore r1.5.X版本。
git clone https://git.openi.org.cn/PCL_AutoML/XBM
模型获取
目前,XNM框架已经集成众多CV模型,详情见XBM模型库,后续各种模型将会被陆续添加到库中,敬请期待!
用户也可以通过xbm.list_models()
来获取库中预训练模型,例如:
import xbm
model_name = xbm.list_models(pretrained=True)
在XBM库中,我们采用更加优雅的方式调取库中的模型,用户可以通过xbm.create_model()
来获取所需模型。例如,调取ViT模型可以采用以下脚本:
import xbm
model = xbm.create_model('vit', pretrained=True)
模型训练
用户在获取模型后,在配置一系列训练参数后便可通过model.train()
来进行模型训练,详情见MindSpore官方文档:
import xbm
model = xbm.create_model('YOUR_MODEL_NAME')
...
...
...
model.train(YOUR_EPOCH_SIZE, YOUR_DATASET, YOUR_CALLBACK)
同时,我们给出几个示例demo以便用户进行项目开发,以ViT模型为例,用户可以通过使用以下脚本便可快速进行模型配置与训练:
cd ./XBM/scripts
sh run_ViT_train_distribute.sh
用户可选择在鹏城云脑Ⅱ平台进行相关模型的训练,具体使用指南请参考云脑Ⅱ使用指南。
模型推理
用户可以加载XBM库中的预训练模型来进行模型推理,以ResNet 50模型为例,通过使用以下脚本来进行模型的快速部署:
import xbm
model = xbm.create_model('resnet50', pretrained=True)
model.eval()
参考项目
本项目参考以下优秀开源项目,非常感谢!同时我们非常欢迎各位用户参与讨论、解决问题和提交pull requests。
免责声明
XBM仅提供下载和预处理公共数据集的脚本。我们不拥有这些数据集,也不对它们的质量负责或维护。请确保您具有在数据集许可下使用该数据集的权限。在这些数据集上训练的模型仅用于非商业研究和教学目的。
致数据集拥有者:如果您不希望将数据集包含在XBM中,或者希望以任何方式对其进行更新,我们将根据要求删除或更新所有公共内容。请通过openi与我们联系。非常感谢您对这个社区的理解和贡献。
许可
MIT License