Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
weixin_41840029
PaddleOCR
提交
7b254a60
P
PaddleOCR
项目概览
weixin_41840029
/
PaddleOCR
与 Fork 源项目一致
Fork自
PaddlePaddle / PaddleOCR
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
PaddleOCR
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
7b254a60
编写于
5月 02, 2022
作者:
L
LDOUBLEV
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix comment
上级
eb047640
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
12 addition
and
12 deletion
+12
-12
doc/doc_ch/PP-OCRv3_introduction.md
doc/doc_ch/PP-OCRv3_introduction.md
+12
-12
未找到文件。
doc/doc_ch/PP-OCRv3_introduction.md
浏览文件 @
7b254a60
...
@@ -34,29 +34,29 @@ PP-OCRv2从骨干网络选择和调整、预测头部的设计、数据增强、
...
@@ -34,29 +34,29 @@ PP-OCRv2从骨干网络选择和调整、预测头部的设计、数据增强、
### PP-OCRv3文本检测模型优化策略
### PP-OCRv3文本检测模型优化策略
PP-OCRv3
在PP-OCRv2的基础上进一步升级
。
PP-OCRv3
采用PP-OCRv2的
[
CML
](
https://arxiv.org/pdf/2109.03144.pdf
)
蒸馏策略,在蒸馏的student模型、teacher模型精度提升,CML蒸馏策略上分别做了优化。下面简要介绍PPOCRv3的文本检测优化策略
。
PP-OCRv3文本检测从网络结构、蒸馏训练策略两个方向做了进一步优化:
-
首先,在蒸馏student模型精度提升方面,针对模型召回能力低的问题,提出了RSEFPN的FPN结构用于提升student模型精度;
1.
网络结构改进:提出两种改进后的FPN网络结构,RSEFPN,LKPAN,分别从channel attention、更大感受野的角度优化FPN结构。
*RSEFPN简要介绍:*
RSEFPN的网络结构如下图所示,RSEFPN在PPOCRv2的FPN基础上,将FPN中的卷积层更换为了channel attention结构的RSEConv层。
![](
../ppocr_v3/RSEFPN.png
)
![](
../ppocr_v3/RSEFPN.png
)
PPOCRv2检测模型的FPN结构由纯卷积和上采样层构成,不包含BN层,激活函数等模块。PPOCRv3对PPOCRv2检测模型中的FPN结构进行改进,借鉴channel attention的思想,将FPN中的卷积层换为带残差结构的RSEBlock,其网络结构如上图所示;SEBlock起到channel attention的作用;另外,考虑到PPOCR文本检测模型FPN网络的通道数较小(channel=96),channel atttion可能抑制掉某些包含重要特征的channel;因此,PPOCRv3引入了残差结构。实验表明引入残差结构相比只引入SEBlock有2.7%的精度提升。RSEFPN将base检测模型的精度hmean从81.3%提升到84.5%
。
RSEFPN将PPOCR检测模型的精度hmean从81.3%提升到84.5%。模型大小从3M变为3.6M
。
*LKPAN简要介绍:*
-
然后,在蒸馏的teacher模型精度提升方面,提出了LKPAN结构替换PPOCRv2的FPN结构,并且使用ResNet50作为Backbone,更大的模型带来更多的精度提升。最终teacher的模型指标hmean达到了86.0%。
LKPAN的网络结构如下图所示:
![](
../ppocr_v3/LKPAN.png
)
![](
../ppocr_v3/LKPAN.png
)
LKPAN是一个具有更大感受野的轻量级PAN结构。其网络结构如上图所示。 LKPAN对输入的特征首先使用
`1*1`
conv统一特征的通道, 在LKPAN的path augmentation中,使用kernel size为
`9*9`
的深度可分离卷积。更大的kernelsize意味着更大的感受野,更容易检测大字体的文字以及极端长宽比的文字。使用深度可分离卷积可以显著降低模型的参数量。LKPAN将base检测模型的精度hmean从81.3%提升到84.9%。
LKPAN是一个具有更大感受野的轻量级PAN结构。在在LKPAN的path augmentation中,使用kernel size为
`9*9`
的卷积;更大的kernel size意味着更大的感受野,更容易检测大字体的文字以及极端长宽比的文字。LKPAN将base检测模型的精度hmean从81.3%提升到84.9%。
*注:LKPAN相比RSEFPN有更多的精度提升,但是考虑到模型大小和预测速度等因素,在student模型中使用RSEFPN。*
2.
CML蒸馏训练策略调整:PPOCRv3文本检测模型训练中,仍采用
[
CML
](
https://arxiv.org/pdf/2109.03144.pdf
)
的蒸馏策略。首先,在蒸馏teacher模型选择上,使用ResNet50作为teacher的Backbone,使用LKPAN作为FPN部分,最终使用
[
DML
](
https://arxiv.org/abs/1706.00384
)
蒸馏策略训练得到更高精度的teacher模型。然后,在CML蒸馏训练时,随训练epoch数增加,线性降低teacher模型和student模型之间损失函数的比例,loss比例计算公式如下:
-
最后,调整CML蒸馏训练策略调整:为了进一步提升蒸馏模型的精度,对teacher模型使用
[
DML
](
https://arxiv.org/abs/1706.00384
)
蒸馏策略进一步提升teacher模型的精度,更好的指导student模型的训练。
```
α = 1 – (epoch/total_epoch)*0.4
```
最后,在蒸馏时,考虑到模型大小及预测速度,采用RSEFPN作为蒸馏student模型的FPN结构。优化后的CML蒸馏将PPOCRv2的精度hmean从83.3%提升到84.4%,同时模型的召回能力显著提升。
采用上述策略,PPOCRv3相比PPOCRv2,hmean指标从83.3%提升到85.4%;预测速度从平均117ms/image变为124ms/image。
3.
消融实验
3.
消融实验
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录