国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

CTC Loss 數(shù)學(xué)原理講解:Connectionist Temporal Classification

這篇具有很好參考價(jià)值的文章主要介紹了CTC Loss 數(shù)學(xué)原理講解:Connectionist Temporal Classification。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

CTC Loss 是一種不需要數(shù)據(jù)對(duì)齊的,廣泛用于圖像文本識(shí)別和語(yǔ)音識(shí)別任務(wù)的損失函數(shù)。

論文:《Connectionist Temporal Classification: Labelling Unsegmented Sequence Data with Recurrent Neural Networks》
《連續(xù)形式的時(shí)序數(shù)據(jù)分類:用遞歸神經(jīng)網(wǎng)絡(luò)標(biāo)記非分段序列數(shù)據(jù)》

論文發(fā)表時(shí)間:ICML 2006

注:這篇博客來(lái)源于本人組會(huì)匯報(bào)時(shí)的文檔,因此很多內(nèi)容是直接從文檔中截圖的。

1、CTC Loss 出現(xiàn)的背景

到目前為止,還不可能將RNN直接應(yīng)用于序列數(shù)據(jù)的標(biāo)記。問(wèn)題在于標(biāo)準(zhǔn)神經(jīng)網(wǎng)絡(luò)的目標(biāo)函數(shù)是為訓(xùn)練序列中的每個(gè)點(diǎn)分別定義的,因此RNN只能訓(xùn)練一系列獨(dú)立的標(biāo)簽分類。這意味著訓(xùn)練的序列數(shù)據(jù)必須被預(yù)分段并標(biāo)記。

標(biāo)記未分割序列數(shù)據(jù)是現(xiàn)實(shí)世界序列學(xué)習(xí)中普遍存在的問(wèn)題。這在感知任務(wù)中尤其常見,如圖像文本識(shí)別(OCR)、姿勢(shì)識(shí)別、語(yǔ)音識(shí)別(ASR)。

在這些領(lǐng)域中,所面臨的一個(gè)問(wèn)題是神經(jīng)網(wǎng)絡(luò)的輸出與ground truth的長(zhǎng)度不一致,導(dǎo)致loss難以計(jì)算。

例1:用于圖像文本識(shí)別的CRNN網(wǎng)絡(luò)

connectionist temporal classification: labelling unsegmented sequence data w,# OCR 圖片文字識(shí)別,深度學(xué)習(xí),人工智能,語(yǔ)音識(shí)別,目標(biāo)檢測(cè)
考慮一種非常簡(jiǎn)單的方法,通過(guò)將圖片劃分為幾個(gè)豎直方向的圖像,分別識(shí)別每列小圖片中的文字,從而實(shí)現(xiàn)整體文本的識(shí)別。則每一列輸出都需要對(duì)應(yīng)一個(gè)字符元素。用 - 表示blank(空白),預(yù)測(cè)值(-s-t-aatt-e-)和ground truth(state)的長(zhǎng)度不一致,采用常規(guī)的損失函數(shù)(cross entropy、MSE等)計(jì)算時(shí)需要先進(jìn)行對(duì)齊才能計(jì)算損失。

進(jìn)行對(duì)齊就需要在訓(xùn)練之前的數(shù)據(jù)標(biāo)注階段在訓(xùn)練集圖片中標(biāo)記出每個(gè)字符的真實(shí)文本和在圖片中的位置。但在實(shí)際情況中,標(biāo)記這種對(duì)齊樣本非常困難,其工作量非常大。并且由于每張樣本的字符數(shù)量不同,字體樣式不同,字體大小不同,導(dǎo)致每列輸出并不一定能與每個(gè)字符一一對(duì)應(yīng)。

例2:語(yǔ)音識(shí)別

connectionist temporal classification: labelling unsegmented sequence data w,# OCR 圖片文字識(shí)別,深度學(xué)習(xí),人工智能,語(yǔ)音識(shí)別,目標(biāo)檢測(cè)
上圖中的語(yǔ)音是HELLO。有人說(shuō)話快,有人說(shuō)話慢。那么如何進(jìn)行語(yǔ)音幀對(duì)齊一直是困擾語(yǔ)音識(shí)別領(lǐng)域的巨大難題。

除了數(shù)據(jù)標(biāo)注的困難導(dǎo)致難以對(duì)齊外,就算對(duì)齊了也存在many to one的問(wèn)題。那么什么是many to one的問(wèn)題呢?解碼器的規(guī)則是將連續(xù)的相同字符合并,以及去掉blank。那么-HEEE-LL-LL-OOOOOOOO-(Mr.Slow)和-HE-L-LOO-(Mr.Fast)都可以解碼為HELLO,與ground truth一致。也就是說(shuō)就算我們將Mr.Slow的label標(biāo)注為-HE-L-LOO------------,盡管這個(gè)label顯然是錯(cuò)誤的,但通過(guò)網(wǎng)絡(luò)訓(xùn)練,Mr.Slow的網(wǎng)絡(luò)預(yù)測(cè)值會(huì)非常接近label,如預(yù)測(cè)值是-H–EE-L-LOO----------。盡管該預(yù)測(cè)值與ground truth差異非常大,但是該預(yù)測(cè)值依然可以解碼為HELLO。顯然這個(gè)情況是我們不希望看到的,也非常不利于網(wǎng)絡(luò)的訓(xùn)練。

由于連續(xù)序列數(shù)據(jù)的對(duì)齊難題,學(xué)者提出了一種對(duì)不需要對(duì)齊的Loss計(jì)算方法:CTC Loss。

CTC Loss被廣泛應(yīng)用于文本識(shí)別和語(yǔ)音識(shí)別中,接下來(lái)根據(jù)語(yǔ)音識(shí)別的例子介紹CTC Loss。

2、CTC Loss 的總體思想

首先要明確CTC Loss的計(jì)算對(duì)象是神經(jīng)網(wǎng)絡(luò)經(jīng)過(guò)softmax歸一化之后的輸出矩陣和ground truth。

CTC Loss 不要求輸出矩陣和ground truth的大小相同。輸出矩陣的維度為N×T,其中N是類別數(shù)(在英文的語(yǔ)音識(shí)別中N=27,即26個(gè)英文字母和blank),T是語(yǔ)音長(zhǎng)度(T個(gè)語(yǔ)音幀)。

connectionist temporal classification: labelling unsegmented sequence data w,# OCR 圖片文字識(shí)別,深度學(xué)習(xí),人工智能,語(yǔ)音識(shí)別,目標(biāo)檢測(cè)
connectionist temporal classification: labelling unsegmented sequence data w,# OCR 圖片文字識(shí)別,深度學(xué)習(xí),人工智能,語(yǔ)音識(shí)別,目標(biāo)檢測(cè)
connectionist temporal classification: labelling unsegmented sequence data w,# OCR 圖片文字識(shí)別,深度學(xué)習(xí),人工智能,語(yǔ)音識(shí)別,目標(biāo)檢測(cè)
connectionist temporal classification: labelling unsegmented sequence data w,# OCR 圖片文字識(shí)別,深度學(xué)習(xí),人工智能,語(yǔ)音識(shí)別,目標(biāo)檢測(cè)
connectionist temporal classification: labelling unsegmented sequence data w,# OCR 圖片文字識(shí)別,深度學(xué)習(xí),人工智能,語(yǔ)音識(shí)別,目標(biāo)檢測(cè)

3、Forward-Backward 算法

3.1 合法路徑的約束條件

以l=apple為例,按照時(shí)間序列(T=8)展開。B(–ap-ple)=aab對(duì)應(yīng)的路徑為:

connectionist temporal classification: labelling unsegmented sequence data w,# OCR 圖片文字識(shí)別,深度學(xué)習(xí),人工智能,語(yǔ)音識(shí)別,目標(biāo)檢測(cè)
為了讓所有的路徑在圖中都有唯一、合法的表示,節(jié)點(diǎn)轉(zhuǎn)換有如下約束:

connectionist temporal classification: labelling unsegmented sequence data w,# OCR 圖片文字識(shí)別,深度學(xué)習(xí),人工智能,語(yǔ)音識(shí)別,目標(biāo)檢測(cè)

這些約束規(guī)則導(dǎo)致合法路徑的數(shù)量大大減少。根據(jù)以上約束規(guī)則,所有映射為l=apple的合法路徑為:

connectionist temporal classification: labelling unsegmented sequence data w,# OCR 圖片文字識(shí)別,深度學(xué)習(xí),人工智能,語(yǔ)音識(shí)別,目標(biāo)檢測(cè)

3.2 Forward-Backward 算法的數(shù)學(xué)推導(dǎo)

connectionist temporal classification: labelling unsegmented sequence data w,# OCR 圖片文字識(shí)別,深度學(xué)習(xí),人工智能,語(yǔ)音識(shí)別,目標(biāo)檢測(cè)
前向和反向過(guò)程的計(jì)算示意圖如下:

connectionist temporal classification: labelling unsegmented sequence data w,# OCR 圖片文字識(shí)別,深度學(xué)習(xí),人工智能,語(yǔ)音識(shí)別,目標(biāo)檢測(cè)
connectionist temporal classification: labelling unsegmented sequence data w,# OCR 圖片文字識(shí)別,深度學(xué)習(xí),人工智能,語(yǔ)音識(shí)別,目標(biāo)檢測(cè)
connectionist temporal classification: labelling unsegmented sequence data w,# OCR 圖片文字識(shí)別,深度學(xué)習(xí),人工智能,語(yǔ)音識(shí)別,目標(biāo)檢測(cè)
connectionist temporal classification: labelling unsegmented sequence data w,# OCR 圖片文字識(shí)別,深度學(xué)習(xí),人工智能,語(yǔ)音識(shí)別,目標(biāo)檢測(cè)
示例:

connectionist temporal classification: labelling unsegmented sequence data w,# OCR 圖片文字識(shí)別,深度學(xué)習(xí),人工智能,語(yǔ)音識(shí)別,目標(biāo)檢測(cè)
connectionist temporal classification: labelling unsegmented sequence data w,# OCR 圖片文字識(shí)別,深度學(xué)習(xí),人工智能,語(yǔ)音識(shí)別,目標(biāo)檢測(cè)

有論文證明,盡管可以通過(guò)并不復(fù)雜的遞歸運(yùn)算得到p(l│x),但這種運(yùn)算無(wú)法避免數(shù)值下溢的問(wèn)題。因此需要考慮其他方法進(jìn)行計(jì)算。

4、CTC 的訓(xùn)練(目標(biāo)函數(shù)求導(dǎo))

connectionist temporal classification: labelling unsegmented sequence data w,# OCR 圖片文字識(shí)別,深度學(xué)習(xí),人工智能,語(yǔ)音識(shí)別,目標(biāo)檢測(cè)
公式(13)是forward-backward算法的關(guān)鍵,以T=6,l=ab為例解釋(13):

connectionist temporal classification: labelling unsegmented sequence data w,# OCR 圖片文字識(shí)別,深度學(xué)習(xí),人工智能,語(yǔ)音識(shí)別,目標(biāo)檢測(cè)
connectionist temporal classification: labelling unsegmented sequence data w,# OCR 圖片文字識(shí)別,深度學(xué)習(xí),人工智能,語(yǔ)音識(shí)別,目標(biāo)檢測(cè)
connectionist temporal classification: labelling unsegmented sequence data w,# OCR 圖片文字識(shí)別,深度學(xué)習(xí),人工智能,語(yǔ)音識(shí)別,目標(biāo)檢測(cè)
connectionist temporal classification: labelling unsegmented sequence data w,# OCR 圖片文字識(shí)別,深度學(xué)習(xí),人工智能,語(yǔ)音識(shí)別,目標(biāo)檢測(cè)
以單層LSTM作為RNN網(wǎng)絡(luò),RNN-CTC模型的總體結(jié)構(gòu)為:

connectionist temporal classification: labelling unsegmented sequence data w,# OCR 圖片文字識(shí)別,深度學(xué)習(xí),人工智能,語(yǔ)音識(shí)別,目標(biāo)檢測(cè)

5、解碼算法

connectionist temporal classification: labelling unsegmented sequence data w,# OCR 圖片文字識(shí)別,深度學(xué)習(xí),人工智能,語(yǔ)音識(shí)別,目標(biāo)檢測(cè)
connectionist temporal classification: labelling unsegmented sequence data w,# OCR 圖片文字識(shí)別,深度學(xué)習(xí),人工智能,語(yǔ)音識(shí)別,目標(biāo)檢測(cè)
connectionist temporal classification: labelling unsegmented sequence data w,# OCR 圖片文字識(shí)別,深度學(xué)習(xí),人工智能,語(yǔ)音識(shí)別,目標(biāo)檢測(cè)

6、CTC Loss 的優(yōu)缺點(diǎn)

CTC最大的優(yōu)點(diǎn)是不需要數(shù)據(jù)對(duì)齊。

CTC的缺點(diǎn)來(lái)源于三個(gè)假設(shè)或約束:

(1)條件獨(dú)立:假設(shè)每個(gè)時(shí)間片都是相互獨(dú)立的,但在OCR或者語(yǔ)音識(shí)別中,相鄰幾個(gè)時(shí)間片中往往包含著高度相關(guān)的語(yǔ)義信息,它們并非相互獨(dú)立的。

(2)單調(diào)對(duì)齊:CTC要求輸入與輸出之間的對(duì)齊是單向的,在OCR和語(yǔ)音識(shí)別中,這種約束是成立的。但是在一些場(chǎng)景中(如機(jī)器翻譯),這個(gè)約束并不成立。

(3)CTC要求是輸入序列的長(zhǎng)度不小于標(biāo)簽數(shù)據(jù)的長(zhǎng)度,反之便無(wú)法使用。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-768287.html

到了這里,關(guān)于CTC Loss 數(shù)學(xué)原理講解:Connectionist Temporal Classification的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包