2017-10-04 35 views
-2

我正在我自己的數據集上訓練一個卷積自動編碼器。在訓練之後,網絡能夠很好地從數據集中重建測試圖像。卷積自動編碼器特徵學習

我現在正在從編碼器網絡的中間表示( -dim),並試圖特徵向量聚類爲17(公知的前期)不同使用GMM軟聚類類。但是,這些集羣非常糟糕,無法將圖像集成到各自的類別中。

我正在使用sklearn.mixture.GaussianMixture用於正規化爲0.01和'full'covariance_type的聚類包。

我的問題:你爲什麼認爲重建是非常體面的,但聚類很不好?這是否意味着網絡學到的中間特徵是不夠的?

回答

0

讓我們回過頭來問題 - 爲什麼你認爲它應該有任何意義?您正在使用集羣,這只是分裂成組的任意方法,但您希望它會發現。它爲什麼會這樣做?實際上沒有任何強制模型可以這樣做,而且它可能是對完全不同的東西進行建模(如圖像,紋理等的修補程序)。一般來說,你應該永遠不會期望聚類解決一些任意標籤的問題,這不是聚類的目的。爲了給你更多的視角 - 你有來自10個類別(如貓,狗等)的圖像,並且你問:

  • 爲什麼特徵空間中的聚類不能恢復類?

需要注意的是同樣有效的問題將是:

  • 爲什麼聚集在功能空間不劃分圖像「瑞迪施」,「綠色」和「偏藍」?
  • 爲什麼特徵空間中的聚類不會將圖像除以圖像上對象的大小?
  • 爲什麼特徵空間中的聚類不會將圖像與其來自的國家劃分開來?

有成倍許多標號L被分配給每個數據集,並沒有在你的訓練使用任何標籤(autoencoding是無監督,聚類是無人監管),因此預計,其結果會奇蹟般地猜測這讓許多labellings的你想到的只是一個瘋狂的猜測,而它不這樣做的事實並不意味着什麼。這既不好也不壞。 (現在我們也忽略了GMM在1700維空間上的優勢。)

如果你想要模型執行一些任務,你必須給它一個機會,訓練它來解決它。如果您想查看學習的功能是否足以恢復類別,請在其上學習分類器

+0

我已經用標記的圖像對網絡進行了微調,但它並沒有改善所有情況 – mlenthusiast