Logo

EFG: 高效灵活通用的深度学习框架

EFG框架简介

EFG(Efficient, Flexible, and General)是一个旨在保持最小化的高效、灵活和通用深度学习框架。它由V2AI团队开发,为研究人员提供了探索各种计算机视觉研究主题的项目模板。

EFG框架具有以下主要特点:

  1. 高效性:通过优化的代码实现和数据处理流程,确保模型训练和推理的高效执行。

  2. 灵活性:提供模块化的设计,便于研究人员快速实现和测试新的算法思想。

  3. 通用性:支持多种计算机视觉任务,如2D/3D目标检测、分割等。

  4. 最小化:保持核心代码的简洁,避免冗余功能,便于理解和使用。

  5. 开放性:开源代码并欢迎社区贡献,促进学术交流。

EFG框架logo

框架最新动态

EFG框架一直在持续更新和完善中。以下是最近的一些主要更新:

  • 2023.08.22 发布ICCV 2023论文《TrajectoryFormer: 3D Object Tracking Transformer with Predictive Trajectory Hypotheses》的代码实现。
  • 2023.04.13 支持使用Mask2Former进行COCO全景分割任务。
  • 2023.03.30 支持PyTorch 2.0版本。
  • 2023.03.21 发布CVPR 2023亮点论文《ConQueR: Query Contrast Voxel-DETR for 3D Object Detection》的代码实现。
  • 2023.03.21 发布EFG代码库,支持2D目标检测(MS COCO数据集)和3D目标检测(Waymo和nuScenes数据集)。

这些更新体现了EFG框架在不断扩展其功能,支持更多前沿的计算机视觉任务和模型。

框架性能基准

EFG框架在多个计算机视觉任务上都展现了优秀的性能。下图展示了EFG与其他主流框架在推理速度和内存占用方面的对比:

EFG性能基准

从图中可以看出,EFG在保持高准确率的同时,具有更快的推理速度和更低的内存占用。这得益于EFG框架的高效设计和优化实现。

安装与使用

环境要求

在安装EFG之前,请确保您的系统满足以下要求:

  • gcc 5 (支持c++11或更新版本)
  • Python >= 3.6
  • CUDA >= 10.1
  • PyTorch >= 1.6

安装步骤

  1. 克隆EFG代码库:
git clone https://github.com/poodarchu/EFG.git
cd EFG
  1. 安装EFG:
pip install -v -e .
  1. 设置日志路径:
echo "export EFG_CACHE_DIR=/path/to/your/logs/dir" >> ~/.bashrc

数据准备

EFG支持多个数据集,以下以Waymo数据集为例说明数据准备过程:

  1. 下载Waymo数据集(v1.2.0或v1.3.2等版本)
  2. 从tfrecord文件中提取帧数据到pkl文件
  3. 创建数据集软链接
  4. 生成数据摘要和gt数据库

详细的数据准备命令可以参考EFG的GitHub仓库说明。

训练与评估

EFG提供了简单的命令行工具用于模型训练和评估:

# 使用默认1个GPU训练
efgrun

# 使用多个GPU训练
efgrun --num-gpus x

# 指定训练、验证或测试任务
efgrun --num-gpus x task [train | val | test]

# 从断点恢复训练
efgrun --num-gpus x --resume

# 动态修改配置选项
efgrun --num-gpus x dataloader.num_workers 0

模型会在训练结束后自动进行评估。也可以单独运行评估:

efgrun --num-gpus x task val

模型库

EFG提供了多个在主流数据集上预训练的模型。以下是部分模型在Waymo Open Dataset 3D目标检测任务上的性能:

方法帧数训练轮数车辆mAPH/L2行人mAPH/L2自行车mAPH/L2
CenterPoint13666.9/66.468.2/62.969.0/67.9
CenterPoint43670.0/69.572.8/69.772.6/71.8
Voxel-DETR1667.6/67.169.5/63.069.0/67.8
ConQueR1668.7/68.270.9/64.771.4/70.1

这些模型展示了EFG框架在3D目标检测任务上的出色性能,特别是ConQueR模型在较短的训练轮数内就达到了优秀的检测精度。

社区贡献

EFG是一个开源项目,欢迎社区成员参与贡献。如果您对EFG感兴趣并希望做出贡献,可以通过以下方式参与:

  1. 提交问题和功能请求:在GitHub仓库的Issues页面提交您发现的问题或希望添加的新功能。
  2. 提交代码:通过Pull Request提交您的代码贡献,维护者会进行审核和合并。
  3. 改进文档:帮助完善EFG的文档,使其更易于理解和使用。
  4. 分享使用经验:在社区中分享您使用EFG的经验和技巧,帮助其他用户。

如果您有任何问题或建议,也可以直接联系项目维护者(poodarchu@gmail.com)。

总结

EFG作为一个高效、灵活、通用的深度学习框架,为计算机视觉研究提供了强大的工具支持。它不仅支持多种视觉任务,还在性能和易用性方面都有出色表现。随着社区的不断贡献和维护团队的持续优化,EFG有望在未来支持更多前沿的研究方向,成为计算机视觉领域更加重要的开源框架。

研究人员和开发者可以利用EFG快速实现自己的创新想法,推动计算机视觉技术的进步。我们期待看到更多基于EFG的优秀工作,共同促进人工智能技术的发展。

最新项目

Project Cover
豆包MarsCode
豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。
Project Cover
AI写歌
Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。
Project Cover
商汤小浣熊
小浣熊家族Raccoon,您的AI智能助手,致力于通过先进的人工智能技术,为用户提供高效、便捷的智能服务。无论是日常咨询还是专业问题解答,小浣熊都能以快速、准确的响应满足您的需求,让您的生活更加智能便捷。
Project Cover
有言AI
有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。
Project Cover
Kimi
Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。
Project Cover
吐司
探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。
Project Cover
SubCat字幕猫
SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。
Project Cover
AIWritePaper论文写作
AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。
Project Cover
稿定AI
稿定设计 是一个多功能的在线设计和创意平台,提供广泛的设计工具和资源,以满足不同用户的需求。从专业的图形设计师到普通用户,无论是进行图片处理、智能抠图、H5页面制作还是视频剪辑,稿定设计都能提供简单、高效的解决方案。该平台以其用户友好的界面和强大的功能集合,帮助用户轻松实现创意设计。
投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号