Skip to content

采用MegEngine实现的各种主流深度学习模型

License

Notifications You must be signed in to change notification settings

MegEngine/Models

Folders and files

NameName
Last commit message
Last commit date

Latest commit

78882f9 · Oct 31, 2022

History

89 Commits
Dec 13, 2021
Oct 31, 2022
Jan 18, 2021
Jan 23, 2021
Mar 24, 2020
Mar 24, 2020
Mar 24, 2020
Mar 24, 2020
Oct 25, 2022
Oct 31, 2022
Oct 31, 2022
Oct 21, 2020
Oct 25, 2022
Jan 18, 2021

Repository files navigation

MegEngine Models

本仓库包含了采用MegEngine实现的各种主流深度学习模型。

official目录下提供了各种经典的图像分类、目标检测、图像分割以及自然语言模型的官方实现。每个模型同时提供了模型定义、推理以及训练的代码。

官方会一直维护official下的代码,保持适配MegEngine的最新API,提供最优的模型实现。同时,提供高质量的学习文档,帮助新手学习如何在MegEngine下训练自己的模型。

综述

对于每个模型,我们提供了至少四个脚本文件:模型定义(model.py)、模型推理(inference.py)、模型训练(train.py)、模型测试(test.py)。

每个模型目录下都对应有一个README,介绍了模型的详细信息,并详细描述了训练和测试的流程。例如 ResNet README

另外,official下定义的模型可以通过megengine.hub来直接加载,例如:

import megengine.hub

# 只加载网络结构
resnet18 = megengine.hub.load("megengine/models", "resnet18")
# 加载网络结构和预训练权重
resnet18 = megengine.hub.load("megengine/models", "resnet18", pretrained=True)

更多可以通过megengine.hub接口加载的模型见hubconf.py

安装和环境配置

在开始运行本仓库下的代码之前,用户需要通过以下步骤来配置本地环境:

  1. 克隆仓库
git clone https://github.com/MegEngine/Models.git
  1. 安装依赖包
pip3 install --user -r requirements.txt
  1. 添加目录到python环境变量中
export PYTHONPATH=/path/to/models:$PYTHONPATH

官方模型介绍

图像分类

图像分类是计算机视觉的基础任务。许多计算机视觉的其它任务(例如物体检测)都使用了基于图像分类的预训练模型。因此,我们提供了各种在ImageNet上预训练好的分类模型, 具体实现模型参考这里.

目标检测

目标检测同样是计算机视觉中的常见任务,我们提供了多个经典的目标检测模型,具体模型的实现可以参考这里.

图像分割

语意分割也是计算机视觉中的一项基础任务,为此我们也提供了经典的语义分割模型,具体可以参考这里.

人体关节点检测

我们提供了人体关节点检测的经典模型和高精度模型,具体的实现可以参考这里.

自然语言处理

我们同样支持一些常见的自然语言处理模型,模型的权重来自Google的pre-trained models, 用户可以直接使用megengine.hub轻松的调用预训练的bert模型。

另外,我们在bert中还提供了更加方便的脚本, 可以通过任务名直接获取到对应字典, 配置, 与预训练模型。

多模态

多模态学习拥有令人着迷的魅力,其有着丰富有趣的现实应用。我们支持了一些经典的多模态模型,模型的权重来源于官方预训练模型,用户可以参考仓库下的教程轻松体验多模态的奇妙。