前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >Github 3.8k,人、车、OCR等9大高精度超轻量图像识别模型全开源!!

Github 3.8k,人、车、OCR等9大高精度超轻量图像识别模型全开源!!

作者头像
昱良
发布于 2022-06-17 11:12:33
发布于 2022-06-17 11:12:33
1.3K08
代码可运行
举报
运行总次数:8
代码可运行

人脸、车辆、人体属性、卡证、交通标识等经典图像识别能力,在我们当前数字化工作及生活中发挥着极其重要的作用。业内也不乏顶尖公司提供的可直接调用的APISDK,但这些往往面临着定制化场景泛化效果不好、价格昂贵、黑盒可控性低、技术壁垒难以形成多诸多痛点。

而今天小编要给大家推荐的是一个完全开源免费的覆盖人、车、OCR等9大经典识别场景、在CPU上可3毫秒实现急速识别、一行代码就可实现迭代训练的项目!

图1 PaddleClas图像分类应用示意图

话不多说,赶紧送上传送门,识货的小伙伴赶紧尝试一下吧!

https://github.com/PaddlePaddle/PaddleClas

记得Star收藏防止走丢哦!

当然,小编不是只管吆喝的,下面小编就来详细拆解下这个项目的过人之处吧!

图2 9大场景模型效果示意图

亮点一:完美平衡精度与速度

从大名鼎鼎的Resnet50到如今火热的Swin-Transformer,模型精度不断被刷新,但是预测效率并不高。即使是Swin-Transformer最小的模型,在CPU上的预测速度也超过100ms,远远无法满足产业实时预测的需求。

而使用MobileNet系列等轻量化模型可以保证较高的预测效率,在CPU上预测一张图像大约3ms,但是模型精度往往和大模型有很大差距。

而PaddleClas推出的超轻量图像分类方案(Practical Ultra Light Classification,简称PULC),就完美解决上述产业落地中算法精度和速度难以平衡的痛点。

表1 不同模型精度速度结果对比

如图所示,它的精度与Swin-Transformer等大模型比肩,预测速度却可以快30倍以上,在CPU上的推理时长仅需2ms!

亮点二:易用性极强

PULC方案不仅完美的平衡了精度与速度,还充分考虑了产业实践过程中需要定制化的对算法快速迭代的需求,只需一行命令,就可完成模型训练。

与此同时,PaddleClas 团队还发布了包括人、车、OCR在内的9大场景模型,仅需2步就能实现业务 POC 效果验证,训练、推理、部署一条龙,真正实现“开箱即用”。

不仅如此,项目还匹配了详细的中文使用文档及产业实践范例教程。

图3 使用文档及范例示意图

亮点三:集成超多硬核技术

超轻量图像分类方案(PULC)集成了业界4大业界领先的优化策略:

图4 超轻量图像分类方案(PULC)示意图

PP-LCNet轻量级骨干网络

PP-LCNet作为针对CPU量身打造的骨干网络模型,在速度、精度方面均远超如MobileNetV3等同体量算法,多个场景模型优化后,速度较SwinTransformer的模型快30倍以上,精度较MobileNetV3_small_0.35x高18个点。

SSLD预训练权重

SSLD半监督蒸馏算法可以使小模型学习到大模型的特征和ImageNet22k无标签大规模数据的知识。在训练小模型时,使用SSLD预训练权重作为模型的初始化参数,可以使不同场景的应用分类模型获得1-2.5个点的精度提升。

数据增强策略集成

该方案融合了图像变换、图像裁剪和图像混叠3种数据增强方法,并支持自定义调整触发概率,能使模型的泛化能力大大增强,提升模型在实际场景中的性能。模型可以在上一步的基础上,精度再提升1个点左右。

SKL-UGI知识蒸馏算法

SKL(symmetric-KL)在经典的KL知识蒸馏算法的基础上引入对称信息,提升了算法的鲁棒性。同时,该方案可以方便的在训练中加入无标签训练数据(Unlabeled General Image),可以进一步提升模型效果。该算法可以使模型精度继续提升1-2个点。

加入PaddleClas技术交流群

入群福利:

1.获取PaddleClas详解本次升级内容的直播课链接。

2.获取PaddleClas团队整理的10G重磅图像分类学习大礼包,包括:

图5 PaddleClas入群礼包内容示意

入群方式:

SETP1:微信扫描二维码,填写问卷

SETP2:加入交流群领取福利

PaddleClas产业落地工具集

不仅如此,PaddleClas团队考虑到真实产业应用面对的各种软硬件环境和不同的场景需求,在提供PULC方案的同时,还提供了包括3种训练方式、5种训练环境、3种模型压缩策略和9种推理部署方式在内的20种产业算法落地方案:

表3 图像分类产业落地工具集训练推理部署功能支持列表

集中值得高度关注的有:

01

分布式训练

飞桨分布式训练架构具备4D混合并行、端到端自适应分布式训练等多项特色技术。在PP-LCNet训练中,4机8卡相较于单机8卡加速比达到3.48倍,加速效率87%,精度无损。

02

模型压缩

飞桨模型压缩工具PaddleSlim功能完备,覆盖模型裁剪、量化、蒸馏和NAS。图像分类模型经过量化裁剪后,移动端平均预测耗时减少24%。

03

移动端/边缘端部署

飞桨轻量化推理引擎Paddle Lite适配了20+ AI 加速芯片,可以快速实现图像分类模型在移动设备、嵌入式设备和IOT设备等高效设备的部署。

以上所有模型、代码均在PaddleClas中开源提供,还有超详细文档教程和范例项目,赶紧查看全部开源代码并Star收藏吧~

链接指路:https://github.com/PaddlePaddle/PaddleClas

福利时间到

为了让开发者们更深入的了解PaddleClas这次 发布的全新内容,解决落地应用难点,掌握产业实践的核心能力,6月15-6月17日晚20:30飞桨团队精心准备了为期三天的直播课程!

百度资深工程师将为我们详细介绍超轻量图像分类方案,对各场景模型优化原理及使用方式进行拆解,之后还有产业案例全流程实操,对各类痛难点解决方案进行手把手教学,加上直播现场互动答疑,还在等什么!抓紧扫码上车吧!

更多阅读

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

PaddleClas项目地址:

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

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

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-06-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 机器学习算法与Python学习 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
1 条评论
热度
最新
优雅的方式是什么呢?参考slf4j,门面模式?
优雅的方式是什么呢?参考slf4j,门面模式?
回复回复点赞举报
推荐阅读
看图学NumPy:掌握n维数组基础知识点,看这一篇就够了
NumPy是Python的最重要的扩展程序库之一,也是入门机器学习编程的必备工具。然而对初学者来说,NumPy的大量运算方法非常难记。
刘早起
2021/01/05
6.2K0
Python数据分析 | Numpy与2维数组操作
教程地址:http://www.showmeai.tech/tutorials/33
ShowMeAI
2022/02/25
1.9K0
Python数据分析 | Numpy与2维数组操作
20个不常见但却非常有用的Numpy函数
Numpy是每个数据科学家都应该掌握的Python包,它提供了许多创建和操作数字数组的方法。它构成了许多与数据科学相关的广泛使用的Python库的基础,比如panda和Matplotlib。
deephub
2021/10/22
9170
Python:Numpy详解
NumPy 最重要的一个特点是其 N 维数组对象 ndarray,它是一系列同类型数据的集合,以 0 下标为开始进行集合中元素的索引。
用户7886150
2021/01/03
3.7K0
numPy的一些知识点
numpy 早就用过了,但是长时间不用的话对其中的一些知识点又会忘记,又要去网上翻看各种博客,干脆自己把常用的一些东西记下来好了,以后忘了的话直接看自己写的笔记就行了
棒棒鸡不棒
2022/09/01
9680
numPy的一些知识点
Python数据分析 | Numpy与1维数组操作
教程地址:http://www.showmeai.tech/tutorials/33
ShowMeAI
2022/02/25
9530
Python数据分析 | Numpy与1维数组操作
python的numpy入门简介
arr=np.array(data)    #将列表转为numpy.ndarray  np.array([2,4])
用户7886150
2021/01/07
1.5K0
图解Python numpy基本操作
Numpy是python的一个非常基础且通用的库,基本上常见的库pandas,opencv,pytorch,TensorFlow等都会用到。
周萝卜
2023/11/12
2360
图解Python numpy基本操作
NumPy 笔记(超级全!收藏√)
NumPy 教程NumPy Ndarray 对象NumPy 数据类型数据类型对象 (dtype)
用户7886150
2021/01/08
4.8K0
NumPy 使用教程
如果你使用 Python 语言进行科学计算,那么一定会接触到 NumPy。NumPy 是支持 Python 语言的数值计算扩充库,其拥有强大的多维数组处理与矩阵运算能力。除此之外,NumPy 还内建了大量的函数,方便你快速构建数学模型。
用户7886150
2021/01/08
2.5K0
python 中numpy基本方法总结可以类推tensorflow
一、数组方法 创建数组:arange()创建一维数组;array()创建一维或多维数组,其参数是类似于数组的对象,如列表等 反过来转换则可以使用numpy.ndarray.tolist()函数,如a.tolist() 创建数组:np.zeros((2,3)),或者np.ones((2,3)),参数是一个元组分别表示行数和列数 对应元素相乘,a * b,得到一个新的矩阵,形状要一致;但是允许a是向量而b是矩阵,a的列数必须等于b的列数,a与每个行向量对应元素相乘得到行向量。 + - / 与 * 的运
学到老
2018/03/16
2.1K0
Numpy库
NumPy是一个功能强大的Python库,主要用于对多维数组执行计算。NumPy这个词来源于两个单词-- Numerical和Python。NumPy提供了大量的库函数和操作,可以帮助程序员轻松地进行数值计算。在数据分析和机器学习领域被广泛使用。他有以下几个特点:
用户9615083
2022/12/25
3.8K0
Numpy库
Python 数据处理:NumPy库
✅作者简介:人工智能专业本科在读,喜欢计算机与编程,写博客记录自己的学习历程。 🍎个人主页:小嗷犬的博客 🍊个人信条:为天地立心,为生民立命,为往圣继绝学,为万世开太平。 🥭本文内容:Python 数据处理:NumPy库 ---- Python 数据处理:NumPy库 1.NumPy简介 2.NumPy的ndarray:一种多维数组对象 2.1 创建ndarray 2.2 ndarray的数据类型 2.3 NumPy数组的运算 2.4 基本的索引和切片 2.5 切片索引 2.6 布尔型索引 2
小嗷犬
2022/11/15
5.7K0
Python 数据处理:NumPy库
Python中的numpy常用函数整理
np.arange(begin,end,step):生成一个从begin到end-step的步长为step的一维数组,其中begin(默认0),step(默认1)可省略
用户7886150
2021/01/07
3K0
NumPy:Python科学计算基础包
NumPy 是 Python 科学计算的基础包,几乎所有用 Python 工作的科学家都利用了的强大功能。此外,它也广泛应用在开源的项目中,如:Pandas、Seaborn、Matplotlib、scikit-learn等。
luckpunk
2023/09/26
3390
NumPy:Python科学计算基础包
50个常用的 Numpy 函数详解
Numpy是python中最有用的工具之一。它可以有效地处理大容量数据。使用NumPy的最大原因之一是它有很多处理数组的函数。在本文中,将介绍NumPy在数据科学中最重要和最有用的一些函数。
统计学家
2024/01/29
3190
50个常用的 Numpy 函数详解
NumPy 1.26 中文官方指南(一)
NumPy 是 Python 中科学计算的基础包。 这是一个提供多维数组对象、各种派生对象(如掩码数组和矩阵)以及一系列用于数组快速操作的例程的 Python 库,包括数学、逻辑、形状操作、排序、选择、I/O、离散傅里叶变换、基本线性代数、基本统计运算、随机模拟等。
ApacheCN_飞龙
2024/04/26
1.3K0
NumPy 1.26 中文官方指南(一)
50个常用的Numpy函数解释,参数和使用示例
Numpy是python中最有用的工具之一。它可以有效地处理大容量数据。使用NumPy的最大原因之一是它有很多处理数组的函数。在本文中,将介绍NumPy在数据科学中最重要和最有用的一些函数。
deephub
2022/11/11
1.3K0
50个常用的Numpy函数解释,参数和使用示例
Python 之 Numpy 框架入门
NumPy 是 Python 中用于科学计算的基本包。它是一个 Python 库,提供了一个多维数组对象、各种派生对象(比如屏蔽数组和矩阵) ,以及一系列用于数组快速操作的例程,包括数学、逻辑、形状操作、排序、选择、 i/o、离散傅里叶变换、基本线性代数、基本统计操作、随机模拟等等。
痴者工良
2023/11/28
3160
Python 之 Numpy 框架入门
NumPy 1.26 中文官方指南(二)
NumPy(Numerical Python)是一个开源的 Python 库,几乎在每个科学和工程领域中都被使用。它是 Python 中处理数值数据的通用标准,在科学 Python 和 PyData 生态系统的核心地位不可撼动。NumPy 的用户包括从初学者程序员到经验丰富的从事最前沿的科学和工业研究与开发的研究人员。NumPy API 在 Pandas、SciPy、Matplotlib、scikit-learn、scikit-image 和大多数其他数据科学和科学 Python 软件包中得到广泛应用。
ApacheCN_飞龙
2024/04/26
4840
NumPy 1.26 中文官方指南(二)
相关推荐
看图学NumPy:掌握n维数组基础知识点,看这一篇就够了
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验