【對(duì)于最大化似然函數(shù)模型位喂、以及似然函數(shù)在圖像表示中的表示應(yīng)用感興趣的讀者疗垛,請(qǐng)分別參閱“馴估學(xué)(上)”挠阁、“馴估學(xué)(中)”宾肺∷荻】
旁注:標(biāo)準(zhǔn)化流的數(shù)據(jù)預(yù)處理
標(biāo)準(zhǔn)化流是一系列生成式模型,它們將司空見慣的某些簡(jiǎn)單概率分布“轉(zhuǎn)換”為更復(fù)雜的概率分布锨用。
標(biāo)準(zhǔn)化流模型學(xué)習(xí)易處理的逆變換丰刊,以及雅可比行列式的變換。若能有效地計(jì)算這兩個(gè)量增拥,我們可以使用變量代換規(guī)則啄巧,計(jì)算變換后的分布的對(duì)數(shù)概率密度:
絕大多數(shù)標(biāo)準(zhǔn)化流程序在連續(xù)密度函數(shù)上運(yùn)行(因此需要計(jì)算表示體積變化的雅可比行列式項(xiàng))。不過最近有一些關(guān)于“離散流”的研究掌栅,使模型學(xué)習(xí)轉(zhuǎn)換概率質(zhì)量函數(shù)而不是密度函數(shù)(Tran et al. 2019, Hoogeboom et al. 2019)秩仆。我們?cè)谶@篇博文中不討論它們,只是說明猾封,它們通過設(shè)計(jì)離散的基本分布澄耍,實(shí)現(xiàn)了雙向離散變換。
除了前面提到的隨機(jī)實(shí)數(shù)化之外晌缘,在訓(xùn)練圖像數(shù)據(jù)的標(biāo)準(zhǔn)化流時(shí)齐莲,還有一些額外的技巧。
根據(jù)經(jīng)驗(yàn)磷箕,在最大似然估計(jì)之前选酗,將數(shù)據(jù)從[0,256]的范圍縮放到單位間隔[0,1]上,有助于穩(wěn)定訓(xùn)練岳枷,因?yàn)樯窠?jīng)網(wǎng)絡(luò)偏差通常在零附近芒填。
為了防止越界問題,如果采樣到基礎(chǔ)分布的樣本嫩舟、通過流函數(shù)映射到區(qū)間(0,1)之外的點(diǎn)氢烘,我們可以通過邏輯斯蒂函數(shù)(sigmoid函數(shù)的反函數(shù))將其重新縮放到()。
我們可以將范圍縮放和邏輯變換視為模型開始時(shí)的“預(yù)處理”流程家厌。像對(duì)待任何其他雙向映射函數(shù)一樣播玖,我們這里也必須考慮變換引起的體積變化。
這里要認(rèn)識(shí)到的重要一點(diǎn)是饭于,出于評(píng)估目的蜀踏,像素密度函數(shù)應(yīng)始終在連續(xù)區(qū)間[0,256]中計(jì)算,以便比較不同的流模型和自回歸模型在同一數(shù)據(jù)中的似然值(最多可相差由于隨機(jī)實(shí)數(shù)化引起的變分空隙【變分下限與真值之間的差】)掰吕。
下圖顯示了RGB圖像的標(biāo)準(zhǔn)歸一化流程果覆,左側(cè)是原始離散數(shù)據(jù),右側(cè)是基本密度函數(shù)(可以是高斯分布殖熟、邏輯分布或任何你喜歡的易處理的密度分布)局待。
生成式模型的似然值通常映射到實(shí)數(shù)空間(上圖綠色框)報(bào)告。 從Dinh等人在2016年的工作開始,許多基于流的模型縮放像素到區(qū)間 钳榨,并應(yīng)用邏輯斯蒂函數(shù)(sigmoid函數(shù)的反函數(shù))來提高邊界條件的數(shù)值穩(wěn)定性舰罚。
離散邏輯斯蒂函數(shù)的混合似然
使用分類分布對(duì)像素進(jìn)行建模的一個(gè)缺點(diǎn)是,分類交叉熵?fù)p失不能告訴我們值為127的像素比值為0的像素薛耻、距離值為128的像素更接近营罢。【也就是丟失了類別之間的相對(duì)關(guān)系饼齿∷茄】對(duì)于觀察到的像素值,分類交叉熵的梯度相對(duì)于像素值是恒定的(因?yàn)閾p失將類別視為無序的)缕溉。盡管交叉熵梯度非零考传,但它被認(rèn)為“稀疏”的,因?yàn)樗惶峁╆P(guān)于當(dāng)下的分布與目標(biāo)分布(以像素值衡量)的距離信息倒淫。理想情況下伙菊,當(dāng)預(yù)測(cè)值遠(yuǎn)離觀測(cè)值時(shí),我們希望梯度的幅度更大敌土;而當(dāng)模型接近觀測(cè)值時(shí)镜硕,我們希望梯度更小。
將像素建模為分類分布的一個(gè)更嚴(yán)重的缺點(diǎn)是返干,如果我們選擇的特征表示高達(dá)或超過256個(gè)類別兴枯,就會(huì)遇到麻煩。例如矩欠,模擬R财剖,G和B像素聯(lián)合分布(有256 ^ 3類別!)或模擬比uint8更高精度像素編碼的HDR圖像癌淮。當(dāng)我們?cè)噲D存儲(chǔ)神經(jīng)網(wǎng)絡(luò)激活值映射到上述類別所需的投影矩陣時(shí)躺坟,我們很快就會(huì)耗盡內(nèi)存。
兩篇同時(shí)發(fā)表的論文Inverse Autoregressive Flow和PixelCNN++乳蓄,通過將RGB像素建模為序數(shù)數(shù)據(jù)的概率分布來解決這些問題咪橙,來自交叉熵?fù)p失的梯度信息可以在正確方向上推動(dòng)模型,同時(shí)模型仍保留離散概率虚倒。
我們可以通過邏輯斯蒂混合模型來建模連續(xù)像素概率密度美侦,這是一種連續(xù)分布。為了恢復(fù)離散像素值的概率質(zhì)量魂奥,我們可以使用邏輯斯蒂分布的屬性方便地計(jì)算它的概率積分函數(shù)菠剩,即sigmoid函數(shù)。通過計(jì)算兩個(gè)邏輯斯蒂函數(shù)的差值 耻煤,我們可以恢復(fù)介于兩個(gè)整數(shù)像素值之間的總概率質(zhì)量具壮。
例如准颓,對(duì)于連續(xù)的邏輯斯蒂分布,像素的值為127的概率棺妓,被建模為介于126.5和127.5之間的概率質(zhì)量瞬场。概率模型還必須考慮邊緣情況,使得并且涧郊,如概率分布的定義那樣。
以這種方式表示像素的另一個(gè)好處眼五,是提供了一次性處理更多類別的“奢侈”妆艘。這意味著PixelCNN ++可以一次性地模擬R、G和B像素通道看幼。需要注意的是批旺,你必須充分調(diào)整混合成分的數(shù)量(在Cifar 10上,5似乎已經(jīng)足夠了)诵姜。
類似于Tran et al. 2019在類別分布上設(shè)計(jì)離散的流函數(shù)汽煮,Hoogeboom et al. 2019通過使用離散化的邏輯斯蒂混合似然作為基本分布,來設(shè)計(jì)序數(shù)格式的離散流棚唆。后者的方法具備兩個(gè)方面的優(yōu)勢(shì):既能使用標(biāo)準(zhǔn)化流暇赤,很容易地處理了求逆和采樣;同時(shí)避免了求解實(shí)數(shù)化的似然目標(biāo)(這可能會(huì)優(yōu)化對(duì)似然函數(shù)的標(biāo)準(zhǔn)差進(jìn)行估計(jì)的損失下限)宵凌。兩篇論文都令人非常興奮鞋囊,我希望將來對(duì)此寫更多內(nèi)容!
困惑度
對(duì)數(shù)似然也是評(píng)估語言建模領(lǐng)域中的生成式模型的常用度量瞎惫。 沒有排序的離散字母表的分布律構(gòu)成的分類分布溜腐,是概率密度建模的最自然的選擇。
起源于自然語言處理(NLP)領(lǐng)域的一個(gè)怪癖瓜喇,語言模型的似然通常以“困惑度”為單位進(jìn)行評(píng)估挺益,其由下式給出:。 困惑度的倒數(shù)的對(duì)數(shù)乘寒,即是平均對(duì)數(shù)似然望众。 困惑度是一個(gè)直觀的概念,因?yàn)槟娓怕适请S機(jī)變量的“分支因子”肃续,或著叫做隨機(jī)變量的加權(quán)平均可選擇數(shù)黍檩。 困惑度和對(duì)數(shù)似然之間的關(guān)系是如此簡(jiǎn)單,以至于一些論文(Image Transformer)將“困惑度”與對(duì)數(shù)似然互換地使用始锚。
最后的總結(jié)
在這篇博文中刽酱,我們推導(dǎo)出最大化平均對(duì)數(shù)似然和信息壓縮之間的關(guān)系。我們還提到了像素的離散似然模型和連續(xù)似然模型的幾種建模選擇瞧捌。
一個(gè)更深層次的問題是棵里,似然值是否是衡量/優(yōu)化的正確目標(biāo)润文。在NIPS 2016(現(xiàn)稱為NeurIPS會(huì)議)上,我記得在生成式建模研討會(huì)上曾有一翻非常激烈的爭(zhēng)論殿怜,研究人員們辯論優(yōu)化易處理的似然模型是否是一個(gè)好主意典蝌。
事實(shí)證明,優(yōu)化和評(píng)估最大化似然模型是一個(gè)好主意头谜,因?yàn)閺哪且院笱芯咳藛T已經(jīng)想出如何構(gòu)建和擴(kuò)展更靈活的似然模型骏掀,同時(shí)保持計(jì)算的易處理性。像Glow柱告、GPT-2截驮、WaveNet和Image Transformer這樣的模型經(jīng)過最大化似然的訓(xùn)練,可以生成具有驚人質(zhì)量的圖像际度、音頻和文本葵袭。另一方面,有人可能會(huì)爭(zhēng)辯說乖菱,生成式建模最終目的是與實(shí)際任務(wù)相結(jié)合坡锡,提高實(shí)際應(yīng)用的性能,例如提高在標(biāo)記數(shù)據(jù)集上窒所、對(duì)模型進(jìn)行微調(diào)時(shí)的分類準(zhǔn)確性鹉勒。【即數(shù)據(jù)增廣吵取∶趁郑】對(duì)于這一點(diǎn),我的同事Niki Parmar關(guān)于圖像與文本的似然模型做出以下評(píng)論:
在文本中海渊,通常存在一種規(guī)律绵疲,即更高的似然值將幫助下游任務(wù)達(dá)到的更好的性能,如GLUE臣疑。然而在圖像上盔憨,我從其他同事那里聽說,像素似然值不能用作圖像分類等下游任務(wù)的預(yù)訓(xùn)練任務(wù)的指標(biāo)讯沈∮粞遥可能的原因是,與文本中的短語或單詞相比缺狠,像素在特征表示方面語義很少问慎。雖然這是一個(gè)開放性的問題,但我認(rèn)為圖像的表示學(xué)習(xí)和文本是完全不同的挤茄,幾乎很難建立和衡量有效的指標(biāo)如叼。這個(gè)差異很有趣。
在未來的博客文章中穷劈,我將在本教程基礎(chǔ)上笼恰,繼續(xù)討論優(yōu)化對(duì)數(shù)似然的變分下界的生成模型的評(píng)估方法(例如變分自動(dòng)編碼器踊沸、重要性加權(quán)自動(dòng)編碼器)。
進(jìn)一步閱讀
- 這條Twitter主題線討論了論文中常常報(bào)告的對(duì)數(shù)似然和IWAE界限的替代指標(biāo)社证。
- 如果你對(duì)常見的無損圖像壓縮算法的壓縮率很有興趣逼龟,請(qǐng)查看此腳本和論文。
- 請(qǐng)參閱PixelRNN論文和此Reddit主題追葡,以進(jìn)一步討論為什么建模圖像時(shí)類別分類分布優(yōu)于連續(xù)密度分布腺律。
- 適當(dāng)?shù)木植吭u(píng)分規(guī)則——感謝Ferenc Huszár將這篇論文給我看。
-
關(guān)于生成模型評(píng)估的一個(gè)注記——Theis等人的一篇很棒的論文宜肉。對(duì)于任何開始研究生成建模領(lǐng)域的人來說疾渣,這都是必讀的。
- 基于解碼器的生成模型的定量分析
- 關(guān)于困惑度的教程和推導(dǎo)崖飘,以及關(guān)于困惑度的Stack Exchange網(wǎng)頁(yè)的問??題。由于我本人不熟悉自然語言處理杈女,這些鏈接對(duì)于了解該主題將很有幫助朱浴。
- 生成式模型社區(qū)報(bào)告指標(biāo)的單位相當(dāng)一致,MNIST報(bào)告每維度的nats达椰,而彩色圖像報(bào)告每維度比特位數(shù)翰蠢。盡管一些論文報(bào)告了MNIST似然的比特/維度,而其他一些報(bào)告CIFAR10的nats/維度啰劲。
- 由Ranganath等人撰寫論文梁沧,提出了將標(biāo)準(zhǔn)KL散度目標(biāo)的框架,來處理變分推斷(例如VAE)問題蝇裤。首先想象一下希望得到的目標(biāo)廷支,在散度度量中安排這一項(xiàng)(例如抽樣,防止模式崩潰)栓辜,然后提出了一種方法來恢復(fù)所希望的散度的變分目標(biāo)恋拍。感謝Dustin Tran向我指出這一點(diǎn)。
致謝
非常感謝Dustin Tran藕甩,Niki Parmar和Vincent Vanhoucke審閱這篇博文的草稿施敢。一如既往地,感謝你的閱讀狭莱!