数据分类分级-敏感图片识别

简介: 本文将介绍我们在证件、票据类敏感图片识别中的一些洞察,以及对上述问题的原创性的解决方案,以帮助企业合法合规、低成本的解决敏感图片识别的难题。在本文第二部分,我们将回顾一些相关的机器视觉(CV)技术。第三部分我们将介绍我们的做法以及达到的效果。

背景

       在数字化时代的浪潮下,企业对保护敏感图像信息的需求已变得迫在眉睫。诸如证件照片和票据等纸质文件的扫描版本携带着个人隐私和关键的商业信息,一旦这些信息遭到泄露或滥用,都可能对企业和个人造成严重的风险和损失。因此,确保这些图像的安全性和机密性已经成为数据安全和数据合规工作的核心焦点。

       然而,如何有效识别这些敏感图像却是一项复杂且充满挑战的任务。首先,企业需要确保敏感图片识别与保护技术的可靠性和准确性,以避免误判和遗漏。但是,事先开发的模型很难覆盖所有的敏感图像类别,如果在使用过程中不断引入新的敏感图像类别,同时更新和优化模型,这无疑显著地增加了使用和维护成本。何况除了通用的敏感图像类别之外,企业还可能拥有特定的敏感数据类别,这些企业特有的数据是无法通过公开渠道获取的。此外,在模型训练过程中,确保敏感图像的收集和数据处理流程合法且合规,这也是需要特别注意的地方。

       本文将介绍我们在证件、票据类敏感图片识别中的一些洞察,以及对上述问题的原创性的解决方案,以帮助企业合法合规、低成本的解决敏感图片识别的难题。在本文第二部分,我们将回顾一些相关的机器视觉(CV)技术。第三部分我们将介绍我们的做法以及达到的效果。


分析

当遇到难题时,最好的做法是看看已有的技术以及他们解决了什么问题,并试图将我们遇到的难题转化成已解决的问题或者他们的组合。

       在证件、票据类敏感图片识别中,遇到的最大挑战是类别的不确定性。这个问题其实非常地常见,通常会使用度量学习(Metric Learning)的技术来解决。其中,大家最常见的就是人脸识别任务了,以手机或门禁为例,显然系统不可能预先知道使用者是谁。因此,要使用人脸解锁,需要先使用者配合采集多张脸部图像,解锁时则只需配合让摄像头拍摄到正脸图片即可。其核心的工作原理如下:录入过程中,系统将多个角度的人脸图片使用深度神经网络提取的特征进行融合并存储,而在使用过程中,系统再次使用深度神经网络提取人脸特征,并与存储的特征进行比对,达到一定相似度即可。开发者则使用度量学习的技术训练好用于人脸特征提取的神经网络,来保证产品的核心功能正常运作。

       类似的,如果我们训练一个能很好的提取证件、票据类图片的特征的神经网络,并且将敏感图片的特征存储在系统中,在扫描时只需要比较提取的特征与系统中敏感图片进行比较就行。但是这真能解决我们的问题吗,或者更确切地说我们能训练出这样一个神经网络并且达到不错的准确率吗?

       很可惜,答案是否定的。首先,人脸识别模型通常使用数百万乃至上亿的人脸图片进行训练,而收集如此之多的敏感图片简直是无法想象且非常危险的。其次,人脸图片本身具有一定的特殊性,因为不管长相如何怪异,总是两只眼睛一张嘴,且位置都相对固定,模型能正确区分眼睛鼻子形状等,也能取得不错的效果。如果有心观察过超市生鲜区越来约普及的、类似工作原理的智能电子秤,就会发现其准确率确实是差强人意。

图1. 图片匹配的示意图,通过卷积神经网络获取局部特征,然后使用如RANSAC方法计算匹配的点,验证是否匹配。

       当然,证件、票据图片也有自己的特殊性,即他们是二维的,而且通常有相对固定的图标、文字和布局,扭曲也比较小,因此在不同视角下获取的图像通常只相差一个仿射变换。熟悉的计算机视觉的读者一定想到了,也许我们能使用图片检索(Image retrieval)的做法——完成图片召回后,然后通过几何验证(Geometric Verification)进行重排序,排除错误召回的图片,以及找出最匹配的图片。这里必须指出一个意外的好处,在证件、票据类敏感图片识别中,要求满足几何验证并不是重排序的一种方案,而是天然需要符合的条件,这来源于证件、票据等印刷在二维纸张上必然的结果。

       至此,我们已经对如何解决我们遇到的难题有了很清晰的思路,概括起来就是把敏感图片当作待检索的图片,并使用需扫描的图片作为query图片去检索出敏感图片库中的图片,召回使用度量学习的方法训练的全局特征,而后使用几何验证来保证正确率。


实践

       在有了清晰的路线图之后,我们就很容易知道我们要做什么来达到目标了。首先,我们在公开互联网上收集并人工清洗得到了约11,000 张,约150种类别证件及票据图片作为测试图片*,用于验证效果。计算准确率时,我们采用了一个非常严格的标准,即当我们选择某类别中的一张图片作为query,如果Top 1 的结果是同类别其他图片的话,我们才认为结果是准确的。(*局限性:我们收集的图片中证件、票据等主体普遍占据图片面积的30%以上,超过半数整张图片就是证件或票据。虽然如此,我们认为这也比较符合敏感图片的特点。)

图2. 我们收集的部分测试图片,涵盖了各类卡、证和发票等敏感文件。数据来源为Google Image、Yandex、duckduckgo等搜索引擎。

       有了测试集后,我们测试了多种特征提取方案,从传统的SIFT,到Imagnet 预训练的VGG、ResNet、MobileNet等卷积神经网络,以及使用DINO自监督训练的ResNet和视觉transformer (VIT)。在召回阶段,我们发现使用GeM池化得到的全局特征,显著优于比MaxPool得到的全局特征,以及计算局部特征匹配的数量的方案。而在几何验证阶段,我们发现用DINO自监督预训练的模型效果最好。

图3. 训练使用的合成数据示意图。ID卡中布局和文字均为随机生成,而人脸图片生成使用了styleGAN2;火车票图片则通过模版填充随机生成的文字/数字生成。

       在此基础上,我们还人工合成了卡片类图片,混合了海报、表格等开源数据,共计超过50万张图片,在开源的DINO ResNet基础上,使用DINO自监督方法,以及Adapters 进行了继续训练。对于全局特征,我们使用arcface loss,以及我们人工合成的卡片类图片,对模型stage4的参数进行了微调。最终,在我们收集的测试集上,敏感图片识别的准确率超过了93%,配合上一些简单的策略则能让最后整体的准确率达到95%,实现了可工业使用的标准。(当然,要落地还缺不了通过选择轻量化的模型架构、模型蒸馏、权重量化等技术让模型更加高效!)

       在用九智汇分类分级平台,我们也已经集成了所有前文中提到的功能,让用户可以开箱即用。除了内置的一些敏感图片类别,如身份证、驾驶证、护照、教师资格证、营业执照等之外,我们支持添加新的类别,流程如图4所示,这里添加的是越南的身份证明,用户只需上传一些示例图片即可,平台将会提取特征并存储起来,而示例图片本身则不会被存储。


图4. 用九智汇-分类分级平台中,自定义图片标识的使用。上传示例图片即可提取和存储特征。用户还可以验证,确认效果。在后续的扫描任务中,同类图片即可被识别出来。


总结

       在本文中,我们介绍了在证件、票据类敏感图片识别的一些思考、观察和实践。通过对图片检索技术的创造性应用,以及对证件、票据类敏感图片的二维特性的洞察,我们解决了敏感图片识别中类别不确定、准确率要求高等难点,在无需频繁更新或添加模型的情况下,使用一套稳定的方案,完成敏感图片识别的任务。

       用九智汇-分类分级平台已经集成了这些工作,欢迎感兴趣的读者咨询,同样欢迎做算法的朋友们多多交流,三人行必有我师焉!

特别声明:本文中介绍的敏感图片识别方法已申请专利保护。


阅读原文:数据分类分级-敏感图片识别

相关文章
|
7月前
|
存储 数据采集 算法
数据分类分级-敏感数据识别工程实践
在《数据分类分级-结构化数据识别与分类的算法实践》这篇文章中讲到了结构化数据识别与分类的算法实践,那么这些算法能力如何以标准产品的方式落地,并帮助客户解决在数据分类分级过程中遇到的各种问题呢?本文将站在工程的视角,结合我们的思考和经验,从整体的大框架上介绍用九智汇数据分类分级产品敏感数据识别技术方案和能力,希望对大家有所帮助,想了解细节的,欢迎通过公众号联系进行线下沟通。
248 1
|
11月前
|
数据采集 运维 供应链
数据的分类和分级
数据的分类和分级
583 0
|
6月前
|
SQL 机器学习/深度学习 开发框架
【网安AIGC专题10.25】8 CoLeFunDa华为团队:静默漏洞检测(识别+多分类)+数据增强、样本扩充+对比学习+微调+结果分析(降维空间,分类错误样本归纳,应用场景优势,有效性威胁分析)
【网安AIGC专题10.25】8 CoLeFunDa华为团队:静默漏洞检测(识别+多分类)+数据增强、样本扩充+对比学习+微调+结果分析(降维空间,分类错误样本归纳,应用场景优势,有效性威胁分析)
138 0
|
7月前
|
机器学习/深度学习 存储 算法
数据分类分级-结构化数据识别与分类的算法实践
本文分享了用九智汇数据分类分级产品开发过程中,对数据识别和数据分类中涉及的算法进行抽象、融合,以形成标准化产品所做的努力和积累的经验。当然,算法只是分类分级产品的一小部分,整个产品设计,工程实现,也是支撑标准化产品的关键,但是限于作者水平有限,本文只讨论算法相关的话题,欢迎大家关注公众号以了解更多信息。
109 1
|
7月前
|
SQL 存储 算法
数据分类分级-隐私管理与保护
仅仅进行数据分类分级以满足监管相对应的要求是远远不够的,数据分类分级工作是合规的起点而不是终点,今天我们就继续探讨数据分类分级如何在隐私管理与保护中发挥作用,以实现数据合规建设工作中更多的应用与价值。
100 0
|
7月前
视觉智能平台中,如果你想批量清空人脸样本库里的样本数据
视觉智能平台中,如果你想批量清空人脸样本库里的样本数据
48 5
|
数据可视化
WGCNA 简明指南|2. 模块与性状关联分析并识别重要基因
WGCNA 简明指南|2. 模块与性状关联分析并识别重要基因
1112 0
WGCNA 简明指南|2. 模块与性状关联分析并识别重要基因
|
机器学习/深度学习 自然语言处理 数据可视化
【建议收藏】|信息抽取与经济学文本量化分析(上)
【建议收藏】|信息抽取与经济学文本量化分析
215 0
【建议收藏】|信息抽取与经济学文本量化分析(上)
|
机器学习/深度学习 数据采集 数据可视化
数据分析案例-基于随机森林模型对信用卡欺诈检测
数据分析案例-基于随机森林模型对信用卡欺诈检测
273 0
数据分析案例-基于随机森林模型对信用卡欺诈检测
|
机器学习/深度学习 数据可视化 数据挖掘
数据分析案例-基于随机森林对影响信用卡审批结果和用户信用等级的特征分析
数据分析案例-基于随机森林对影响信用卡审批结果和用户信用等级的特征分析
160 0
数据分析案例-基于随机森林对影响信用卡审批结果和用户信用等级的特征分析