# YOLO-Master
**Repository Path**: zyb314/YOLO-Master
## Basic Information
- **Project Name**: YOLO-Master
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: AGPL-3.0
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2026-01-07
- **Last Updated**: 2026-01-07
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
1Tencent Youtu Lab
2Singapore Management University
*Equal Contribution
{gatilin, jeromepeng, wingzygan, juliusliu}@tencent.com
jwzhu.2022@phdcs.smu.edu.sg
[English](README.md) | [简体中文](README_CN.md)
---
## 💡 初心 (Introduction)
> **"探索 YOLO 中动态智能的前沿。"**
这项工作代表了我们对实时目标检测 (RTOD) 演进的热情探索。据我们所知,**YOLO-Master 是首个在通用数据集上将混合专家 (MoE) 架构与 YOLO 深度融合的工作。**
大多数现有的 YOLO 模型依赖于静态的密集计算——即对简单的天空背景和复杂的拥挤路口分配相同的计算预算。我们认为检测模型应该更加“自适应”,就像人类视觉系统一样。虽然这次初步探索可能并不完美,但它展示了 **高效稀疏 MoE (ES-MoE)** 在平衡高精度与超低延迟方面的巨大潜力。我们将致力于持续迭代和优化,以进一步完善这一方法。
展望未来,我们从 LLM 和 VLM 的变革性进步中汲取灵感。我们将致力于完善这一方法,并将这些见解扩展到基础视觉任务中,最终目标是解决更具雄心的前沿问题,如开放词汇检测和开放集分割。
摘要 (Abstract)
现有的实时目标检测 (RTOD) 方法通常采用类 YOLO 架构,因为它们在精度和速度之间取得了良好的平衡。然而,这些模型依赖于静态密集计算,对所有输入应用统一的处理,导致表示能力和计算资源的分配不当,例如在简单场景上过度分配,而在复杂场景上服务不足。这种不匹配导致了计算冗余和次优的检测性能。
为了克服这一限制,我们提出了 YOLO-Master,这是一种新颖的类 YOLO 框架,为 RTOD 引入了实例条件自适应计算。这是通过高效稀疏混合专家 (ES-MoE) 块实现的,该块根据场景复杂度动态地为每个输入分配计算资源。其核心是一个轻量级的动态路由网络,通过多样性增强目标指导专家在训练期间的专业化,鼓励专家之间形成互补的专业知识。此外,路由网络自适应地学习仅激活最相关的专家,从而在提高检测性能的同时,最大限度地减少推理过程中的计算开销。
在五个大规模基准测试上的综合实验证明了 YOLO-Master 的优越性。在 MS COCO 上,我们的模型实现了 42.4% 的 AP 和 1.62ms 的延迟,比 YOLOv13-N 高出 +0.8% mAP,推理速度快 17.8%。值得注意的是,在具有挑战性的密集场景中收益最为明显,同时模型在典型输入上保持了效率并维持了实时推理速度。代码: [isLinXu/YOLO-Master](https://github.com/isLinXu/YOLO-Master)
---
## 🎨 架构
YOLO-Master 引入 ES-MoE 块,通过动态路由实现“按需计算”。
### 📚 深度文档
关于 MoE 模块的设计理念、路由机制详解以及针对不同硬件(GPU/CPU/NPU)的部署优化指南,请参阅我们的 Wiki 文档:
👉 **[Wiki: MoE 模块详解与演进](wiki/MoE_Modules_Explanation.md)**
## 📖 目录
- [初心](#-初心-introduction)
- [架构](#-架构)
- [更新](#-更新-latest-first)
- [主要结果](#-主要结果)
- [检测](#检测)
- [分割](#分割)
- [分类](#分类)
- [检测示例](#-检测示例)
- [支持的任务](#-支持的任务)
- [快速开始](#-快速开始)
- [安装](#安装)
- [验证](#验证)
- [训练](#训练)
- [推理](#推理)
- [导出](#导出)
- [Gradio 演示](#gradio-演示)
- [社区与贡献](#-社区与贡献)
- [许可证](#-许可证)
- [致谢](#-致谢)
- [引用](#-引用)
## 🚀 更新 (Latest First)
- **2026/01/07**: [TensorRT-YOLO](https://github.com/laugh12321/TensorRT-YOLO) 为 YOLO-Master 提供加速,感谢贡献!
- **2026/01/07**: 新增MoE loss显式加入到training中
> Epoch GPU_mem box_loss cls_loss dfl_loss **moe_loss** Instances Size
- **2026/01/04**: MoE模块重构
> Split MoE script into separate modules (routers, experts)
- **2026/01/03**: 新增 Sparse SAHI 推理模式:通过全局粗筛生成的 Objectness Mask 实现内容自适应的稀疏切片推理,显著提升高分辨率图像中小目标的检测速度与显存利用率。
- **2025/12/31**: 发布演示[YOLO-Master-WebUI-Demo](https://huggingface.co/spaces/gatilin/YOLO-Master-WebUI-Demo)
- **2025/12/31**: 发布 YOLO-Master v0.1 版本,包含检测、分割和分类模型及训练代码。
- **2025/12/30**: arXiv 论文发布。
## 📊 主要结果
### 检测
表 1. 五个基准测试上与最先进 Nano 级检测器的比较。
| 数据集 |
COCO |
PASCAL VOC |
VisDrone |
KITTI |
SKU-110K |
效率 |
| 方法 |
mAP (%) |
mAP50 (%) |
mAP (%) |
mAP50 (%) |
mAP (%) |
mAP50 (%) |
mAP (%) |
mAP50 (%) |
mAP (%) |
mAP50 (%) |
延迟 (ms) |
| YOLOv10 |
38.5 | 53.8 |
60.6 | 80.3 |
18.7 | 32.4 |
66.0 | 88.3 |
57.4 | 90.0 |
1.84 |
| YOLOv11-N |
39.4 | 55.3 |
61.0 | 81.2 |
18.5 | 32.2 |
67.8 | 89.8 |
57.4 | 90.0 |
1.50 |
| YOLOv12-N |
40.6 | 56.7 |
60.7 | 80.8 |
18.3 | 31.7 |
67.6 | 89.3 |
57.4 | 90.0 |
1.64 |
| YOLOv13-N |
41.6 | 57.8 |
60.7 | 80.3 |
17.5 | 30.6 |
67.7 | 90.6 |
57.5 | 90.3 |
1.97 |
| YOLO-Master-N |
42.4 | 59.2 |
62.1 | 81.9 |
19.6 | 33.7 |
69.2 | 91.3 |
58.2 | 90.6 |
1.62 |
### 分割
| **模型** | **尺寸** | **mAPbox (%)** | **mAPmask (%)** | **增益 (mAPmask)** |
| --------------------- | -------- | -------------- | --------------- | ------------------ |
| YOLOv11-seg-N | 640 | 38.9 | 32.0 | - |
| YOLOv12-seg-N | 640 | 39.9 | 32.8 | Baseline |
| **YOLO-Master-seg-N** | **640** | **42.9** | **35.6** | **+2.8%** 🚀 |
### 分类
| **模型** | **数据集** | **输入尺寸** | **Top-1 Acc (%)** | **Top-5 Acc (%)** | **对比** |
| --------------------- | ------------ | -------------- | ----------------- | ----------------- | ----------------- |
| YOLOv11-cls-N | ImageNet | 224 | 70.0 | 89.4 | Baseline |
| YOLOv12-cls-N | ImageNet | 224 | 71.7 | 90.5 | +1.7% Top-1 |
| **YOLO-Master-cls-N** | **ImageNet** | **224** | **76.6** | **93.4** | **+4.9% Top-1** 🔥 |
## 🖼️ 检测示例
## 🧩 支持的任务
YOLO-Master 建立在强大的 Ultralytics 框架之上,继承了对各种计算机视觉任务的支持。虽然我们的研究主要集中在实时目标检测,但代码库支持:
| 任务 | 状态 | 描述 |
|:-----|:------:|:------------|
| **目标检测** | ✅ | 具有 ES-MoE 加速的实时目标检测。 |
| **实例分割** | ✅ | 实验性支持 (继承自 Ultralytics)。 |
| **姿态估计** | 🚧 | 实验性支持 (继承自 Ultralytics)。 |
| **OBB 检测** | 🚧 | 实验性支持 (继承自 Ultralytics)。 |
| **图像分类** | ✅ | 图像分类支持。 |
## ⚙️ 快速开始
### 安装
通过 pip 安装 (推荐)
```bash
# 1. 创建并激活新环境
conda create -n yolo_master python=3.11 -y
conda activate yolo_master
# 2. 克隆仓库
git clone https://github.com/isLinXu/YOLO-Master
cd YOLO-Master
# 3. 安装依赖
pip install -r requirements.txt
pip install -e .
# 4. 可选: 安装 FlashAttention 以加速训练 (需要 CUDA)
pip install flash_attn
```
### 验证
在 COCO 数据集上验证模型精度。
```python
from ultralytics import YOLO
# 加载预训练模型
model = YOLO("yolo_master_n.pt")
# 运行验证
metrics = model.val(data="coco.yaml", save_json=True)
print(metrics.box.map) # map50-95
```
### 训练
在自定义数据集或 COCO 上训练新模型。
```python
from ultralytics import YOLO
# 加载模型
model = YOLO('cfg/models/master/v0/det/yolo-master-n.yaml') # 从 YAML 构建新模型
# 训练模型
results = model.train(
data='coco.yaml',
epochs=600,
batch=256,
imgsz=640,
device="0,1,2,3", # 使用多 GPU
scale=0.5,
mosaic=1.0,
mixup=0.0,
copy_paste=0.1
)
```
### 推理
对图像或视频进行推理。
**Python:**
```python
from ultralytics import YOLO
model = YOLO("yolo_master_n.pt")
results = model("path/to/image.jpg")
results[0].show()
```
**CLI:**
```bash
yolo predict model=yolo_master_n.pt source='path/to/image.jpg' show=True
```
### 导出
将模型导出为其他格式以进行部署 (TensorRT, ONNX 等)。
```python
from ultralytics import YOLO
model = YOLO("yolo_master_n.pt")
model.export(format="engine", half=True) # 导出为 TensorRT
# 格式: onnx, openvino, engine, coreml, saved_model, pb, tflite, edgetpu, tfjs
```
### Gradio 演示
启动本地 Web 界面以交互式测试模型。此应用程序提供了一个用户友好的 Gradio 仪表板,用于模型推理,支持自动模型扫描、任务切换(检测、分割、分类)和实时可视化。
```bash
python app.py
# 在浏览器中打开 http://127.0.0.1:7860
```
## 🤝 社区与贡献
我们欢迎贡献!有关如何参与的详细信息,请查看我们的 [贡献指南](CONTRIBUTING.md)。
- **Issues**: 在 [这里](https://github.com/isLinXu/YOLO-Master/issues) 报告错误或请求功能。
- **Pull Requests**: 提交您的改进。
## 📄 许可证
本项目采用 [GNU Affero General Public License v3.0 (AGPL-3.0)](LICENSE) 许可证。
## 🙏 致谢
这项工作建立在优秀的 [Ultralytics](https://github.com/ultralytics/ultralytics) 框架之上。非常感谢社区的贡献、部署和教程!
## 📝 引用
如果您在研究中使用 YOLO-Master,请引用我们的论文:
```bibtex
@article{lin2025yolomaster,
title={{YOLO-Master}: MOE-Accelerated with Specialized Transformers for Enhanced Real-time Detection},
author={Lin, Xu and Peng, Jinlong and Gan, Zhenye and Zhu, Jiawen and Liu, Jun},
journal={arXiv preprint arXiv:},
year={2025}
}
```
⭐ **如果您觉得这项工作有用,请给仓库点个星!**