當(dāng)前位置:首頁 > 公眾號精選 > 架構(gòu)師社區(qū)
[導(dǎo)讀]導(dǎo)讀:文字在日常生活中發(fā)揮著重要的作用,甚至在考古發(fā)現(xiàn)中文字也作為識別文明的重要標(biāo)志。特別是在當(dāng)前短視頻和內(nèi)容爆炸的時代,文字廣泛應(yīng)用于人們觀點的表達和傳播以及商品營銷等各個領(lǐng)域。這些內(nèi)容中肯定會存在一些不良的行為。而內(nèi)容安全是基于AI技術(shù),從中識別出不良的信息,凈化網(wǎng)絡(luò)環(huán)境。本...

文字識別技術(shù)在內(nèi)容安全中的應(yīng)用


導(dǎo)讀:文字在日常生活中發(fā)揮著重要的作用,甚至在考古發(fā)現(xiàn)中文字也作為識別文明的重要標(biāo)志。特別是在當(dāng)前短視頻和內(nèi)容爆炸的時代,文字廣泛應(yīng)用于人們觀點的表達和傳播以及商品營銷等各個領(lǐng)域。這些內(nèi)容中肯定會存在一些不良的行為。而內(nèi)容安全是基AI技術(shù),從中識別出不良的信息,凈化網(wǎng)絡(luò)環(huán)境。

本文的主題為文字識別技術(shù)在內(nèi)容安全場景應(yīng)用實踐,主要內(nèi)容包括:①?內(nèi)容風(fēng)險舉例;②?防控基本流程;③?主流算法;④?部署優(yōu)化。

01

內(nèi)容風(fēng)險舉例

常見的圖片文字內(nèi)容違規(guī)風(fēng)險舉例:

文字識別技術(shù)在內(nèi)容安全中的應(yīng)用

圖片中的文字違規(guī)風(fēng)險主要分為:涉黃、涉暴、涉政、低俗、廣告等幾個大類。

  • 涉黃主要是一些小卡片、小電影、常見聊天場景中的違規(guī)內(nèi)容以及打印違規(guī)圖片等一些場景。涉暴場景主要涉及到一些集會、游行、武裝力量等場景的文字描述或者是一些武器的販賣信息。涉政場景主要涉及一些反動、分裂、搞獨立或者是一些不友好媒體的出版物,同時也會存在一些辱罵、抹黑、調(diào)侃領(lǐng)導(dǎo)人或者革命英烈的現(xiàn)象。低俗場景主要是賭毒相關(guān),比如賭場、棋牌這樣的一些場景,包括一些違法商品的售賣、導(dǎo)流的現(xiàn)象。

  • 上述場景中的涉黃、涉暴、涉證、低俗等涉及到違反國家法律法規(guī)或者違反社會公序良俗。

  • 廣告場景主要涉及平臺內(nèi)容生態(tài)治理,雖然不會違反社會法律法規(guī),但是在內(nèi)容生態(tài)治理上發(fā)揮著重要的作用。例如微信號、QQ號、手機號以及它們常見的變體、拼音首字母縮寫、變異的同音字等。還有短視頻、圖片內(nèi)容中存在的水印信息,這些水印存在著導(dǎo)流情況,特別是在競爭激烈的平臺生態(tài)中,不希望平臺中出現(xiàn)競爭對手的導(dǎo)流信息;

  • 廣告法中規(guī)定的限制詞,比如第一,百分之百等這一類的詞,也會存在違反廣告法的現(xiàn)象。

02

防控基本流程

1.?針對圖片文字違規(guī)風(fēng)險的基本防控流程

文字識別技術(shù)在內(nèi)容安全中的應(yīng)用

  • 內(nèi)容輸入:主要以圖片輸入為主,針對視頻輸入可以通過截幀、關(guān)鍵幀算法等方式轉(zhuǎn)化為圖像,然后輸入到識別系統(tǒng)。

  • 文字識別:文字識別子系統(tǒng)包括文字檢測、字條矯正、文字識別等子模塊,用于提取出文字信息,這些文字信息會輸入到后續(xù)的文本安全算法模型中,進行處理。

  • 文本模型:包括常規(guī)的一些NLP算法和比較豐富的關(guān)鍵詞規(guī)則庫。關(guān)鍵詞庫實現(xiàn)分級、詞庫分類存儲。

  • 風(fēng)險決策:文本模型輸出的結(jié)果最終會通過綜合判斷的方式做出風(fēng)險決策。包含正常、涉證、涉黃、暴恐、廣告、違禁等分類。

2.?文字識別階段細(xì)分流程

文字識別技術(shù)在內(nèi)容安全中的應(yīng)用

  • 文字檢測模塊:輸入是原始圖像,通過檢測環(huán)節(jié)定位出圖像中文字的具體位置,產(chǎn)生出字條。

  • 字體矯正模塊:識別出的字條,通過字體矯正模塊,方向調(diào)整,最終以水平方式展現(xiàn)。

  • 文字識別模塊:接收到矯正后的字條之后,通過識別,最終將圖像翻譯成一段具體的文本內(nèi)容。

03

主流算法

文字定位、文本識別的主流算法介紹:

文字識別技術(shù)在內(nèi)容安全中的應(yīng)用

1.?文本定位主要算法梳理

目前主流的文本定位算法分為兩大類:基于回歸的算法和基于分割的算法。

基于回歸的算法:借鑒通用目標(biāo)檢測的一些方案,通過網(wǎng)絡(luò)直接回歸計算出文本行的包圍框信息。主要算法:CTPN、SegLink、Textboxes/Testboxes 、EAST、LOMO、SAST、CRAFT等。

  • 優(yōu)點:規(guī)則形狀的文本效果較好。

  • 缺點:不規(guī)則的文本,特別是長文本效果較差。例子:1、上圖中使用回歸的方案對于長文問兩端的定位不是特別準(zhǔn)確,對后續(xù)的識別會造成較大的影響。2、使用回歸方案對于曲線文本、不規(guī)則的文本識別都會存在一些問題。

基于分割的方案:借鑒了通用深度學(xué)習(xí)算法中的語義分割方案,主要是將文本定位轉(zhuǎn)化為一個二分類的問題,將文本中的每一個像素點都進行是否是文本的二分類預(yù)測。主要算法:Pixel embedding、SPCNet、PSENet、DBNet等。

  • 優(yōu)點:適用于各種形狀的文本,整體的檢測效果較好。

  • 缺點:后處理耗時大(由于模型輸出的是概率圖,通過概率圖計算出每一個文本框的耗時比較長)、無法處理重疊文本。

2.?文本定位算法BDNet簡介

文字識別技術(shù)在內(nèi)容安全中的應(yīng)用

DBNet發(fā)表于AAAI 2020,核心思想是對后處理流程的速度進行優(yōu)化,簡化了文本檢測方案的流程,在檢測速度上得到了一個比較大的提升,在定位效果和速度上實現(xiàn)了一個比較好的權(quán)衡。

DBNet整體的結(jié)構(gòu),網(wǎng)絡(luò)的Backbone部分是一個標(biāo)準(zhǔn)的FCN結(jié)構(gòu)。從上到下逐層的一個下采樣,然后進行逐層的上采樣,融合不同尺度的特征,結(jié)合多尺度的特征,做一個CON-CAT,輸出一個預(yù)測的概率圖,這些流程和常用的分割算法大致相同。

分割得到概率圖之后,之前的方式是做一個標(biāo)準(zhǔn)二值化的操作,然后得到一些聯(lián)通域,再對這些連通域做一些形狀的處理,得到最終的文本框,這里也會涉及到多個文本框合并的問題;DBNet創(chuàng)新之處在于引入了一個threshold map的分支,通過一個預(yù)測threshold實現(xiàn)了一個自適應(yīng)閾值的二值化過程。之前標(biāo)準(zhǔn)的二值化過程為全圖采樣同一個二值化閾值,這樣會造成對不同區(qū)域的魯棒性不是特別好,對后續(xù)的定位精度產(chǎn)生影響。DBNet中引入一個可微分的二值化算子(類似于sigmod函數(shù))進行一個二值化計算過程,同時對概率圖、threshold map、近似的二值化圖進行有監(jiān)督的學(xué)習(xí),最終得到一個比較好的文字邊界識別效果。

論文中也進行了一些實驗,發(fā)現(xiàn)在推理階段可以直接去掉threshold map這條分支,直接通過一個標(biāo)準(zhǔn)的二值化操作,就可以得到一個比較好的效果。這是因為有監(jiān)督的信息加入之后使得概率圖中文字邊界更加清晰,文字區(qū)域的概率值變高,非文字區(qū)域的概率值變低。

總結(jié):目前DBNet是業(yè)界主流的一個方案,主要還是在性能和效果上進行整體權(quán)衡之后,識別效果比較好。

3.?文字識別基本流程

文字識別技術(shù)在內(nèi)容安全中的應(yīng)用

首先是圖像進入圖像矯正模塊進行處理,輸出的圖像再輸入到視覺特征提取模塊得到一些視覺feature,后續(xù)會結(jié)合一些序列特征,最終通過預(yù)測模塊輸出結(jié)果。

文字識別算法目前主流的方案包括CRNN、STATR-NET、RARE、AttentionOCR等,當(dāng)前比較通用的方案還是以CRNN為主,主要是通過綜合性能和推理速度權(quán)衡之后,從中選出的最佳方案。文本識別算法的輸入為歸一化之后的文本詞條,通過文本識別整個流程之后,輸出就是具體的文字信息。

4.?文字識別主流算法CRNN

文字識別技術(shù)在內(nèi)容安全中的應(yīng)用

CRNN 模型是通過CNN RNN CTC 三個模型組合,把文本識別看成一個圖像序列的預(yù)測。

CRNN模型的優(yōu)點:

  • 通過引入RNN模型增強序列特征的表達能力。

  • 引入CTC識別模塊簡化預(yù)測流程。

  • 進入CRNN時代之后,文字識別從單詞的預(yù)測變?yōu)槲谋拘械念A(yù)測,實現(xiàn)預(yù)測流程的簡化,同時文字識別模型的標(biāo)注成本得到了極大的降低。

舉例:在CRNN之前文字模型的識別過程,需要進行文本單個字的精確定位,每個字定位出來之后,再進行具體的單個字預(yù)測;進入CRNN之后,可以進行整個字條的輸入,包括訓(xùn)練的監(jiān)督信息也是整個字條的輸入,所以它的標(biāo)注效率得到了極大的提升。CRNN出現(xiàn)之后,整個文字識別流程也得到了非常大的促進。

04

部署優(yōu)化

生產(chǎn)環(huán)境具體部署過程中的加速優(yōu)化實踐,識別效果舉例。

1.?性能優(yōu)化

文字識別技術(shù)在內(nèi)容安全中的應(yīng)用

將整個文字識別流程進行模塊化分,對每個模塊進行耗時統(tǒng)計,找出耗時的性能瓶頸,明確優(yōu)化的目標(biāo),對性價比較高的模塊進行針對性的優(yōu)化。

文字識別模型作為微服務(wù),整體對外提供能力,整體劃分為CPU計算、GPU計算。CPU計算主要包括文本預(yù)處理、后處理操作以及實例矯正模塊;GPU處理主要負(fù)責(zé)模型具體推理工作。

通過在對收集的數(shù)據(jù)集上進行耗時統(tǒng)計分布測試,通過統(tǒng)計發(fā)現(xiàn)識別模型和檢測模型的推理耗時是整個OCR的主要耗時,同時圖像解碼和檢測模型的預(yù)處理也占用8%左右的耗時,其他環(huán)節(jié)的整體耗時比較少,因此我們把優(yōu)化的重點放在耗時較高的這幾個方向。

2.?性能優(yōu)化方法梳理

文字識別技術(shù)在內(nèi)容安全中的應(yīng)用

通過性能耗時整體分析,梳理了整體的優(yōu)化手段,優(yōu)化策略:算的少(減少計算量),算的快(同樣計算量情況下,算的更快,加快計算效率)。

主要的優(yōu)化手段,分為三大部分:CPU計算、GPU計算、系統(tǒng)優(yōu)化。

CPU 圖像解碼,通過大量的調(diào)研和比較,發(fā)現(xiàn)opencv的圖像解碼庫的特點是更加傾向于利用多線程的并行能力,對于CPU的低級指令相對較弱,同時在圖像解碼的過程中加入了一些額外的校驗操作,導(dǎo)致整體的解碼過程變慢;在通過調(diào)研和比較之后,選用了Pillow的一個分支,Pillow-SIMD作為我們的主要圖像解碼庫。

CPU 預(yù)處理優(yōu)化,主要是對輸入圖像的縮放,歸一化操作進行優(yōu)化?;赟IMD的圖像編解碼庫本身也會在圖片預(yù)處理,尤其是在一些大圖縮放上有一些優(yōu)化,另外將一些預(yù)處理的歸一化過程(減均值、除方差等)合并到網(wǎng)絡(luò)模型的第一個卷積上,類似于BN的一個合并操作,減少CPU上的一些耗時。

GPU模型簡化壓縮優(yōu)化。我們對模型的backbone和 neck部分進行一些通道數(shù)量的壓縮優(yōu)化,在保證性能沒有太多降低的情況下,提高優(yōu)化推理的速度。

借鑒了業(yè)界比較通用的TensorRT推理引擎,TensorRT會做很多模型融合的操作,除了做一些通用的BN融合之外還會做一些更深層次的融合,如卷積,bias,relu操作等都可以合并到同一個OP中執(zhí)行, 因為對于一些簡單的操作,它的一個內(nèi)存提取耗時與計算的耗時是相當(dāng)?shù)?,所以可以把它們合并到卷積結(jié)果存儲之前這樣的一個過程當(dāng)中,減少一次顯存的訪問。TensorRT會根據(jù)當(dāng)前部署的硬件資源去選擇最合適的OP實現(xiàn)方式,從而最大效率的利用顯卡的硬件資源。

TensorRT提供的低精度推理方案,F(xiàn)p16和Int8來一步加速模型的效果。低精度推理對原始結(jié)果也會有一定的影響,所以需要在效果和速度上進行具體的實驗,進行權(quán)衡。

系統(tǒng)優(yōu)化,模型輸入分辨率的調(diào)整,這個需要結(jié)合整體的一個性能進行調(diào)整,檢測階段和識別階段的輸入都可以進行相應(yīng)的分辨率調(diào)整;圖片當(dāng)中經(jīng)常會出現(xiàn)多條文本行,使用多batch方案提高整張圖片整體的推理效率。同時我們在優(yōu)化過程中發(fā)現(xiàn),GPU的整體利用率可以通過多實例的方案得到進一步的提升。

3.?識別效果舉例

文字識別技術(shù)在內(nèi)容安全中的應(yīng)用

文字識別技術(shù)在內(nèi)容安全中的應(yīng)用

效果舉例說明:“正品保證”這種字條是通過藝術(shù)字體實現(xiàn),有一些顏色漸變的方案進行識別能力對抗,目前的識別效果還是比較好的。還有一些部分缺失、顏色很淡、虛化、顏色對比度很低、特殊的字替、上下文字部分缺失等情況,這些都會對文字的定位、識別有很大的挑戰(zhàn)。圖中對于RELX這種廣告文本,也有對抗的特性存在,例如傾斜、過度的顏色、水印、對比度比較低等,整體上我們的識別效果還是不錯。?

上圖中也有對豎排文字、繁體字支持的情況,目前對詩句和對聯(lián)整體的識別效果還是不錯的,圖中對于龍鳳呈祥中的龍識別失誤,主要是因為整體的顏色和繁體字的影響。

手寫體整體的識別難度還是比較大的,尤其是對于一些手寫的比較夸張的字體,類似于草書、連筆比較嚴(yán)重的一些字體,對于這些字體的識別目前還是有一些問題;對于一些手寫不是那么夸張的字體,識別效果還是比較理想。

05

問答環(huán)節(jié)

Q:橫豎排的文字識別有什么區(qū)別?

A:橫豎排的文字在排列上有一些差異,我們模型也會通過數(shù)據(jù)增強的方式來對模型識別能力進行補充;有幾種情況,一種是文字旋轉(zhuǎn)型的豎排,可以通過字條矯正的方式,把它變成橫向的文字排列;另外一種就是圖像中的文字本身排列就是豎向的,因為目前很多文字識別模塊都是通過生成數(shù)據(jù)來進行訓(xùn)練的,所以針對豎排文字識別可以通過一些針對性的數(shù)據(jù)生成,相當(dāng)于對文字進行一個90度的旋轉(zhuǎn)形成豎排文字來進行訓(xùn)練,來補充模型的能力。

Q:手寫體的識別對比于印刷體的識別,需要額外的做哪些工作?

A:我們目前主要是通過數(shù)據(jù)增強的方式來進行手寫體的支持,主要還是通過數(shù)據(jù)的方式來進行模型能力的提升,現(xiàn)在都是進行一個統(tǒng)一的處理,印刷體和手寫體在識別流程上是一致的。在進行數(shù)據(jù)生成的時,首先需要真實場景下的一些手寫體的數(shù)據(jù),另外還需要一些類手寫體的一些字體,通過借鑒這些實現(xiàn)內(nèi)容的自動生成。

Q:在系統(tǒng)的調(diào)優(yōu)階段對于batch size的優(yōu)化,詳細(xì)介紹下

A:圖片當(dāng)中通常會出現(xiàn)多條文本,此時對于文字識別模型,我們可以選擇同時輸入6條、8條或者更多的Batch Size實現(xiàn)一個批次的預(yù)測,這樣對于系統(tǒng)整體的吞吐率會有一個提升。由于多行文本中的每一個詞條的尺寸可能不一樣,我們需要做一個padding,把它們拼接成相同的長度。

Q:數(shù)據(jù)集是自己做的嗎?

A:數(shù)據(jù)集是自己做的,因為現(xiàn)在整體上來說,文字識別領(lǐng)域中業(yè)界公開的數(shù)據(jù)集還是比較小,包括像一些知名的比賽中,整體的數(shù)據(jù)量都不是特別多。所以我們肯定要基于一些業(yè)務(wù)場景做一些數(shù)據(jù)的收集,但文字識別階段,目前主要的方案還是通過數(shù)據(jù)生成的方式,來擴充模型的訓(xùn)練樣本。

Q:OCR未來的發(fā)展方向

OCR未來的發(fā)展方向我覺得還是在當(dāng)前的一些識別難點上,像現(xiàn)在比較關(guān)注的任意形狀的文本行識別,曲線文本,印章等這種大家比較關(guān)注的一些點。另外我覺得數(shù)據(jù)集的生成,或者是模擬真實場景的數(shù)據(jù)生成這種在工程實踐上也是有比較實際的意義。尤其是對于一些復(fù)雜背景,包括風(fēng)格遷移的一些方案。

Q:手寫體識別有什么好的方法?手寫體有一些背景,比如春聯(lián),繁體字對于這種識別有沒有什么好的辦法?

A:由于我們目前是采用的是自然場景下的文字識別技術(shù),它本身就支持一些復(fù)雜背景的方案,它跟傳統(tǒng)的文檔類的OCR或者是一些票據(jù)、證件類的OCR相比,本身會對復(fù)雜背景會有一些魯棒性;復(fù)雜背景會增加識別的難度,模型現(xiàn)階段對于背景的魯棒性還是比較高的,像有一些銀行卡的識別,銀行卡本身背景也有一些比較復(fù)的圖案同時還有壓印、突起,光照影響等,像這種識別其實都是有比較好的方案。但是如果你的場景越固定,我們通過數(shù)據(jù)的支持,它的整體的識別效果就會越好。

Q:對于手寫公式的識別

A:手寫公式應(yīng)該跟手寫體差不多,因為它整體的符號數(shù)還是比較限定的,是一個相對較小的集合。主要難度應(yīng)該和手寫體字的難度是一樣的,手寫的潦草度和印刷體的一個差異。如果連筆太多的化,也可能存在一個比較大的識別難度。

今天的分享就到這里,謝謝大家。分享嘉賓:

文字識別技術(shù)在內(nèi)容安全中的應(yīng)用

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉