Skip to content

Latest commit

 

History

History
20 lines (17 loc) · 3.82 KB

Open_Source_Promotion_Plan-Summer_2020_MegEngine.md

File metadata and controls

20 lines (17 loc) · 3.82 KB

开源软件供应链点亮计划—天元MegEngine项目

天元(MegEngine)是在旷视长期进行大规模AI业务落地过程中诞生的,这种业务形态对深度学习框架有很多挑战,在不断解决这些挑战的过程中,天元形成了动静合一、兼容并包、灵活高效、训练推理一体化等特性,能够帮助开发者高效的完成深度学习算法的设计、训练、部署,有效提升AI研发工作效率。 社区官方网址:https://megengine.org.cn/

天元开发者交流QQ群:1029741705

任务列表

注:以下任务均需要能在纯开源版本中进行,因此最好避开过于底层的 C++ 代码(因为外部没有手机 Arm 测试)

任务名称 内容 难度 导师 具体内容 所需技能
Github CI 增加 commit 内容检查 增加 commit message checker,以规范贡献者 commit 格式 张禄
[email protected]

1. 使用 commitlint 工具,对于 commit message 进行规范
2. 集成 Gitlab Action

1. SHELL
2. Git
实现 MegEngine to Caffe 转换器 编写转换器,将 MegEngine 训练出的模型转换成 Caffe 模型 陈远昭
[email protected]

1. 学习 MegEngine to MACE 转换器
2. 编写 Caffe 转换器
3. 正确性、性能测试

1. Python
2. Caffe
实现 MegEngine to TFLite 转换器 编写转换器,将 MegEngine 训练出的模型转换成 TFLite 模型 陈远昭
[email protected]

1. 学习 MegEngine to MACE 转换器
2. 编写 TFLite 转换器
3. 正确性、性能测试

1. Python
2. TF Lite
添加一些常用的opr 添加一些目前MegEngine缺乏的、常用的opr,大部分只需要在python层进行封装。
opr包括:
  • deformable_conv
  • deformable_ps_roipooing
  • mask_convolution
  • matinv
  • svd
  • cumsum
  • batchrenormalization
  • adaptive_max_pooling
  • adaptive_avg_pooling
  • maxout
  • 胡焜
    [email protected]

    1. 开发 operator
    2. 添加测试证明正确性
    3. 添加详细的docstring

    1. Python
    添加各类常用分类模型 classification模型比如mobilenet/inception,但不需要训练/推理等完整代码,也不需要预训练权重,只需要模型实现即可,统一放在 vision/classification/models[contribution]下面,类似于torchvision那样,前期可以提供示例。 周亦庄
    [email protected]

  • InceptionNet
  • Googlenet
  • EfficientNet
  • Mobilenetv123
  • SqueezeNet
  • DenseNet
  • NASNet-series

  • 1. Python
    2.PyTorch
    实现 assistant 库 针对容易出错的使用方式,进行 warning 提示。
    希望达到玩游戏的时候的那种辅助提示的效果
  • 比如 momentum < 0.5 的时候,提示:"The momentum of batch normalization layer rarely uses a value less than 0.5, Please check the document for momentum's definition, which is different from PyTorch."
  • 至多提示一次,如果用户觉得我明白风险,可以忽略或显式用 API 表明”我了解这个风险”
  • 许欣然
    [email protected]

    1. 实现一套 warning 的机制
    2. 对于 momentum 等地方进行处理,在错读的地方报错
    3. 编写测试

    1. Python
    2.深度学习框架使用经验
    MegEngine 网络可视化 基于 Netron,对 MegEngine 训练网络进行可视化 许欣然
    [email protected]

    1.Javascript
    2. Python
    C++ 文档生成 基于 Doxygen 和 Sphinx,生成用于集成在官网的 C++ 使用文档 许欣然
    [email protected]

    1. Python
    Models-CI 增加模型检查 对于Models中开源出去模型,进行试运行检查,及时定位Models中的问题 王枫
    [email protected]
    1. 了解github中的workflow
    2. 实现在CI下对模型试运行的逻辑
    3. 编写对应测试

    1. Python
    2. shell
    3. Git