Dropbox是Dropbox公司的在線存儲(chǔ)服務(wù),通過云計(jì)算實(shí)現(xiàn)互聯(lián)網(wǎng)上的文件同步,用戶可以存儲(chǔ)并共享文件和文件夾。最近,研究人員在一次產(chǎn)品更新后,在用戶的工作流中加入了人工智能模塊,并加入了光學(xué)字符識(shí)別(OCR)技術(shù)。用戶從這些變化中最明顯的感受就是,他們可以在圖像或PDF文件中直接搜索英文文本。
從圖像中(包括PDF)自動(dòng)識(shí)別文本是一項(xiàng)前景廣闊的技術(shù)。在Dropbox中,用戶總共存儲(chǔ)了超過200億個(gè)圖像和PDF文件,其中10%—20%是文本照片,例如收據(jù)和白色背景的圖像,這些都是目前圖像中文本識(shí)別的新對(duì)象。另外還有25%的PDF文件是掃描版文本,同樣可以用作自動(dòng)文本識(shí)別。
從計(jì)算機(jī)視覺的角度來看,雖然對(duì)人類來說,看真實(shí)的文件和影印版的沒有太大差別,但對(duì)計(jì)算機(jī)就大不一樣了:文件可以通過搜索被檢索,用戶輸入一些單詞就可以從文件中找到目標(biāo)對(duì)象。但在圖像上,檢索系統(tǒng)就無法工作了,因?yàn)樗@示的只是一堆像素。通常,圖像格式(例如JPEG、PNG、GIF等)都無法被檢索,因?yàn)樗鼈儧]有文本內(nèi)容。只有基于文本的文件(例如TXT、DOCX或HTML)才能被檢索。但PDF介于二者中間,因?yàn)樗饶馨谋荆材馨瑘D像。自動(dòng)圖像中的文本識(shí)別可以辨認(rèn)這些文本,并將其中的數(shù)據(jù)進(jìn)行分類。
所以現(xiàn)在,如果用戶在任意格式下搜索英文文本,Dropbox都能顯示出結(jié)果。這篇文章就講解了研究人員的具體做法。
認(rèn)識(shí)問題
首先,我們要對(duì)此任務(wù)有大致了解,尤其是要知道要處理的數(shù)據(jù)數(shù)量有多大,這不僅關(guān)系到所需成本,還有助于評(píng)估其有用性。具體需要了解的有以下三方面:
我們應(yīng)該處理哪些類型的文件?
這些文件中有哪些含有可用光學(xué)字符識(shí)別技術(shù)處理的內(nèi)容?
對(duì)于像PDF這樣有多頁的文件,我們需要處理幾頁才能讓模型變得有效?
我們想處理的文件類型是目前不包含可檢索文本內(nèi)容的文件,這包括圖像格式和不含有文字的PDF文檔。但是,并不是所有的圖像或PDF都含有文本,大多數(shù)只是一些照片或圖示。所以,研究的關(guān)鍵是機(jī)器學(xué)習(xí)模型需要判斷,給定的內(nèi)容是否能用光學(xué)字符識(shí)別技術(shù),也就是說其中是否含有能用OCR系統(tǒng)識(shí)別出的文本,例如不包含街景照片的文件的掃描件等等。我們訓(xùn)練的模型是一個(gè)卷積神經(jīng)網(wǎng)絡(luò),輸入圖像并處理后,會(huì)將輸出結(jié)果傳遞到二元決策中,看它是否含有文本內(nèi)容。
最常見的圖像格式是JPEG,我們發(fā)現(xiàn)大約有9%的JPEG圖像可能含有文本。對(duì)于PDF,情況就比較復(fù)雜了,因?yàn)橐环軵DF文件可能含有多頁,每頁又可能有三種類型的內(nèi)容:
已經(jīng)經(jīng)過嵌入或可檢索的文本(69%)
有圖片格式的文本,暫不可被檢索(28%)
沒有實(shí)質(zhì)文本內(nèi)容(3%)
我們主要關(guān)注第二種情況,因?yàn)檫@是我們研究的對(duì)象。總的來說,我們的目標(biāo)用戶擁有的JPEG數(shù)量是PDF的兩倍,但是每個(gè)PDF文件平均有8頁,而且PDF可能有更多的文本圖片,所以總的來說,PDF含有的文本是JPEG的10倍。
文本頁數(shù)
一旦確定了文件類型,我們就要決定以何種方式處理這些文件。有些PDF文件有很多頁,處理起來很費(fèi)時(shí)。幸運(yùn)的是,對(duì)于長文本,即使只檢索幾頁,也可以讓文本更易于搜索。所以,我們統(tǒng)計(jì)了PDF采樣中頁數(shù)的分布情況,弄清楚每份文件最多可以對(duì)幾頁進(jìn)行檢索。最終結(jié)果顯示,一半的PDF只有一頁內(nèi)容,大約90%的PDF在10頁及以下。所以我們把上限定為10頁,這意味著我們可以對(duì)將近90%的文檔進(jìn)行索引,而且運(yùn)用了足夠多的頁數(shù)。
自動(dòng)圖像文本識(shí)別系統(tǒng)的組成
格式轉(zhuǎn)換
當(dāng)我們開始用OCR提取文本后,需要確定如何對(duì)PDF文件中的圖像數(shù)據(jù)進(jìn)行轉(zhuǎn)換:我們可以對(duì)文件流中的像素圖像目標(biāo)分開提取,或者可以將整頁P(yáng)DF轉(zhuǎn)換成光柵圖像數(shù)據(jù)。兩種方法都實(shí)踐之后,我們選擇了后者,因?yàn)槲覀円呀?jīng)已經(jīng)有了穩(wěn)定的大型PDF轉(zhuǎn)換工具。使用這一系統(tǒng)的優(yōu)點(diǎn)如下:
它可以自然地?cái)U(kuò)展到其他需要翻譯或嵌有圖片的文件格式中,例如PowerPoint、PostScript和其他支持的格式。
轉(zhuǎn)換過程很自然地保留了文本符的順序和頁面中文本的位置,考慮了文件結(jié)構(gòu)。
在我們此前的Chromium項(xiàng)目中,服務(wù)器部分的轉(zhuǎn)換是基于PDFium完成的,這是一個(gè)由谷歌基于Chrome瀏覽器開源的項(xiàng)目。這一軟件同樣用于對(duì)全文的檢測(cè),判斷文本是否只含有圖片,可以幫助我們決定是否進(jìn)行OCR處理。
一旦我們開始轉(zhuǎn)換,每份文件中的內(nèi)容都會(huì)同時(shí)進(jìn)行處理,我們將每一頁轉(zhuǎn)化成2048×2048的正方形像素,保留了原始的長寬比。
文件圖像分類
我們帶有OCR技術(shù)的機(jī)器學(xué)習(xí)模型最初是為了Dropbox的文件掃描功能創(chuàng)建的,目的是為了了解用戶最近是否上傳了可以“將其轉(zhuǎn)化成掃描格式”的圖片。分類器在創(chuàng)建時(shí),在圖像特征上使用了一個(gè)線性分類器。模型在來源不同的數(shù)千張照片上訓(xùn)練,包括公共圖像、私人圖像以及Dropbox員工貢獻(xiàn)出的圖像。
最初,分類器偶爾會(huì)出現(xiàn)誤報(bào)的情況(即模型認(rèn)為圖像中含有文本,但實(shí)際上沒有),例如在含有白墻、天際線、開闊的水域等照片中。雖然人類能輕松分辨這些景觀,但是對(duì)分類器來說它們看起來都是一樣的:都有平整開闊的背景和水平線。經(jīng)過每次迭代后,我們?cè)谟?xùn)練集中添加“消極”標(biāo)簽,可以顯著提高模型的分類精確度,從而高效地教會(huì)模型,雖然這些圖像有很多類似文本文件的特征,但它們沒有文本。
拐角檢測(cè)
確定圖像中文本的拐角并確定它的大致形狀是另一個(gè)重要步驟。給定轉(zhuǎn)角的坐標(biāo),圖片中的文章可以用簡單的幾何轉(zhuǎn)換進(jìn)行修正。文本的拐角檢測(cè)元組使用另一個(gè)ImageNet深度卷積網(wǎng)絡(luò)創(chuàng)建的(DenseNet-121),其最頂層換成了一個(gè)回歸因子,可以生成四個(gè)拐角坐標(biāo)。有了坐標(biāo),就能輕易地將文本修正成易于檢測(cè)的版本了。
token提取
OCR系統(tǒng)從拐角檢測(cè)階段獲取修正過的圖像作為輸入,并生成token檢測(cè),包括針對(duì)tokens和文本的邊界框。這些大致按token的順序排列并添加到搜索索引中。如果有多個(gè)頁面,每頁上token的列表會(huì)連接在一起生成一個(gè)大表。
合并各元素
為了能在所有可以被索引的文件中進(jìn)行紫銅圖像文本識(shí)別,我們需要一個(gè)系統(tǒng)能對(duì)輸入的文件執(zhí)行添加和編輯,并開始相關(guān)處理。這就需要用到Cape框架,這是一種靈活大型的處理框架,可以進(jìn)行事件流的分時(shí)間處理。我們?cè)贠CR處理中加入了新的Cape工作器,稱為lambda,作為框架的一部分。
整個(gè)處理過程如下:
基于圖像中是否有符合要求的JPEG、GIF或PDF,檢查我們是否應(yīng)該繼續(xù)處理文本。
運(yùn)行含有OCR技術(shù)的分了器,確定圖像中是否有文本。
運(yùn)行文本拐角檢測(cè)器,對(duì)其進(jìn)行修正。
用OCR引擎提取tokens。
向用戶的搜索索引中添加token列表。
結(jié)語
自動(dòng)圖片文本辨認(rèn)是計(jì)算機(jī)視覺和機(jī)器學(xué)習(xí)處理大型數(shù)據(jù)的重要案例。讓圖片中的文本可搜索只是深度了解文本結(jié)構(gòu)和內(nèi)容的第一步,有了這一成果,Dropbox可以幫助用戶更好地管理他們的文件。
-
云計(jì)算
+關(guān)注
關(guān)注
39文章
7736瀏覽量
137205 -
計(jì)算機(jī)視覺
+關(guān)注
關(guān)注
8文章
1696瀏覽量
45928 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8378瀏覽量
132412
原文標(biāo)題:Dropbox用機(jī)器學(xué)習(xí),從海量圖片中對(duì)文本進(jìn)行檢索
文章出處:【微信號(hào):jqr_AI,微信公眾號(hào):論智】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論