從對比學習(Contrastive Learning)到對比聚類(Contrastive Clustering)
作者:凱魯嘎吉 - 博客園 http://www.cnblogs.com/kailugaji/
想要了解對比聚類,首先應該清楚對比學習的整個過程。最經典的對比學習的文章是Hinton團隊提出的SimCLR,該方法首先將一個實例(圖像)變換成兩種不同的增廣實例(圖像),然后用神經網絡訓練得到投影表示,用余弦相似性求出兩兩投影表示之間的相似性,並最大化相同實例投影表示之間的一致性。而對比聚類(CC)完全借鑒SimCLR的思想,唯一的區別是之前的對比學習是實例層面的,橫向進行對比,而CC則添加了一個聚類層面的對比學習,縱向進行對比。通過同時最小化兩個層面的損失函數,最終得到聚類層面上的網絡權重,進而得到划分結果。
1. 對比學習
2. 對比聚類
CC創新:
- 一方面,從聚類的角度,受益於“標簽即表示”及“列空間對應類別表示空間”的洞見,本文提出的方法無需所有數據輸入后才能進行聚類,而是采用在線的方式實時對當前數據進行聚類隸屬預測,適用於大規模在線場景和流式數據處理。大量實驗表明,提出的方法在CIFAR10,CIFAR100等數據集上比當時最優聚類算法提升精度30%以上。
- 另一方面,從對比學習角度,該工作是最早的面向任務的對比學習方法,而不再是流行的任務無關無監督表示學習范式。
- 此外,本文提出的算法也可認為是一種新的引入聚類性質從而增強表示學習能力的對比學習方法,為對比學習研究領域引入新的洞見。
- 本文的整個idea非常優雅、簡潔及自洽。相對於最新的SimCLR等對比學習算法,本文提出的算法僅需在考慮數據特征行空間對比學習的同時再考慮列空間的對比學習即可。
思考:
對比聚類中用紅色方框框出來的就是不同於SimCLR的地方,如果去掉紅框的內容,那就完全是SimCLR。以往都是在行空間上進行對比學習,CC的創新之處在於引入列空間上的對比學習(矩陣大小為:樣本數*聚類個數)。但列空間上的對比學習的損失函數與SimCLR完全一致,沒有任何改進。對比學習主要目的是最大化同一實例之間的相似性,而最小化不同實例之間的相似性。總體來說,該算法最適用於圖像類型的數據,因為剛開始涉及到隨機變換函數是對圖像進行一系列變換操作。本人理解有限,歡迎指正。
3. 采用最近鄰進行語義聚類(SCAN)
在沒有真實標注的情況下,我們是否能自動將圖像划分為語義意義上的簇?無監督圖像分類在計算機視覺領域仍然是一個重要的開放的挑戰性任務。最近有幾種方法試圖以端到端的方式解決這個問題。在這篇論文中,通過兩步的方法進行聚類,其中特征學習和聚類是分開進行的。首先,利用表征學習的自監督任務來獲取語義特征。其次,在可學習的聚類方法中,使用獲得的特征作為先驗。在此過程中,去掉了依賴於底層特征的聚類學習能力,這在當前的端到端學習方法中是存在的。具體來看該算法Semantic Clustering by Adopting Nearest neighbors (SCAN)。
4. 參考
[1] Ting Chen, Simon Kornblith, Mohammad Norouzi, Geoffrey Hinton. A Simple Framework for Contrastive Learning of Visual Representations, ICML, 2020.
Paper: http://proceedings.mlr.press/v119/chen20j.html
Code: https://github.com/google-research/simclr
[2] Yunfan Li, Peng Hu, Zitao Liu, Dezhong Peng, Joey Tianyi Zhou, Xi Peng, Contrastive Clustering, AAAI, 2021.
Paper: http://pengxi.me/wp-content/uploads/2020/12/2021AAAI-CC.pdf
Code: https://github.com/XLearning-SCU/2021-AAAI-CC
彭璽老師報告視頻(從第21分鍾開始看):https://www.bilibili.com/video/BV1Ny4y127v6
[3] CCF A類會議AAAI 2021論文收錄結果出爐:我院彭璽教授有兩篇論文入選 http://cs.scu.edu.cn/info/1246/15202.htm
[4] The Illustrated SimCLR Framework - Amit Chaudhary https://amitness.com/2020/03/illustrated-simclr/
[5] Van Gansbeke W., Vandenhende S., Georgoulis S., et al. SCAN: Learning to Classify Images Without Labels. ECCV 2020.
Paper: https://www.ecva.net/papers/eccv_2020/papers_ECCV/papers/123550273.pdf
Code: https://github.com/wvangansbeke/Unsupervised-Classification