论文解读丨【CVPR 2022】不使用人工标注提升文字识别器性能
摘要:本文提出了一种针对文字识别的半监督方法。区别于常见的半监督方法,本文的针对文字识别这类序列识别问题做出了特定的设计。
本文分享自华为云社区《[CVPR 2022] 不使用人工标注提升文字识别器性能》,作者:Hint。
本文提出了一种针对文字识别的半监督方法。区别于常见的半监督方法,本文的针对文字识别这类序列识别问题做出了特定的设计。具体来说,本文首先采用了teacher-student的网络结构,然后采用字符级别的一致性约束对teacher和student网络的预测进行对齐。此外,考虑到文字识别是step-by-step,每一个字符的预测都和之前时刻的预测结果相关。为了避免student网络在当前时刻的预测结果受到之前时刻错误预测的影响,本文将当前时刻之前,teacher的预测结果作为student当前时刻之前的预测结果,这样可以得到比较鲁棒的一致性约束,从而提升性能。

近年来,场景文本识别(STR)因其广泛应用而备受关注。大多数识别模型需要大量的有标注数据进行强监督训练。虽然合成数据可以缓解识别模型对数据量的需求,但是合成数据和真实场景的域间差距极大地限制了识别模型在真实场景下的性能。在本文中,作者希望通过同时利用有标注的合成数据以及无标注的真实数据来提升STR模型的性能,完全不需要任何人工标注。本文提出了一种鲁棒的基于一致性约束的半监督方法,可以有效解决合成数据与真实数据域不一致导致的不稳定问题。字符级的一致性约束旨在减轻序列识别过程中错误识别导致的不对齐问题。在标准文字识别数据集上,大量实验证明了所提出方法的有效性。该方法能够稳步提升现有的STR模型,并得到最先进的结果。此外,本文也是第一个将一致性约束应用到文字识别领域的工作。
方法:

本框架包括两个分支,一个是输出有标签合成数据的强监督分支,一个是输入无标签真实数据的半监督分支。强监督分支和一般的识别模型一样。关于半监督分支,采用teacher-student进行一致性约束。具体来说,将强监督得到的预训练模型作为teacher和student网络的初始化模型,然后对同一张输入图像进行弱数据扩增和强数据扩增,并分别输入到teacher和student网络中;将teacher网络的预测结果作为伪标签对student的输出进行监督。

由于文字识别是一个序列识别问题,当前时刻的预测结果和之前时刻的预测结果相关。为了尽可能减少target和online模型在同一时刻预测结果的不对齐问题,online分支之前时刻的预测结果会和target分支之前时刻的预测结果保持一致,然后再进行当前时刻的字符预测。字符级别的一致性loss如下公式所示,Dist()可以是交叉熵,KL-Div或者MSE,本文采用的是KL-Div。

此外,为了减轻合成数据与真实数据之间的域间差别,本文还使用了字符级别的域对齐模块。该模块首先分别将合成数据和真实数据每个时刻的视觉特征收集起来构成一个集合H
,然后计算他们各自的协方差矩阵cov()。

最终,整个框架的loss由强监督识别loss,一致性约束loss和域适应loss构成:

实验:

在引入无标签数据之后,当前识别模型的性能能够得到稳定的提升。

相比于其他利用无标签数据的方法而言,本文提出的基于一致性约束的方法能够优于其他几种方法。

该实验主要证明了online model中的projection layer,使用EMA更新的target model和domain adaptation模块的有效性。

该实验证明了在online model中使用和target model相同的之前时刻预测结果的有效性。

该实验主要讨论了一致性loss的类型对最终性能的影响,可以看到交叉熵和KL-Div性能差不多,且优于MSE。
论文解读丨【CVPR 2022】不使用人工标注提升文字识别器性能的更多相关文章
- 论文解读丨基于局部特征保留的图卷积神经网络架构(LPD-GCN)
摘要:本文提出一种基于局部特征保留的图卷积网络架构,与最新的对比算法相比,该方法在多个数据集上的图分类性能得到大幅度提升,泛化性能也得到了改善. 本文分享自华为云社区<论文解读:基于局部特征保留 ...
- 论文解读丨表格识别模型TableMaster
摘要:在此解决方案中把表格识别分成了四个部分:表格结构序列识别.文字检测.文字识别.单元格和文字框对齐.其中表格结构序列识别用到的模型是基于Master修改的,文字检测模型用到的是PSENet,文字识 ...
- 论文解读( N2N)《Node Representation Learning in Graph via Node-to-Neighbourhood Mutual Information Maximization》
论文信息 论文标题:Node Representation Learning in Graph via Node-to-Neighbourhood Mutual Information Maximiz ...
- 跟我读CVPR 2022论文:基于场景文字知识挖掘的细粒度图像识别算法
摘要:本文通过场景文字从人类知识库(Wikipedia)中挖掘其背后丰富的上下文语义信息,并结合视觉信息来共同推理图像内容. 本文分享自华为云社区<[CVPR 2022] 基于场景文字知识挖掘的 ...
- 自监督学习(Self-Supervised Learning)多篇论文解读(上)
自监督学习(Self-Supervised Learning)多篇论文解读(上) 前言 Supervised deep learning由于需要大量标注信息,同时之前大量的研究已经解决了许多问题.所以 ...
- CVPR 2022数据集汇总|包含目标检测、多模态等方向
前言 本文收集汇总了目前CVPR 2022已放出的一些数据集资源. 转载自极市平台 欢迎关注公众号CV技术指南,专注于计算机视觉的技术总结.最新技术跟踪.经典论文解读.CV招聘信息. M5Produc ...
- zz扔掉anchor!真正的CenterNet——Objects as Points论文解读
首发于深度学习那些事 已关注写文章 扔掉anchor!真正的CenterNet——Objects as Points论文解读 OLDPAN 不明觉厉的人工智障程序员 关注他 JustDoIT 等 ...
- CVPR2020行人重识别算法论文解读
CVPR2020行人重识别算法论文解读 Cross-modalityPersonre-identificationwithShared-SpecificFeatureTransfer 具有特定共享特征变换 ...
- CVPR2020论文解读:CNN合成的图片鉴别
CVPR2020论文解读:CNN合成的图片鉴别 <CNN-generated images are surprisingly easy to spot... for now> 论文链接:h ...
- 昇腾CANN论文上榜CVPR,全景图像生成算法交互性再增强!
摘要:近日,CVPR 2022放榜,基于CANN的AI论文<Interactive Image Synthesis with Panoptic Layout Generation>强势上榜 ...
随机推荐
- 《吐血整理》高级系列教程-吃透Fiddler抓包教程(24)-Fiddler如何优雅地在正式和测试环境之间来回切换-中篇
1.简介 在开发或者测试的过程中,由于项目环境比较多,往往需要来来回回地反复切换,那么如何优雅地切换呢?宏哥今天介绍几种方法供小伙伴或者童鞋们进行参考. 2.实际工作场景 2.1问题场景 (1)已发布 ...
- 前端三件套 HTML+CSS+JS基础知识内容笔记
HTML基础 目录 HTML基础 HTML5标签 doctype 标签 html标签 head标签 meta标签 title标签 body标签 文本和超链接标签 标题标签 段落标签 换行标签 水平标签 ...
- nsis使用URLDownloadToFile下载文件
在Urlmon.dll中有个函数叫URLDownloadToFile,顾名思义,是一个用来下载文件的东西,我们做在线安装或者其他很多时候,往往需要提前下载一些小的文件来配置当前将要安装的程序,遇到这种 ...
- 自定义ListView下拉刷新上拉加载更多
自定义ListView下拉刷新上拉加载更多 自定义RecyclerView下拉刷新上拉加载更多 Listview现在用的很少了,基本都是使用Recycleview,但是不得不说Listview具有划时 ...
- html点击a标签弹窗QQ聊天界面
以为很难.以为要第三方.谁知道不用.一句话的事情. 1 <a hfer="tencent://message/?uin=12345&Site=&Menu-=yes&qu ...
- Vue学习之--------深入理解Vuex、原理详解、实战应用(2022/9/1)
@ 目录 1.概念 2.何时使用? 3.搭建vuex环境 3.1 创建文件:src/store/index.js 3.2 在main.js中创建vm时传入store配置项 4.基本使用 4.1.初始化 ...
- 构建Springboot项目、实现简单的输出功能、将项目打包成可以执行的JAR包(详细图解过程)
1.构建SpringBoot项目 大致流程 1.新建工程 2.选择环境配置.jdk版本 3.选择 依赖(可省略.后续要手动在pom文件写) 4.项目名 1.1 图解建立过程 1.2 项目结构 友情提示 ...
- 通过齐博fun函数实现调用每周赚取的积分排行使用
下面代码保存到fun函数目录即可 <?php namespace app\common\fun; use think\db; class Jfrank { /** * @param string ...
- python更改文件后缀名
path = '1024.png' extension = 'jpg' for i in range(1,len(path)): if (path[-i] == '.'):#找到后缀初始点 new_p ...
- Sentinel 介绍与下载使用
sentinel 前方参考 计算QPS-Sentinel限流算法 https://www.cnblogs.com/yizhiamumu/p/16819497.html Sentinel 介绍与下载使用 ...