微信图片翻译技术优化之路

微信图片翻译2.0版本通过增加图片语种识别、段落框检测、文本段落矫正和图文合成渲染等模块,提升了用户体验。引入ViT和ShrinkViT进行语种识别,使用DBNet优化段落框检测,应用BERT进行文本段落分类,并基于OpenCV改进图文合成,实现更准确的翻译和排版。实测表明,2.0版本在文本识别、翻译质量和图文合成方面有显著提升,用户翻译行为活跃度增加21%。
摘要由CSDN通过智能技术生成

2bab394b274b4f5f7267864d30bb47b8.gif

作者:poetniu,腾讯 WXG 应用研究员

微信(WeChat)作为 12 亿+用户交流的平台,覆盖全球各个地区、不同语言的用户,而微信翻译作为桥梁为用户间的跨语言信息交流提供了便利。目前微信翻译每天为千万用户提供数亿次的翻译服务,且团队技术持续钻研,累计发表数十篇顶会论文、夺得多项 WMT 冠军。随着翻译质量的提升,微信翻译的应用形态从文本逐步扩展到图片、语音、网页、文档、视频等众多场景。本文以微信图片翻译为例介绍近一年的技术优化。

文章术语

  • ViT:Vision Transformer

  • NLP:自然语言处理

  • 段落:指图片中语义完整且位置独立的文本区域

  • CNN:卷积神经网络

  • NMT:神经网络机器翻译

  • Image Inpainting:图片修复

  • GAN:Generative Adversarial Networks、生成式对抗网络

1. 微信图片翻译 1.0

首先简要介绍微信图片翻译 1.0 版本的技术方案,重点梳理其中的关键问题。

1.0 版本中微信图片翻译采用相对简单的方案,主要分为两个模块:后台 Server 负责图片的文字识别、段落合并、段落翻译等,客户端根据文字识别和翻译结果渲染生成翻译图片。整体 pipeline 如下图所示:

c81e50c29cae9d6f2598cc3b46694a51.png

首先通过一批图片例子来看 1.0 版本的效果,这里我们对比竞品如有道、搜狗等图片翻译,如下图所示:

原图 微信图片翻译 1.0 有道 搜狗
c61ec7f50a1a1cb6e74f12759ab51bf9.png a2b26b580ea520042ae4e7a93562c710.png 6c6f50b49115afd9b4c7773643e87cee.png 841c533cdb08eb8bbf5cc870d4e58fe4.png
b612a99f48fd5fe5d58ab52f1aeec4d0.png f1e7c05c99c6b3f04d027c14f7da8c6e.png 59f91f292c858e94215e7b2993245ba5.png de0922d2d36f251d53f0bc733d3843fc.png
990f59326ab6b21cbe4d71812f23fa51.png a180820705e4467dd353614f066c28fa.png 13a47955af1d5b9ed63dd0065835a559.png cb0b41eec5b5972c8584336a3261d0d4.png

通过上述例子,对于图片翻译中间的关键步骤进行简单对比得到如下结果:

0ddcaa850708fb52d540525810ce9362.png

因此,整体上来看 1.0 版本的图片翻译效果体验还有很大的提升空间,其关键模块的效果都需要进行较大的优化,特别是文本段落、图文渲染最直接影响用户体验的模块。

2. 微信图片翻译 2.0

基于上述 1.0 版本存在的主要问题,在 2.0 版本我们重点优化了以下前、后处理模块:

  1. 增加图片语种识别模块:判断图片的语种分布。

  2. 增加图片段落框检测模块:检测图片中的段落框,用于基础段落拆分。

  3. 增加文本段落矫正模块:判断文本是否需要合并或者拆分为新的段落。

  4. 增加图文合成渲染模块:在 Server 端直接进行图片和译文的合成。

于是,整体微信图片翻译 2.0 版本的 pipeline 如下:

1447c6a6148c3afa70630b73af39ed3a.png

主要模块关系如下图所示:

23d6e05b024e2a549f946d39bf9e64f7.png
2.1 图片语种识别

图片语种识别是给定一张图片,判断其中是否包含文字,进一步判断图片中文字所属的语种,即 Image Script Identification。

传统的图片分类技术主要是基于 CNN 结构,受益于其自身的inductive biases(模型先验假设,如 translation equivariance 即转换等变性,通过 kernel 参数共享实现;locality 即局部性、通过卷积操作实现),在各个图片分类数据集取得领先的结果。而近年来随着 Transformer 结构在 NLP 领域取得突破的进展,诸如 NMT、BERT、GPT 等模型在机器翻译、文本分类、文本生成等任务得到广泛的应用。CV 领域研究者也尝试将 Transformer 结构引入到图像任务中,特别是今年谷歌提出统一的Vision Transformer(ViT)模型[1] 在大规模数据集的训练下,尽管缺少相应的 inductive biases,但是依旧超越 CNN 的效果。

也由此引起一股 ViT 的研究热潮,比如 Facebook 随即提出 DeiT [2]、微软提出 BEIT [3]、SwinTransformer [4]、清华提出 DynamicViT [5]等,这些工作基本都是在原始 ViT 的基础上优化预训练策略、模型结构(层次化、动态化)等来提升效果。

因此这里图片语种识别的方案也是基于 ViT,并且在 ViT 基础之上做了模型结构层面的加速优化提出 ShrinkViT。

2.1.1 ViT

原始 ViT 结构如下图(源自[1]):

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值