Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
weixin_41840029
PaddleOCR
提交
52763f1c
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看板
未验证
提交
52763f1c
编写于
8月 29, 2022
作者:
D
Double_V
提交者:
GitHub
8月 29, 2022
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #7404 from LDOUBLEV/26_doc
fix cml
上级
350e68cf
3de86afd
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
25 addition
and
39 deletion
+25
-39
configs/det/ch_PP-OCRv2/ch_PP-OCRv2_det_cml.yml
configs/det/ch_PP-OCRv2/ch_PP-OCRv2_det_cml.yml
+0
-4
configs/det/ch_PP-OCRv3/ch_PP-OCRv3_det_cml.yml
configs/det/ch_PP-OCRv3/ch_PP-OCRv3_det_cml.yml
+19
-29
ppocr/losses/basic_loss.py
ppocr/losses/basic_loss.py
+6
-6
未找到文件。
configs/det/ch_PP-OCRv2/ch_PP-OCRv2_det_cml.yml
浏览文件 @
52763f1c
...
...
@@ -94,14 +94,11 @@ Loss:
-
[
"
Student"
,
"
Student2"
]
maps_name
:
"
thrink_maps"
weight
:
1.0
# act: None
model_name_pairs
:
[
"
Student"
,
"
Student2"
]
key
:
maps
-
DistillationDBLoss
:
weight
:
1.0
model_name_list
:
[
"
Student"
,
"
Student2"
]
# key: maps
# name: DBLoss
balance_loss
:
true
main_loss_type
:
DiceLoss
alpha
:
5
...
...
@@ -191,7 +188,6 @@ Eval:
channel_first
:
False
-
DetLabelEncode
:
# Class handling label
-
DetResizeForTest
:
# image_shape: [736, 1280]
-
NormalizeImage
:
scale
:
1./255.
mean
:
[
0.485
,
0.456
,
0.406
]
...
...
configs/det/ch_PP-OCRv3/ch_PP-OCRv3_det_cml.yml
浏览文件 @
52763f1c
...
...
@@ -24,6 +24,7 @@ Architecture:
model_type
:
det
Models
:
Student
:
pretrained
:
model_type
:
det
algorithm
:
DB
Transform
:
null
...
...
@@ -40,6 +41,7 @@ Architecture:
name
:
DBHead
k
:
50
Student2
:
pretrained
:
model_type
:
det
algorithm
:
DB
Transform
:
null
...
...
@@ -56,6 +58,7 @@ Architecture:
name
:
DBHead
k
:
50
Teacher
:
pretrained
:
freeze_params
:
true
return_all_feats
:
false
model_type
:
det
...
...
@@ -91,14 +94,11 @@ Loss:
-
[
"
Student"
,
"
Student2"
]
maps_name
:
"
thrink_maps"
weight
:
1.0
# act: None
model_name_pairs
:
[
"
Student"
,
"
Student2"
]
key
:
maps
-
DistillationDBLoss
:
weight
:
1.0
model_name_list
:
[
"
Student"
,
"
Student2"
]
# key: maps
# name: DBLoss
balance_loss
:
true
main_loss_type
:
DiceLoss
alpha
:
5
...
...
@@ -204,31 +204,21 @@ Eval:
label_file_list
:
-
./train_data/icdar2015/text_localization/test_icdar2015_label.txt
transforms
:
-
DecodeImage
:
img_mode
:
BGR
channel_first
:
false
-
DetLabelEncode
:
null
-
DetResizeForTest
:
null
-
NormalizeImage
:
scale
:
1./255.
mean
:
-
0.485
-
0.456
-
0.406
std
:
-
0.229
-
0.224
-
0.225
order
:
hwc
-
ToCHWImage
:
null
-
KeepKeys
:
keep_keys
:
-
image
-
shape
-
polys
-
ignore_tags
-
DecodeImage
:
# load image
img_mode
:
BGR
channel_first
:
False
-
DetLabelEncode
:
# Class handling label
-
DetResizeForTest
:
-
NormalizeImage
:
scale
:
1./255.
mean
:
[
0.485
,
0.456
,
0.406
]
std
:
[
0.229
,
0.224
,
0.225
]
order
:
'
hwc'
-
ToCHWImage
:
-
KeepKeys
:
keep_keys
:
[
'
image'
,
'
shape'
,
'
polys'
,
'
ignore_tags'
]
loader
:
shuffle
:
f
alse
drop_last
:
f
alse
batch_size_per_card
:
1
shuffle
:
F
alse
drop_last
:
F
alse
batch_size_per_card
:
1
# must be 1
num_workers
:
2
ppocr/losses/basic_loss.py
浏览文件 @
52763f1c
...
...
@@ -60,19 +60,19 @@ class KLJSLoss(object):
],
"mode can only be one of ['kl', 'KL', 'js', 'JS']"
self
.
mode
=
mode
def
__call__
(
self
,
p1
,
p2
,
reduction
=
"mean"
):
def
__call__
(
self
,
p1
,
p2
,
reduction
=
"mean"
,
eps
=
1e-5
):
if
self
.
mode
.
lower
()
==
'kl'
:
loss
=
paddle
.
multiply
(
p2
,
paddle
.
log
((
p2
+
1e-5
)
/
(
p1
+
1e-5
)
+
1e-5
))
paddle
.
log
((
p2
+
eps
)
/
(
p1
+
eps
)
+
eps
))
loss
+=
paddle
.
multiply
(
p1
,
paddle
.
log
((
p1
+
1e-5
)
/
(
p2
+
1e-5
)
+
1e-5
))
p1
,
paddle
.
log
((
p1
+
eps
)
/
(
p2
+
eps
)
+
eps
))
loss
*=
0.5
elif
self
.
mode
.
lower
()
==
"js"
:
loss
=
paddle
.
multiply
(
p2
,
paddle
.
log
((
2
*
p2
+
1e-5
)
/
(
p1
+
p2
+
1e-5
)
+
1e-5
))
p2
,
paddle
.
log
((
2
*
p2
+
eps
)
/
(
p1
+
p2
+
eps
)
+
eps
))
loss
+=
paddle
.
multiply
(
p1
,
paddle
.
log
((
2
*
p1
+
1e-5
)
/
(
p1
+
p2
+
1e-5
)
+
1e-5
))
p1
,
paddle
.
log
((
2
*
p1
+
eps
)
/
(
p1
+
p2
+
eps
)
+
eps
))
loss
*=
0.5
else
:
raise
ValueError
(
...
...
@@ -125,7 +125,7 @@ class DMLLoss(nn.Layer):
loss
=
(
self
.
_kldiv
(
log_out1
,
out2
)
+
self
.
_kldiv
(
log_out2
,
out1
))
/
2.0
else
:
#
for detection distillation log is not needed
#
distillation log is not needed for detection
loss
=
self
.
jskl_loss
(
out1
,
out2
)
return
loss
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录