【论文阅读】Deep Adversarial Subspace Clustering
導讀:
本文為CVPR2018論文《Deep Adversarial Subspace Clustering》的閱讀總結。目的是做聚類,方法是DASC=DSC(Deep Subspace Clustering)+GAN(Generative Adversarial Networks)。本文從以下四個方面來對論文做個簡要整理:
背景:簡要介紹與本文密切相關的基礎原理,DSC,GAN。
方法:介紹論文使用的方法和細節。
實驗:實驗結果和簡要分析。
總結:論文主要特色和個人體會。
一、背景
論文方法DASC(深度對抗聚類)是基于DSC(深度子空間聚類)和GAN(生成對抗網絡)的,所以,在介紹論文方法之前,對DSC和GAN做個簡要介紹。
1.DSC
1)原理(LRR)
首先要明確的是,整個論文的大方向是做聚類。做聚類以往已經有非常多的方法,最近幾年比較流行也即DSC所采用的理論基石是低秩表示(LRR)。
LRR理論基本思想是,對于一個數據(如圖像或圖像特征等)可以表示為干凈數據部分和噪聲部分,其中干凈數據部分又可以采用字典和系數表示的形式,此時要求干凈數據的系數表示部分是低秩的,噪聲部分是稀疏的。此時,如果用數據本身作為字典,那么其系數部分就可以描述原始數據間的相似度。用數學公式表示如下:
其中,X=[x1,x2,...xn]∈Rd*n表示原始輸入數據(一般是圖像的特征),Z∈Rn*n表示系數部分,E∈Rd*n表示噪聲。
那么這個式子與聚類有什么關系呢?關系是,假設待聚類的數據分布于多個線性子空間,那么通過求解上述式子的最小化問題,我們可以得到數據X間的相似度矩陣Z,有了相似度矩陣我們就可以對輸入數據X=[x1,x2,...xn]進行聚類。
因此,實現對多個d維數據xi的聚類,LRR方法采用的方法是,將xi按列組合成X,然后通過優化上述式子,得到Z,最后將Z輸入到譜聚類算法中,就可以得到最終的聚類結果。
2)方法(網絡)
一般來說,對于圖像做聚類,我們采用的方法是,對圖像提取特征,然后得到特征表示,組成X,然后采用LRR原理進行聚類。但是這種先提取特征再進行聚類的缺點是一個兩階段的過程,兩者不能互相促進。
因此DSC將特征提取和相似度矩陣的學習融入到一個網絡中進行統一學習。重新定義符號表示,用X表示輸入數據,Z表示特征,θ表示待學習的參數相似度矩陣,那么DSC的學習是最優化下面的式子:
min ||Z-Zθ||F+λ||θ||F,以求得參數Z和θ。
網絡整體結構如下:
上圖所示,輸入圖像X,經過兩層編碼器進行編碼(即特征轉換),得到特征表示Z,然后將Z reshape成一個列向量,然后與后面變量Zθ進行全連接,再將Zθ重新reshape成與前面相對應的大小,再經過兩個解碼層,得到恢復出的圖像。即,原圖->編碼得特征->解碼得原圖。
3)設計
DSC重點主要是Loss的設計,Loss由重建損失、參數正則損失、自表示損失幾部分組成:
2.GAN
1)原理
GAN由一個生成器和一個判別器組成。其中,生成器負責生成數據,從真實的數據中生成假的數據,期望假的數據越逼真越好。判別器負責判斷接收到的數據是真實的還是產生的,即一個二分類器,期望效果比較好,也就是說真實的數據判別為真的概率更大,假的數據判別為真的概率更小。所以,在生成器期望生成的數據逼真到能夠欺騙判別器而判別器期望判別能力強的情況下,通過兩者的博弈,來達到生成數據能夠模擬真實數據的效果。
2)設計
實現GAN主要是通過Loss的設計,D的輸出為數據被判定為真實數據的概率,整體Loss如下:
優化D:
優化G:
對于上述Loss的解釋是,優化判別器D時,希望D判別能力強,那么就希望真實數據被判定為真的概率大,所以Ex~Pdata(x)[log(D(x))]應該比較大,D(G(Z))比較小,Ez~Pz(z)[log(1-D(G(z)))]應該比較大,所以是最大化V(D,G)。優化產生器時,期望偽造數據比較真,那么就希望Z為偽造品時,D(G(Z))比較大,也即Ez~Pz(z)[log(1-D(G(z)))]比較小。
更多關于GAN的解釋可見其他博客,這里不做更詳細的解釋。
3)作用
使得偽造的數據足夠逼真,比如從噪聲數據,逐步學習,得到人臉數據等。
3.DASC
上面介紹完了DAC和GAN,我們知道DSC已經可以做聚類了,而且聚類算比較好的了,那么還能不能再提高呢?答案是可以。
我們知道,DSC是一步一步訓練得到Z來做聚類,其中有個問題是,我們并不確定迭代到多少次效果比較好,也不能確定下次迭代就比上次得到的Z好,那么有沒有什么方法能夠指導無監督網絡DSC的學習,讓網絡的訓練每次都朝著效果更好的方向訓練呢?
這就是DASC所做的工作了,基礎思想是,用GAN來指導DSC的學習,使其每次都朝著效果更好的方向發展。
二、方法
本章介紹DASC的方法,從原理、生成器、判別器、訓練這四個部分分別進行探討。
1)原理
用GAN指導DSC的學習,就需要明確下面兩個問題。
一是,把處于同一子空間的數據,進行線性組合得到新的數據,那么新的數據依然處于該子空間。反之,處于不同子空間的數據,進行線性組合得到的數據跟原始數據處在不同子空間。(可以從下圖看出)
二是,處在同一子空間的數據,判別器(即分類器)分辨不出是真實數據還是偽造的數據,即輸出概率為0.5。
通過一二知,聚類效果比較好->新數據依然處于該子空間->判別器無法判別真假。即,判別器越無法判斷真假數據,說明聚類效果越好。
所以,我們要做的任務就是,通過生成器得到正(真實數據)次(線性組合得到的偽造數據)品,輸入到判別器中,經過對抗學習,得到更好的相似度矩陣θ和特征表達Z,從而來得到最終的聚類結果。
其中,生成器G包括DSC和正次品采樣層。下面的DSC得到中間聚類結果后,將Z輸入給采樣層,采樣層得到正次品輸入給判別器D。
2)生成器
生成器的操作步驟是:
11)聚類得到Ci和特征表示zi。
22)計算類Ci中zi到相對應的子空間Si的投影殘差Lr。其中Si是由投影矩陣Ui來表示的,Ui(或者說Si)是判別器學習得到的,與生成器的學習無關。
33)選擇投影殘差Lr最小的80%~90%的Ci中的數據作為正品。(因為經過DSC大部分的數據已經是正確的。這里還可以起到去噪的作用)
44)隨機線性組合計算得到與正品同樣數量的次品。其中α來于[0-1]中的隨機數。
55)將正次品輸給判別器D。
3)判別器
11)學習的參數
學習的參數為子投影矩陣Ui(代表子空間Si),用子空間來判別是正品還是次品。原則是,投影殘差Lr越小,說明是正品(文章中說能量越小)的概率越大,對判別器來說Loss的輸出也應該越小。反之Loss就越大。所以投影殘差Lr即與Loss成反比。
22)優化
經過上述分析,直接給出Loss優化如下。
????
????????????
33)細節
投影矩陣Ui和類簇Ci并不是一一對應的關系,因為每次更新都需要找一下是否子空間投影矩陣是否有變化,所以需要Ci進行競爭Ui。競爭的方式是,對每個類簇計算平均投影殘差,然后選擇具有最小平均殘差的Ui作為自己的投影矩陣。如果該Ui具有更小平均投影殘差的類簇,那么原類簇則采用對Z進行QR分解來得到自己的Ui。
判別器采用兩層全連接感知機。
4)訓練
11)DSC預訓練初始化DASC網絡。
22)用Zi的QR分解初始化Ui。
33)聯合交替更新DASC中的D和G,其中D更新五次,G更新一次。
三、實驗
直接貼結果吧。
分析略。
四、總結
1.該文章采用了DSC+GAN的方式,是GAN在無監督聚類上的首次成功運用。
2.文章對無監督的聚類進行了定性的評估:線性組合在同一子空間(不能被判別器正確識別)說明聚類效果好。
3.文章對無監督聚類進行了定量的評估:據子空間的投影殘差越小說明屬于真實數據的概率越大。
4.在寫作方面,文章采用比較新穎刁鉆的方式。比如,把投影距離稱為能量大小,把線性組合稱為新子空間采樣。換湯不換藥,還顯得很好喝,就比較騷了。
本文對應論文和ppt下載地址;網盤地址
轉載于:https://www.cnblogs.com/EstherLjy/p/9840016.html
總結
以上是生活随笔為你收集整理的【论文阅读】Deep Adversarial Subspace Clustering的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 最优化作业02—一维最优化方法
- 下一篇: office和计算机基础,国二ms才of