無監(jiān)督表示學(xué)習(xí)(一):2018 Contrastive Predictive Coding(CPC)

今天看到了Hinton團隊的一項無監(jiān)督表示學(xué)習(xí)的新研究:SimCLR扯键,其中總結(jié)了對比損失為無監(jiān)督學(xué)習(xí)帶來的飛速進展围肥。于是決定把近三年來這方面的論文都讀一下虫蝶,2018桩卵、2019和2020每年各一篇,開始吧劲弦!

第一篇論文耳标,是2018年DeepMind團隊研究出的新的無監(jiān)督表示學(xué)習(xí)方法:Contrastive Predictive Coding,即對比預(yù)測編碼(CPC)邑跪。

論文下載

題目:《Representation Learning with Contrastive Predictive Coding》
地址:https://arxiv.org/pdf/1807.03748.pdf

相關(guān)內(nèi)容補充

  • 表示學(xué)習(xí)(Representation Learning):學(xué)習(xí)數(shù)據(jù)的表征次坡,以便在構(gòu)建分類器或其他預(yù)測器時更容易提取有用的信息,無監(jiān)督學(xué)習(xí)也屬于表示學(xué)習(xí)画畅。
  • 互信息(Mutual Information):表示兩個變量XY之間的關(guān)系砸琅,定義為:I(X;Y)=\sum_{x\in X}\sum_{y\in Y}{p(x,y)\log \frac{p(x|y)}{p(x)}},可以解釋為由X引入而使Y的不確定度減小的量轴踱,I(X;Y)越大說明兩者關(guān)系越密切症脂。
  • 對比損失Contrastive Loss):計算成對樣本的匹配程度,主要用于降維中淫僻。計算公式為:L=\frac{1}{2N} \sum^{N}_{n = 1}{yd^2+(1-y)max(margin-d,0)^2}诱篷,其中d=\sqrt{(a_n-b_n)^2}為兩個樣本的歐式距離,y=\{0,1\}代表兩個樣本的匹配程度雳灵,margin代表設(shè)定的閾值棕所。損失函數(shù)的目的是讓原本分布相似的樣本在降維后也相似,原本不相似的在降維后也保持不相似悯辙。
  • 噪聲對抗估計(Noise Contrastive Estimation, NCE):在NLP任務(wù)中一種降低計算復(fù)雜度的方法橙凳,將語言模型估計問題簡化為一個二分類問題。
  • 負采樣(Negative Sampling, NEG):表示負采樣笑撞,是NCE的一個簡化版本,目的是提高訓(xùn)練速度钓觉,改善所得詞向量的質(zhì)量茴肥。采用了相對簡單的隨機負采樣,本文中選擇數(shù)據(jù)集中一個是正樣本荡灾,其他均為負樣本瓤狐。

問題提出

目前,表示學(xué)習(xí)的主要問題在于批幌,網(wǎng)絡(luò)學(xué)習(xí)到的特征往往都只適用于特定的任務(wù)础锐,其泛化性能有待提升。最近的無監(jiān)督學(xué)習(xí)都沿用了最普遍的方法:預(yù)測未來的荧缘、缺失的或上下文的特征皆警,因此無監(jiān)督學(xué)習(xí)可以定義為預(yù)測問題,將預(yù)測到的特征再用于表示學(xué)習(xí)截粗。
論文主要工作:
1信姓、將高維數(shù)據(jù)編碼到一個更容易對任務(wù)進行建模的低維隱空間中鸵隧;
2、在隱空間中運用了一個強大的自回歸模型意推,來預(yù)測未來特征或步驟豆瘫;
3、為了實現(xiàn)端到端的網(wǎng)絡(luò)訓(xùn)練菊值,使用了對抗噪聲估計作為損失函數(shù)外驱。

網(wǎng)絡(luò)模型

CPC用于音頻信號的模型

如圖所示,代表輸入的音頻序列腻窒,首先經(jīng)過一個非線性編碼器昵宇,它將輸入序列編碼成隱空間的序列,這時時間的分辨率會隨之降低定页;然后趟薄,再用一個自回歸模型將時刻之前的隱空間序列整合,得到當(dāng)前狀態(tài)的內(nèi)容隱空間表示典徊。
這篇論文認為杭煎,在預(yù)測未來數(shù)據(jù)的特征時,由于輸入數(shù)據(jù)維度很高卒落,再加上用單峰損失函數(shù)可能得不到細節(jié)信息羡铲,直接用一個基于的生成式模型去獲得數(shù)據(jù)特征的方法不是最有效的。因此在CPC中儡毕,對和的密度比建模也切,構(gòu)造了一個概率密度函數(shù): 使用雙線性模型,對每個k時刻進行線性映射腰湾,這個過程對非線性網(wǎng)絡(luò)和循環(huán)神經(jīng)網(wǎng)絡(luò)也同樣適用雷恃。同時函數(shù)和、的互信息成正比费坊,通過最大化兩者的互信息來解析輸入數(shù)據(jù)在隱空間的共有特征倒槐。
網(wǎng)絡(luò)使用了重要性采樣(importance sampling)和對抗噪聲估計等技巧避免了直接對高維數(shù)據(jù)建模,直接從和中采樣得到正負樣本附井,再進行計算讨越。
和都可以作為下游任務(wù)的輸入,需要獲取過去輸入信號的信息時更適用永毅,不需要時更適用(比如圖像分類)把跨。

損失函數(shù)

編碼器和自回歸模型基于NCE(Noise Contrastive Estimator)聯(lián)合優(yōu)化損失函數(shù),也稱為InfoNCE沼死。給定數(shù)據(jù)集X=\{x_1,x_2,...,x_N\}着逐,N個隨機樣本中包含一個正樣本(從p(x_{t+k}|c_t)中采樣),和N-1個負樣本(從p(x_{t+k})中采樣),定義優(yōu)化函數(shù)為:L_N=-E_x[\log \frac{f_k(x_{t+k},c_t)}{\sum _{x_j\in X}{f_k(x_j,c_t)}}]
這是對正樣本正確分類的交叉熵損失滨嘱,其中\frac {f_k}{\sum_X {f_k}}是網(wǎng)絡(luò)的預(yù)測輸出峰鄙,再將f_k的概率形式\frac{p(x_{t+k}|c_t)}{p(x_{t+k})}代入,得到損失函數(shù)的概率形式(原文式5)太雨。
最后可估計x_{t+k}c_t的互信息:I(x_{t+k};c_t)\geq \log(N)-L_N樣本數(shù)量N越大吟榴,損失函數(shù)越小,兩個分布的互信息就越大囊扳。因此吩翻,最大化互信息可看做最小化損失函數(shù),最小化損失函數(shù)就需要最大化f函數(shù)锥咸,經(jīng)過論證f與負采樣的數(shù)量無關(guān)狭瞎。

實驗結(jié)果

論文對音頻、圖像搏予、文本和強化學(xué)習(xí)任務(wù)中分別進行了實驗熊锭,先用CPC模型對數(shù)據(jù)進行隱空間編碼,再預(yù)測訓(xùn)練數(shù)據(jù)未來的或缺失的特征雪侥,最后訓(xùn)練分類器對CPC得到的特征進行分類碗殷。相當(dāng)于是對高維數(shù)據(jù)的一種降維方法,降維的同時基于已有的數(shù)據(jù)分布情況速缨,預(yù)測出更多的特征信息锌妻。
對于有時間維度的數(shù)據(jù),例如音頻旬牲、文本仿粹,CPC模型對于當(dāng)前時刻t以前的數(shù)據(jù)進行訓(xùn)練,得到每個時間點的隱空間向量原茅,再用自回歸模型結(jié)合之前的隱變量和當(dāng)前隱變量吭历,預(yù)測時間t以后的特征分布;對于沒有時間維度的數(shù)據(jù)擂橘,如圖像毒涧,模型的自回歸部分根據(jù)隱變量得到特征圖的前2~5行,再根據(jù)已有信息預(yù)測剩余行的特征(輸出的是7x7的網(wǎng)格)贝室。

總結(jié)

1、論文的主要思想
本文提出了對比預(yù)測編碼(CPC)仿吞,這是一種用于提取緊湊潛在表示以對未來觀測進行編碼的框架滑频。CPC將自回歸建模和噪聲對比估計與預(yù)測編碼的直覺相結(jié)合,以一種無監(jiān)督的方式學(xué)習(xí)抽象表示唤冈。
利用編碼器和自回歸模型對高維數(shù)據(jù)進行降維峡迷,得到可表示信息,再用對比噪聲估計預(yù)測未來的表示信息。
2绘搞、編碼器和自回歸模型各自的作用
編碼器將輸入高維數(shù)據(jù)映射成低維空間的隱變量彤避,使用自回歸模型是為了將之前時刻和當(dāng)前時刻的隱變量匯總。

挖坑

1夯辖、負采樣的方式具體怎么簡化成二分類的問題琉预?
實質(zhì)是基于對比學(xué)習(xí)的模型訓(xùn)練方式,在MOCO的論文中蒿褂,作者對當(dāng)前主流的對比學(xué)習(xí)方法做了比較清楚的總結(jié):對比學(xué)習(xí)和GAN網(wǎng)絡(luò)以及NCE存在很大聯(lián)系圆米,可以將其看做是一個查字典的過程,在輸入高維連續(xù)的數(shù)據(jù)上建立字典啄栓,構(gòu)造一個對比損失函數(shù)娄帖,讓每個查詢樣本和它唯一對應(yīng)的鍵值關(guān)聯(lián)最大,和其他鍵值關(guān)聯(lián)最小昙楚。其中查詢樣本是輸入數(shù)據(jù)x經(jīng)由編碼器在隱空間的低維表示向量近速,鍵值則是更具高層語義信息的內(nèi)容表示向量。
在本文中可以理解為堪旧,輸入的數(shù)據(jù)x經(jīng)過一個編碼器得到低維空間特征z削葱,再將z經(jīng)過自回歸模型得到內(nèi)容表示c,網(wǎng)絡(luò)的目的是讓當(dāng)前輸入的x_t只和c_t之間互信息最大崎场,其余視為負樣本的x_jc_t互信息最小佩耳。損失函數(shù)的設(shè)計是基于N分類的softmax形式,\frac {f_k}{\sum_X {f_k}}中分子是正樣本的預(yù)測置信度(以互信息的形式)谭跨,分母是其他負樣本的預(yù)測置信度干厚,損失函數(shù)越小,說明樣本和正確鍵值之間距離越小螃宙,和錯誤鍵值之間距離越大蛮瞄。
2、無標注信息的數(shù)據(jù)經(jīng)過CPC得到特征谆扎,再對特征進行分類的時候以什么作為對比標簽挂捅?
根據(jù)DIM論文里的描述,DIM的目標在于訓(xùn)練一個編碼器堂湖,該編碼器能夠?qū)斎霐?shù)據(jù)進行比較好的特征解析闲先,當(dāng)把編碼器融合進下游任務(wù)時,比如分類任務(wù)无蜂,就需要在編碼器后面添加少量的卷積層或全連接層伺糠,這些網(wǎng)絡(luò)的目的是把編碼器得到的特征轉(zhuǎn)化為對應(yīng)的回歸值,從而得到分類的預(yù)測標簽斥季。因此后續(xù)添加上去的網(wǎng)絡(luò)層需要經(jīng)過訓(xùn)練训桶,訓(xùn)練的標簽就來源于數(shù)據(jù)累驮。
這個問題實際上是想問,既然做分類任務(wù)舵揭,為什么要先無監(jiān)督訓(xùn)練一個編碼器得到特征谤专,再有監(jiān)督地對特征訓(xùn)練一個分類器,這樣還是一個有監(jiān)督的分類方式午绳?后來發(fā)現(xiàn)分類任務(wù)只是評估編碼器表示能力的工具置侍,用于測試編碼器得到的特征是否包含所需要的類別信息,所以理所應(yīng)當(dāng)再用輸入數(shù)據(jù)的標簽去訓(xùn)練一個后接網(wǎng)絡(luò)箱叁。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末墅垮,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子耕漱,更是在濱河造成了極大的恐慌算色,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,884評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件螟够,死亡現(xiàn)場離奇詭異灾梦,居然都是意外死亡,警方通過查閱死者的電腦和手機妓笙,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,347評論 3 385
  • 文/潘曉璐 我一進店門若河,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人寞宫,你說我怎么就攤上這事萧福。” “怎么了辈赋?”我有些...
    開封第一講書人閱讀 157,435評論 0 348
  • 文/不壞的土叔 我叫張陵鲫忍,是天一觀的道長。 經(jīng)常有香客問我钥屈,道長悟民,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,509評論 1 284
  • 正文 為了忘掉前任篷就,我火速辦了婚禮射亏,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘竭业。我一直安慰自己智润,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 65,611評論 6 386
  • 文/花漫 我一把揭開白布未辆。 她就那樣靜靜地躺著做鹰,像睡著了一般。 火紅的嫁衣襯著肌膚如雪鼎姐。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,837評論 1 290
  • 那天,我揣著相機與錄音炕桨,去河邊找鬼饭尝。 笑死,一個胖子當(dāng)著我的面吹牛献宫,可吹牛的內(nèi)容都是我干的钥平。 我是一名探鬼主播,決...
    沈念sama閱讀 38,987評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼姊途,長吁一口氣:“原來是場噩夢啊……” “哼涉瘾!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起捷兰,我...
    開封第一講書人閱讀 37,730評論 0 267
  • 序言:老撾萬榮一對情侶失蹤立叛,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后贡茅,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體秘蛇,經(jīng)...
    沈念sama閱讀 44,194評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,525評論 2 327
  • 正文 我和宋清朗相戀三年顶考,在試婚紗的時候發(fā)現(xiàn)自己被綠了赁还。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,664評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡驹沿,死狀恐怖艘策,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情渊季,我是刑警寧澤朋蔫,帶...
    沈念sama閱讀 34,334評論 4 330
  • 正文 年R本政府宣布,位于F島的核電站梭域,受9級特大地震影響斑举,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜病涨,卻給世界環(huán)境...
    茶點故事閱讀 39,944評論 3 313
  • 文/蒙蒙 一富玷、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧既穆,春花似錦赎懦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,764評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至囊颅,卻和暖如春当悔,著一層夾襖步出監(jiān)牢的瞬間傅瞻,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,997評論 1 266
  • 我被黑心中介騙來泰國打工盲憎, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留嗅骄,地道東北人。 一個月前我還...
    沈念sama閱讀 46,389評論 2 360
  • 正文 我出身青樓饼疙,卻偏偏與公主長得像溺森,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子窑眯,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,554評論 2 349