你真正了解使用过的数据集吗?数据集有什么关系?数据集之间有多像?
?PaperWeekly 原創(chuàng) ·?作者?|?張一帆
學(xué)校?|?中科院自動化所博士生
研究方向?|?計算機視覺
深度學(xué)習(xí)盛行的現(xiàn)在,作為一名合格的調(diào)參俠,至少都下載/使用過很多個數(shù)據(jù)集了。而現(xiàn)在 DL 中各種 setting 都涉及著對數(shù)據(jù)集之間關(guān)系的研究,幾個典型的例子如下。
但是你真正了解使用過的數(shù)據(jù)集嗎?數(shù)據(jù)集有什么關(guān)系?數(shù)據(jù)集之間有多像?我們或許對此一無所知。來自 Microsoft 的資深研究員 David Alvarez-Melis 連發(fā)多篇 ML 頂會對這個問題加以研究。
本文將其一系列工作分為三部分介紹:1)如何進行數(shù)據(jù)集對齊;2)如何定義數(shù)據(jù)集之間的距離測度;3)如何優(yōu)化數(shù)據(jù)集。我們首先介紹知識背景即最優(yōu)運輸理論,然后分別介紹 David Alvarez-Melis 組關(guān)于三方面工作的三篇頂會文章。
最優(yōu)運輸理論
最優(yōu)運輸是一種尋找成本最低“將土堆從一個地方運送到另一個地方的方法”的方案。把概率分布想象成一堆泥土,最優(yōu)傳輸直觀地量化了它們的不同,即“泥土”或概率質(zhì)量必須鏟多少和多遠才能將一堆泥土變成另一堆。
但是土堆和鏟子與統(tǒng)計或機器學(xué)習(xí)有什么關(guān)系?我們將概率密度函數(shù)視為土堆,其中堆的“高度”對應(yīng)于該點的概率密度,在堆之間鏟土作為從一個點移動到另一個點的概率,其成本為這兩點之間的距離。最優(yōu)運輸為我們提供了一種量化兩個概率密度函數(shù)之間相似性的方法,即通過將一堆堆完全鏟成另一堆的形狀和位置所產(chǎn)生的最低總成本。對兩個概率分布,最優(yōu)運輸理論較為正式的定義為:
這里是邊緣分布的聯(lián)合分布,“鏟土”的花費記作樣本距離,這就是我們熟知的 p-Wasserstein distance?,也是 Wasserstein GAN 的理論基礎(chǔ),更相信的定義可以參閱這里?[1]。作者使用的是離散型的 OT,即用狄拉克分布的概率密度函數(shù),這時候 OT 是有能力為每個數(shù)據(jù)點分配對應(yīng)關(guān)系的。
Dataset alignment
Towards Optimal Transport with Global Invariances(AISTATS'19)
這里使用機器翻譯作為例子,正常的機器翻譯中我們都需要成對的數(shù)據(jù),但是如果沒有這種標注,一種可能的策略是通過數(shù)據(jù)的共現(xiàn)關(guān)系來分析詞之間的關(guān)系。而 embedding 是詞的一種更 compact 的表示方式,因此通過 embedding,我們是否能夠更好地尋找這種關(guān)系?
一種可行的策略是,我們將兩個 dataset 的 embedding 全部拿出來,然后計算點對之間的距離,將這個距離設(shè)置為 OT 中的花費。但是看下圖,我們的“pink”之所以能對應(yīng)到“rosa”,是因為坐標系是給定的(我們稱之為 registered),
此時考慮我們將右側(cè)的坐標系進行旋轉(zhuǎn),這個過程雖然 point 的位置變了,但是對模型來說依然線性可分,但是此時他與左側(cè)圖中的 embedding 顯然不能構(gòu)成一一對應(yīng)的關(guān)系了。所以我們說直接計算一對一的距離是沒有意義的。
這篇 paper 中給了一個簡單有效的計算策略,即我們選擇數(shù)據(jù)轉(zhuǎn)化的集合來約束 OT 的整個過程,我們稱這個為 invariant OT。
我們先使用一些人工設(shè)計的數(shù)據(jù)進行試驗,如下圖所示,傳統(tǒng)的 OT 只會根據(jù)最小的距離進行匹配,而 invariant OT 則對 transformation 具有不變性。
在翻譯數(shù)據(jù)集上,invariant 取得了 sota 的性能,同時效率很高。
注意到這里的數(shù)據(jù)集對齊是基于這樣一個假設(shè):“這些數(shù)據(jù)之間本身具有一對一的關(guān)系”。那么我們不妨考慮一個更難的問題,對任意兩個數(shù)據(jù)集,他們可能有不同大小,不同標簽,我們能否對齊他們,或者說,對齊他們的難度如何?這就引出了下一個問題,數(shù)據(jù)集距離的測度。
Dataset Distance
NeurIPS 2020: Geometric Dataset Distances via Optimal Transport
首先我們要知道,測量兩個數(shù)據(jù)集間的距離有如下幾個挑戰(zhàn)
數(shù)據(jù)集大小不同,甚至差異非常懸殊(mnist 和 imagenet).
數(shù)據(jù)大小不同,圖像分辨率相差非常的大。
標簽不同。
前兩個挑戰(zhàn)對于無監(jiān)督的數(shù)據(jù)集同樣適用。而最后一個往往是最難的。如下圖所示
對于(1), 我們可以將數(shù)據(jù)集看作概率分布,從中抽取有限數(shù)量的樣本,并對它們進行比較,從而將這種不變性強加到數(shù)據(jù)集大小上。同樣,輸入的維度不應(yīng)該在我們的距離中起主要作用。例如,不管圖像大小如何,MNIST 的本質(zhì)都是相同的。
在這里,我們將假設(shè)圖像根據(jù)需要進行了向上采樣或向下采樣,以使兩個數(shù)據(jù)集中的圖像進行相同大小的比較。對于標簽不同的兩個數(shù)據(jù)集,一方面是標簽數(shù)目不同,一方面是標簽的含義不同。為了處理這兩種差異,我們還是將每個標簽代表的類看作是分布,即用標簽對應(yīng)的數(shù)據(jù)們來代替標簽本身的含義,這樣就可以在特征層面比較兩個標簽。
下圖是文章的核心圖,根據(jù)標簽之間的距離,特征之間的距離成功計算兩個數(shù)據(jù)集間的最優(yōu)傳輸成本以及單個樣本之間的對應(yīng)關(guān)系。
具體而言,我們通過條件分布 來表示標簽并計算距離,因此這里又可以用到最優(yōu)運輸理論。總的來說,我們在測量數(shù)據(jù)集相似度時,OT 中的距離測度形式如下:
那么總的距離測度定義為:
下圖展示了五個常用小數(shù)據(jù)集之間的關(guān)系和 sample 之間的 coupling。
文中也對問題進行了特別的分析,使得最優(yōu)運輸理論在 neural network 上進行更加高效的計算。
3.1 Experiments
本文的關(guān)鍵觀察之一是,我們提出的距離測度高度預(yù)測了數(shù)據(jù)集之間的可遷移性——也就是說,在一個數(shù)據(jù)集中訓(xùn)練模型,然后在另一個數(shù)據(jù)集中微調(diào)它能取得大概怎樣的效果。這個性質(zhì)是很有意義的,因為它表明我們的方法可以通過選擇 OTDD 中與目標數(shù)據(jù)集“最接近”的數(shù)據(jù)集來選擇要預(yù)訓(xùn)練的數(shù)據(jù)集。下圖 M:MNIST, ?E:EMNIST, ?K:KMNIST, ?F:FASHION-MNIST, ?U:USPS 上的遷移情況。
除此之外,它在 NLP 的任務(wù)上也是適用的
大多數(shù)最先進的圖像分類方法都涉及對大規(guī)模源數(shù)據(jù)集進行預(yù)訓(xùn)練,這些數(shù)據(jù)集通過某種形式的數(shù)據(jù)增強,例如添加旋轉(zhuǎn)或裁剪過的圖像版本。選擇最有益的轉(zhuǎn)換是困難的,而且常常需要對大型模型進行昂貴的反復(fù)訓(xùn)練。本文的另一個結(jié)論是,我們的工具也可以通過評估哪些轉(zhuǎn)換使源數(shù)據(jù)更接近于感興趣的目標數(shù)據(jù)集來提供決策信息。作為一個例子,下面的可視化顯了通過裁剪和旋轉(zhuǎn)來修改 MNIST,同時保持 USPS 不變時模型性能的變化。
總結(jié)一下,本文的優(yōu)點或者說貢獻如下
方法屬于 Model-agnostic 的而且比較高效。
給出了一個性質(zhì)很好的距離測度,滿足對稱以及三角不等式。
只要 feature dim 相同,兩個數(shù)據(jù)集就是可比的。
到目前為止,我們可以對數(shù)據(jù)集進行對齊,進行距離的測度,那么是否還可以進行更復(fù)雜的操作呢?答案是肯定的,我們可以進一步對數(shù)據(jù)集進行優(yōu)化,正如我們訓(xùn)練模型一樣,數(shù)據(jù)集也可以用來訓(xùn)練。
Dataset Optimization
ICML 2021: Dataset Dynamics via Gradient Flows in Probability Space
這篇 paper 可以看作是上一篇的擴展版本,本文的目標是“dataset shaping”。目前來說在很多場景下,有 label 的數(shù)據(jù)還是少數(shù),大多數(shù)都是無標簽的數(shù)據(jù),特別是對于 DA 的任務(wù)而言。這篇文章想要設(shè)計一個框架,在這個中做到如下幾件事情
最大化數(shù)據(jù)集之間的相似度,直觀來看,如果 A,B 兩個數(shù)據(jù)集非常相似,那么在 A 上訓(xùn)練的模型可以很好的部署在 B 數(shù)據(jù)集上,不需要任何的模型調(diào)整。
提升類間的辨識度,這是分類的基礎(chǔ)。
隱藏一些敏感屬性。
本文并不是 model-centric 的方法,相反,文章想做的是優(yōu)化數(shù)據(jù)分布,使得數(shù)據(jù)分布本身滿足這些要求。
本文選擇了 gradient flow 來進行優(yōu)化,通過對 gradient flow 進行有限維空間的近似,作者也給出了在 NN 中的實現(xiàn)方式。
4.1 Application
最直觀的應(yīng)用就是 DA 了,與傳統(tǒng) DA 不同,傳統(tǒng) DA 在 source 上訓(xùn)練然后 adapt 到目標域上。
本文提出的第一種策略即所謂的 data-bsed adaptation,先將 source 轉(zhuǎn)化到 target 的附近,然后在兩個數(shù)據(jù)集上進行訓(xùn)練,adapt 的是數(shù)據(jù)而不是模型。因為文中的 flow 依賴于標簽,所以作者在這里的 setting 是 k-shot learning,即目標域每個 clss 給 100 個 sample,然后源域給 1000.
具體來說,我們從源域? 出發(fā),將數(shù)據(jù)集使用 flow 進行改造?,目標是目標域分布?。作者選擇了多個 baseline,target only 表示用只使用目標域數(shù)據(jù),+source 表示使用源域 + 目標域數(shù)據(jù)一起進行訓(xùn)練,flow 初始狀態(tài)就是源域,最終狀態(tài)是轉(zhuǎn)化的最后一步,full-flow trajectory 即將所有中間狀態(tài)也用于訓(xùn)練,
同樣,作者將 fine-tune 的策略也用在同樣的 setting 上,發(fā)現(xiàn) model-finetune 的結(jié)果比文中的方法表現(xiàn)差
本文提出的第二種策略:model repurposing,即將目標域的數(shù)據(jù)轉(zhuǎn)化為源域的 style,然后直接使用源域的模型。如下圖所示我們將 cifar10 上訓(xùn)練的模型,直接勇哉 Cameylon17-》cifar10 的 flow上。表中紅線是模型直接在 Cameylon17 上測試的結(jié)果,綠線是模型直接在目標域上訓(xùn)練得到的結(jié)果,藍線則代表了在 cifar10 上的模型,直接用在 flows 上得到的結(jié)果。可以看到 flow step 的最后效果竟然超過了直接在 Cameylon17 上訓(xùn)練的結(jié)果。
這就表明,我們可能只需要訓(xùn)練一個模型,然后將其他所有數(shù)據(jù)集 flow 到訓(xùn)練所用的數(shù)據(jù)集上,就能取得很好的效果。
Conclusion
那么總結(jié)一下,傳統(tǒng)的 model-based DA 和 data-centric DA 有什么區(qū)別?
當(dāng)然 data-centric 的很多東西都是剛剛起步而已,都還有很大的潛力。個人觀點,其實 nlp 中的 prompt 也可以看作是 data-centric 的例子之一。目前來看,這種范式都缺少理論上的保證。同時,如何在其他任務(wù)上設(shè)計 data-centric 的范式,也不妨是一個很有前景的研究課題。
參考文獻
[1] https://zhuanlan.zhihu.com/p/82424946
特別鳴謝
感謝 TCCI 天橋腦科學(xué)研究院對于 PaperWeekly 的支持。TCCI 關(guān)注大腦探知、大腦功能和大腦健康。
更多閱讀
#投 稿?通 道#
?讓你的文字被更多人看到?
如何才能讓更多的優(yōu)質(zhì)內(nèi)容以更短路徑到達讀者群體,縮短讀者尋找優(yōu)質(zhì)內(nèi)容的成本呢?答案就是:你不認識的人。
總有一些你不認識的人,知道你想知道的東西。PaperWeekly 或許可以成為一座橋梁,促使不同背景、不同方向的學(xué)者和學(xué)術(shù)靈感相互碰撞,迸發(fā)出更多的可能性。?
PaperWeekly 鼓勵高校實驗室或個人,在我們的平臺上分享各類優(yōu)質(zhì)內(nèi)容,可以是最新論文解讀,也可以是學(xué)術(shù)熱點剖析、科研心得或競賽經(jīng)驗講解等。我們的目的只有一個,讓知識真正流動起來。
📝?稿件基本要求:
? 文章確系個人原創(chuàng)作品,未曾在公開渠道發(fā)表,如為其他平臺已發(fā)表或待發(fā)表的文章,請明確標注?
? 稿件建議以?markdown?格式撰寫,文中配圖以附件形式發(fā)送,要求圖片清晰,無版權(quán)問題
? PaperWeekly 尊重原作者署名權(quán),并將為每篇被采納的原創(chuàng)首發(fā)稿件,提供業(yè)內(nèi)具有競爭力稿酬,具體依據(jù)文章閱讀量和文章質(zhì)量階梯制結(jié)算
📬?投稿通道:
? 投稿郵箱:hr@paperweekly.site?
? 來稿請備注即時聯(lián)系方式(微信),以便我們在稿件選用的第一時間聯(lián)系作者
? 您也可以直接添加小編微信(pwbot02)快速投稿,備注:姓名-投稿
△長按添加PaperWeekly小編
🔍
現(xiàn)在,在「知乎」也能找到我們了
進入知乎首頁搜索「PaperWeekly」
點擊「關(guān)注」訂閱我們的專欄吧
·
總結(jié)
以上是生活随笔為你收集整理的你真正了解使用过的数据集吗?数据集有什么关系?数据集之间有多像?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 大一去当兵回来后学习毕业,8月中旬24岁
- 下一篇: 新赛题上线!2021CCF大数据与计算智