134个预训练模型、精度高达85.1%,百度视觉算法最强基石PaddleClas全新升级

模型:飞浆---Jupyter中使用、训练、评估、推理Paddleclas 在jupyter中使用、训练、评估、推理paddleclas 阅读详情

机器之心发布

机器之心编辑部

百度 PaddlePaddle 团队开发的 PaddleClas 是一个适用于业界和学界的图像分类任务工具集,可以帮助用户训练更好的计算机视觉模型并应用于真实场景中。近期 PaddleClas 迎来了全面升级,其中提供了更高精度的知识蒸馏模型、更丰富的模型种类以及更佳的开发体验,从而使得开发者更方便地在服务器端或者移动端、IoT 端进行部署。

图像分类任务作为深度学习视觉领域的「基石」,几乎是每一位视觉方向开发者最先要学习的基础本领。众所周知,图像分类已广泛应用在智慧零售、智慧交通、智慧医疗、智慧安防等等各行各业。不仅如此,图像目标检测、图像分割、图像检索、OCR、人脸识别等高阶视觉任务也常将图像分类网络作为骨干网络。图像分类的网络结构和预训练模型则无疑是智能视觉技术的稳固地基和强壮骨架,它的性能直接影响高阶视觉任务的效果。

图像分类任务如此重要,但好的分类网络却没有那么容易被训练出来。开发者往往要面临像目标遮挡、尺度变化、变形、背景噪音过大、光照视角多变、目标姿态多变等问题。为了解决这些困难,大家一般需要从数据增广、骨干网络设计、损失定义、优化器设计、模型压缩裁剪量化、模型可解释性、特征迁移学习等不同的角度对图像分类问题进行深入探索。听起来是不是就头大?

莫慌!PaddleClas 就是一个超强的图像分类任务的工具集,助力开发者训练出更好的视觉模型并快速应用落地。PaddleClas 近期也完成了全新的升级,本次升级之后,PaddleClas 可算成为了地表超强开源图像分类库(不好说『最』,怕被请喝茶)。那这个称号是从哪里来的呢?让我们用事实说话,看看 PaddleClas 升级后到底有多强大!

  1. 更高精度的模型:基于百度自研的知识蒸馏方案(SSLD),PaddleClas 开源了 14 个 SSLD 分类预训练模型,精度普遍提升 3% 以上;其中 ResNet50_vd 模型在 ImageNet-1k 数据集上的 Top-1 精度达到了 84.0%,Res2Net200_vd 预训练模型 Top-1 精度高达 85.1%。同时也优化出更多业界 SOTA 模型,并支持图像检测、分割以及 OCR 等高阶视觉任务全面提升模型效果;

  2. 更丰富的模型种类:本次升级新增 4 个系列模型(InceptionV3、GhostNet、ResNeSt 和 RegNet),至此 PaddleClas 总共包含 29 个系列的分类网络以及 134 个预训练模型;

  3. 开发体验进一步升级:全面支持动态图,使你的算法构建、训练以及评估调试更轻松。并进一步打通全流程部署,无论是在移动端、IoT 端还是在服务器端进行部署,都可以在这里找到最佳的部署方案;

  4. 数十种图像分类算法开发的 Trick 和工具!深入理解开发者算法开发过程中的难点,手把手教你提升算法性能!

已经迫不及待要去看项目代码了嘛?传送门送你一程:

https://github.com/paddlepaddle/PaddleClas

觉得不错的小伙伴可以点起 Star 支持一下~

在深入研究 PaddleClas 之后呢,本文也给大家解析一下 PaddleClas 本次升级的详情。

更多高精度的知识蒸馏模型

PaddleClas 中提供了 SSLD 知识蒸馏方案,在无需更多有标签图像的条件下,可以在不换模型的基础上将分类模型的精度提升 3% 以上。在此次全面升级过程中,PaddleClas 进一步提供了基于 ResNet_vd、HRNet、Res2Net_vd、MobileNetV3、GhostNet 等骨干网络蒸馏得到的 SSLD 预训练模型,不仅可以用于迁移训练、预训练权重参数;也可以用于检测、分割等下游视觉任务中,进一步提升下游视觉任务的精度指标。

就让我们看图说话:下面两张图给出了 PaddleClas 在服务器端和端侧(移动端、IoT 端)开源的 SSLD 蒸馏预训练模型的精度提升对比情况:

可以看出,无论是服务器端还是移动端或 IoT 端,经过 SSLD 知识蒸馏之后的模型精度均提升了 3% 左右。而且模型越大,精度提升越明显。特别地,基于该蒸馏方案,PaddleClas 将 ResNet50_vd 的 Top-1 精度提升到 83.0%;进一步地,基于 Fix 策略,调大训练尺度 (224 -> 320),ResNet50_vd 的 Top-1 精度可以到达 84.0%。

此外,基于 SSLD 蒸馏预训练模型,在目标检测任务中,模型精度提升也非常明显,具体如下表所示:

在图像分割任务中, 基于 CityScapes 数据集的精度收益如下表所示:

在文字检测任务中(OCR),基于 DBNet 的精度收益如下:

在绝大多数场景中,不需要任何额外的训练或者预测成本,仅使用 SSLD 知识蒸馏预训练模型,便可以轻松提升模型精度。更多 SSLD 的原理和性能,可以到这里查看详情:https://github.com/PaddlePaddle/PaddleClas/blob/release/2.0-rc1/docs/zh_CN/advanced_tutorials/distillation/distillation.md

更丰富的模型种类

如我们在开头所述, PaddleClas 在此次升级中,进一步丰富了模型库,新增 4 个系列模型(InceptionV3、GhostNet、ResNeSt、RegNet)。目前总共包含 29 个系列的分类网络以及 134 个预训练模型,包括 ResNet、ResNet_vd、Res2Net、ResNeXt 、HRNet、ResNeSt、MobileNetV1/2/3、GhostNet 等,涵盖了从服务器端到移动端的各类使用场景,这也是目前种类最丰富的图像分类代码仓库。

  • InceptionV3 是 Google 对 InceptionV2 的一种改进。首先,InceptionV3 设计和使用了更多种类的 Inception 模块,部分 Inception 模块将较大的方形二维卷积拆成两个较小的非对称卷积,从而大幅度节省参数量;

  • GhostNet 是华为于 2020 年提出的一种全新的轻量化网络结构。通过引入 Ghost module,大大缓解了传统深度网络中特征的冗余计算问题,使得网络的参数量和计算量大大降低;

  • ResNeSt 系列模型是 2020 年提出的。在原有的 ResNet 网络结构上做了改进,通过引入 K 个 Group 和在不同 Group 中加入类似于 SEBlock 的 attention 模块,使得精度相比于基础模型 ResNet 有了大幅度的提升,且参数量和 flops 与基础的 ResNet 基本保持一致;

  • RegNet 是由 Facebook 于 2020 年提出。通过加入共享瓶颈 ratio、共享组宽度、调整网络深度与宽度等策略,最终实现简化设计空间结构、提高设计空间的可解释性、改善设计空间的质量,并保持设计空间的模型多样性的目的。

下面也分别给出了服务端模型和端侧模型在 T4 GPU 和骁龙 855 芯片上的预测耗时与精度曲线,大家可以根据自己的预测耗时或者精度要求,选择合适的分类网络。

更好的易用性

全面支持动态图

静态计算指的是程序在编译执行时首先生成神经网络结构,然后再执行相应操作。通过这种先定义后运行的方式,再次运行的时候就不再需要重新构建计算图,因此在速度方面会更快一些。动态计算指的是程序按照编写命令的顺序进行执行,这会大大降低调试的难度。在此次升级中,PaddleClas 在训练过程中为动态图模式,在预测部署时为静态图模式,从而保证了训练过程中的易用性以及模型预测过程中的效率。

多系统、多硬件、多端部署全面支持

PaddleClas 现在支持包括 GPU/CPU/XPU、Windows/Linux/MacOS 等多种训练平台。对于训练得到的模型,PaddleClas 提供基于服务器端(Paddle Inference)和 移动端、IoT 端(Paddle Lite),以及轻量化服务端(Hub Serving)的高性能部署方法,同时支持 Python 预测与 C++ 预测,满足大多数开发者的使用需求。

更丰富的教程文档及调优Trick

  • 《PaddleClas 的图像分类训练、评估、预测开始教程》:https://github.com/PaddlePaddle/PaddleClas/blob/dygraph/docs/zh_CN/tutorials/getting_started.md

  • 开源社区小伙伴总结的《基于 PaddleClas 完成产业级图像分类项目》

  • 基于 Paddle Lite 在手机、机器人终端等进行模型优化与交叉编译的方案《PaddleClas 端侧部署教程》:https://github.com/PaddlePaddle/PaddleClas/blob/dygraph/deploy/lite/readme.md

  • 针对开发者在开发过程中遇到的实际难题总结出的《图像分类 30 问》https://github.com/PaddlePaddle/PaddleClas/blob/dygraph/docs/zh_CN/faq.md

  • 还有《PaddleClas 每周 FAQ》https://github.com/PaddlePaddle/PaddleClas/blob/dygraph/docs/zh_CN/faq_series.md 等等高价值内容

此外,考虑到图像分类领域内容丰富,更新频繁,PaddleClas 官方团队计划尽可能高频地持续更新图像分类领域的 Tricks、FAQ 等内容给到大家,力争全方位让开发者无论是进行学术科研以还是产业算法应用过程中都更加顺畅。

这样有如和璧隋珠一样的开源项目,这样用心勤奋的技术团队,你还不心动要尝试使用下 PaddleClas 吗?赶紧前往 PaddleClas 开源地址查看项目详情吧!也欢迎各位小伙伴点星(Star)、Fork、Watch,方便反复研究查看~~

  • GitHub: https://github.com/PaddlePaddle/PaddleClas

  • Gitee: https://gitee.com/paddlepaddle/PaddleClas

如果您想详细了解更多飞桨的相关内容,请参阅以下文档。

官网地址:https://www.paddlepaddle.org.cn

飞桨开源框架项目地址:

GitHub: https://github.com/PaddlePaddle/Paddle

Gitee: https://gitee.com/paddlepaddle/Paddle

© THE END 

【第44篇】DBNet:具有可微分二值化的实时场景文本检测 近年来,场景图像中的文本阅读因其在图像/视频理解、视觉搜索、自动驾驶、盲人辅助等方面的广泛实际应用而成为一个活跃的研究领域。作为场景文本阅读的关键组成部分,旨在定位每个文本实例的边界框或区域的场景文本检测仍然是一项具有挑战性的任务,因为场景文本通常具有各种比例和形状,包括水平、多向和弯曲文本。基于分割的场景文本检测最近引起了很多关注,因为它可以描述各种形状的文本,这得益于其在像素级的预测结果。 阅读详情

相关推荐

Python-DBNet大规模驾驶策略学习数据集

DBNet 数据集记录了视频、激光雷达点云,以及对应的资深驾驶员(驾龄超过 10 年)的真实驾驶行为。

场景文字检测DBnet论文解读

最近接触到了文字检测,学习一下DBnet。DBnet提出了一个可微二值化(DB)模块,该模块可以在分割网络中进行二值化处理。与DB模块一起优化的分割网络可以自适应地设置二值化的阈值,不仅简化了后处理,而且提高了文本检测的性能。标准的二值化过程是不可微的,作者提出了一个近似二值化函数代替标准二值化,也就是这个DB模块,并且DB模块在推理阶段还可以删除,不影响推理速度。两个函数图像对比如下:DBnet的优点如下:(1)DBnet能检测任意形状文本,并且在各个数据集上取得了好性能。

qq_52095705的博客 3157

IEC61850客户端连接实战:CMS vs MMS协议抓包对比与性能初探(基于YX-PIS协议栈)

本文深入探讨了IEC61850客户端连接中CMS与MMS协议的抓包对比与性能优化。通过Wireshark抓包分析、协议栈配置实战和性能基准测试,揭示了两种协议在连接建立、数据交互和性能调优方面的关键差异,为智能电网自动化系统的协议选择提供了实用指南。

weixin_29209805的博客 215

DBNet++(TPAMI) 原理与代码解析

本文是对DBNet的改进,关于DBNet的介绍具体可见场景文本检测算法 可微分二值化DBNet原理与代码解析,本文新提出了一种自适应尺度融合模块Adaptive Scale Fusion(ASF)module来自适应地融合多尺度的特征,将ASF应用于分割网络,显著地增强了其检测不同尺度文本实例的能力。

00000cj的博客 2975

【Linux】Petalinux使用QSPI FLASH引导启动

1. 预分配Flash空间使用Flash引导Petalinux做的系统,也有进阶的做法。部分图片和经验来源于网络,若有侵权麻烦联系我删除,主要是做笔记的时候忘记写来源了,做完笔记很久才写博客。1. 预分配Flash空间根据生成的bit文件大小估算BOOT.BIN文件的大小,为Flash大概分配四个分区:boot、bootenv、kernel、bootscr,分别存放BOOT.BIN文件、u-boot的环境变量、内核文件(image.ub/zImage/uImage等)、启动脚本boot.scr。

Tesseract_9527的博客 3375

手把手教你为STM32设备生成自定义MAC地址(基于芯片ID的5种算法对比)

本文详细介绍了基于STM32芯片ID生成自定义MAC地址的5种算法,包括直接截取、异或折叠、CRC32哈希、自定义混合运算及SHA-256摘要。通过对比分析各算法的计算复杂度、唯一性及适用场景,帮助嵌入式开发者根据项目规模与资源,选择最合适的方案,确保设备MAC地址的唯一性与合规性。

weixin_29170327的博客 527

DBNet++学习笔记

DBNet++学习笔记

爱学习爱运动的专栏 2975

DCM4CHEE Archive Light 应用配置-存储配置

本文介绍了在DICOM归档系统中配置和管理存储的方法,包括通过用户界面和LDAP导入两种方式。主要内容包括: 存储配置概述:用户可根据需求配置单个或多个存储设备,支持在磁盘空间不足或多任务并行时使用。存储分为Archive设备级(序列元数据存储)和Application Entity级(对象存储/元数据存储)。 用户界面操作: 设备级存储配置:通过菜单导航添加/编辑存储描述符,设置Storage ID、URI等关键参数 应用级存储引用:在设备扩展和网络AE中分别配置元数据和对象存储引用 LDAP配置方法:

洪城叮当的博客 1416

【读点论文】Real-Time Scene Text Detection with Differentiable Binarization and ASF加入多尺度设置,优化了DBnet

本文提出了一种用于检测任意形状场景文本的新框架,从两个方面改进了基于分割的场景文本检测方法:(1)**提出了可微分二值化模块,将二值化过程集成到训练阶段**;(2)提出的 ASF 模块有效增强了分割网络的尺度鲁棒性。两个模块均显著提高了文本检测准确率。**实验验证了我们的方法(ResNet-50 主干)在速度和准确率方面在五个标准场景文本基准上始终优于最先进的方法。特别是,即使使用轻量级主干(ResNet-18),我们的方法也可以在所有测试数据集上实现具有实时推理速度的竞争性性能**。

白水空空 1222

使用 Claude Skills 构建专业级 AI Agent:技术实践指南

Claude Skills(也称)是一组基于文件系统的可重用资源包,为 Claude 提供特定领域的专业知识、标准化工作流程和最佳实践。与传统一次性 Prompt 不同,Skills 是持久化、自动触发、支持代码执行的智能模块。让 AI 真正理解并执行你的工作方式。Claude Skills 正在重新定义 AI 助手的边界——从“回答问题”升级为“执行专业工作的能力”。其可组合、可移植、高效、强大的特性,使其成为自动化重复任务、标准化工作流、提升团队效率的理想工具。未来已来。

weixin_44058951的博客 2226

【AI Agent系列】【阿里AgentScope框架】0. 快速上手:AgentScope框架简介与你的第一个AgentScope程序

这是我们学习的第四款智能体框架了。前面我们学习了 AutoGPT、MetaGPT、LangGraph 等智能体应用开发框架,各有优缺点。今天我们开始学习AgentScope这一款多智能体开发框架。卷起来吧,多看看,多用用,没坏处。

同学小张的博客 5425

PP-OCR 论文解读:百度 PaddleOCR 通用中英文 3.5M 超轻量 OCR 模型

Paddle OCR 论文《PP-OCR: A Practical Ultra Lightweight OCR System》

qq_43799400的博客 6353

《MySQL 入门教程》第 03 篇 管理数据库

本篇主要介绍 MySQL 数据库的创建、查看、选择和删除操作,包括使用 mysql 命令行和 MySQL Workbench 图形工具两种方式。

Tony.Dong的专栏 3525

自用学习论文之DBNet

语音新手入门,学习读懂论文。本文作者机构是。

budangdiyi的博客 617

Python爬虫实战:爬取携程旅游平台数据,我拆解了动态反爬+Cookie续命(附完整可运行代码)

反爬类型表现形式应对思路sign参数返回403/空数据逆向JS还原加密逻辑Cookie时效登录后1小时Cookie失效定时刷新Cookie/保存登录态行为检测爬取过快触发验证码模拟真人延时/随机点击IP封禁单IP爬取超50条数据被封付费代理池/降低请求频率爬取携程旅游平台数据的核心,不是“简单的HTTP请求”,而是“理解平台的反爬逻辑并合规适配”——从sign参数破解到Cookie维护,再到行为模拟,每一步都是对HTTP协议、前端加密、用户行为的深度理解。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1713

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

详解Paddle Lite底层在backend上的Kernel选择策略

Paddle Lite是飞桨的轻量化推理引擎,为手机、IoT端提供高效推理能力,且广泛整合跨平台硬件,满足端侧部署及应用落地的需求。本文将描述Paddle Lite在模型转换过程(模型转...

百度大脑 1237

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

自用paddle几个好用的模型,记录下

unified_transformer_12L_cn会话模型,用于语音对话,恢复效果看图,还不错,地址如下 飞桨PaddlePaddle-源于产业实践的开源深度学习平台飞桨致力于让深度学习技术的创新与应用更简单。具有以下特点:同时支持动态图和静态图,兼顾灵活性和效率;精选应用效果最佳算法模型并提供官方支持;真正源于产业实践,提供业界最强的超大规模并行深度学习能力;推理引擎一体化设计,提供训练到多端推理的无缝对接;唯一提供系统化技术服务与支持的深度学习平台https://www.paddlepadd...

qq_23607397的博客 525

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

搞定系列 :paddleocr训练自己数据集windows版

paddleocr训练自己数据集windows版是一门专门适合初学者训练自己的paddleocr模型教程。通过本教程您可以收获:(1)学会在windows上安装自己的显卡驱动(2)学会在windows上安装cuda+cudnn(3)学会在windows上安装anaconda3(4)学会在windows安装PPOCRLabel以及使用PPOCRLabel标注自己的数据集(5)学会使用paddleocr训练文本检测模型(6)学会使用paddleocr训练文本识别模型(7)学会使用paddleocr导出自己的模型(8)学会使用paddleocr测试自己的模型

DBNet学习笔记(三)问题与解决

从大家的提问中学习:https://github.com/WenmuZhou/DBNet.pytorch/issues 如何把训练好的模型转换为onnx 老是有不支持的操作#65 把model - head 里面的 DBHead.py 中的upsample的mode换成"nearest"即可 问答里说的是这一句,现在作者的代码里面已经改好了: module_list = [ nn.Upsample(scale_factor=2, mode='nearest'), .

juluwangriyue的博客 2048

paddledetection 如何输出精准率,召回率acc(已验证)

类似的输出结果: Running per image evaluation... Evaluate annotation type *bbox* DONE (t=2.61s). Accumulating evaluation results... DONE (t=0.74s). Average Precision (AP) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.245 Average Precision (AP) @[ IoU=0.

Vertira的博客 3888

百度提出动态自蒸馏方法,结合交互模型与双塔模型实现稠密段落检索

©PaperWeekly 原创 ·作者 | Maple小七单位 | 北京邮电大学研究方向 | 自然语言处理论文题目:ERNIE-Search: Bridging Cross-Encoder with Dual-Encoder via Self On-the-fly Distillation for Dense Passage Retrieval论文链接:http://a...

Paper weekly 1381

PaddleOCR——训练总结

记录下训练碰到的问题 自己合成的数据在MLT验证精度非常低 原因:合成数据与真实数据差别较大,表现结果是在合成数据上拟合结果非常好,在真实数据上效果差,存在向合成数据过拟合的问题,解决办法增加真实数据(但这个不好找)、对真实数据进行数据增广(应该可以吧)、拿合成数据训练的best模型在真实数据上finetune(在测试)。 合成数据的best模型作为预训练模型在真是数据上finetune时最开始acc=0.0 原因:我使用的预训练模型是在合成数据上识别日语并且验证集准确度最高有83%左右,并且用这个模型在真

qq_37668436的博客 3077
上一篇: 连载翻译 | 流形学习的数学基础-1介绍
下一篇: 连载翻译 | 流形学习的数学基础-2基础
机器学习算法那些事
博客等级 码龄9年 1633粉丝 62原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值