深度聚类方法之对比聚类(Contrastive Clustering,CC)
深度聚類方法之對比聚類(Contrastive Clustering,CC)
1.參考文獻
《Contrastive Clustering》
2.深度聚類方法
深度聚類方法大致分為以下幾類:
①分階段:使用深度網絡進行對比學習or自動編碼器完成表征學習(目的:把同類樣本集中到一起,拉開不同類樣本的聚類),然后使用聚類模型把不同簇的樣本進行歸類,并且使用后續(xù)賦值對深度網絡進行更新。
這種交替學習方法在表征學習和聚類的交替階段中存在累積的誤差,會導致聚類性能次優(yōu)。
②端到端:即在完成表征學習的同時,同樣完成聚類。
根據數據集使用情況,又可分為:
①離線學習:要使用整個數據集才能進行聚類;
②在線學習:使用數據集的部分就能進行聚類;
3.對比聚類(Contrastive Clustering,CC)
對比聚類該方法是既可以分階段,也可以端到端,同時也是在線學習的。
總的來講是在對比學習基礎上,拓展為對比聚類,其思路如下圖
通過將特征矩陣的行視為實例的軟標簽(即表示樣本屬于簇的概率),可以據此將列解釋為分布在數據集上的聚類表示。
因此,可以在特征矩陣的行空間和列空間中分別進行表征學習和聚類的對比學習。
詳細流程如下圖
使用兩個數據擴充來構造數據對。給定數據對,一個共享的深度神經網絡被用來從不同的增強中提取特征。使用兩個獨立的MLPs(σ表示ReLU激活,~表示Softmax操作以產生軟標簽)將特征投影到行和列空間,其中分別進行表征學習和聚類的對比學習。
①Pair Construction Backbone主要使用了ResNet34做為主干網絡
②Instance-level Contrastive Head 首先是計算數據增強樣本向量的余弦相似度?損失函數如下
?由于希望識別數據集上的所有正對,因此在每個增強樣本上計算實例級的對比損失,即,
?
?這里跟對比學習是一樣的。
③Cluster-level Contrastive Head
?使用余弦距離來衡量聚類對之間的相似性,即
采用以下損失函數來區(qū)分簇與除簇外的所有其他簇
?
最后計算了簇級對比損失
?其中,
?這個有助于避免了大多數實例被分配給同一個集群的瑣碎解決方案。
④目標函數
?具體算法流程如下圖
4.應用
遷移學習或者半監(jiān)督學習
總結
以上是生活随笔為你收集整理的深度聚类方法之对比聚类(Contrastive Clustering,CC)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 怎么选择在线客服系统sdk供应商?
- 下一篇: CAS操作原理与实现