簡體   English   中英

如何使用變分自動編碼器對圖像進行分類

[英]How to classify images with Variational Autoencoder

我已經在標記圖像 (1200) 和未標記圖像 (4000) 中訓練了一個自動編碼器,並且我分別保存了兩個模型(vae_fake_img 和 vae_real_img)。 所以我想知道下一步該怎么做。 我知道變分自動編碼器對分類任務沒有用,但特征提取似乎是一個很好的嘗試。 所以這是我的嘗試:

  1. 使用來自標記圖像潛在空間的 k 均值聚類標記我未標記的數據。
  2. 我的主管建議在 VAE 上訓練未標記的圖像,然后使用 t-SNE 可視化潛在空間,然后使用 K-means 聚類,然后使用 MLP 進行最終預測。
  3. 我想訓練條件 VAE 以創建更多標記樣本並重新訓練 VAE 並使用重建 (64,64,3) output 並使用 VGGNet16 架構的最后三個完全連接 (FC) 層進行最終分類,如本文所述編碼器作為特征提取論文

我為我的論文嘗試了很多方法,如果我想在目前的實習中找到一份工作,我真的需要達到很高的准確性。 因此,非常感謝任何建議或指導。 我已經閱讀了很多 Autoencoder 論文,但是沒有完全解釋分類架構(或者我沒有正確理解),我想知道 VAE 的哪一部分包含更多的多分類信息,因為我相信編碼器的潛在空間有比解碼器重建更有用的信息。 我想知道自動編碼器的哪一部分具有更好的最終分類特征提取。

在自動編碼器的情況下,你不需要標簽來重建輸入數據。 所以我認為這些方法可能會略有改進:

  • 使用 VAE(變分自動編碼器)代替 AE
  • 使用條件 VAE(CVAE)並組合所有數據並訓練將所有數據輸入其中的網絡。
  • Batch視為條件,用於標記和未標記的數據,並使用 onehot 批數據作為其條件。
  • 將條件注入編碼器和解碼器
  • 然后潛在空間不會有任何批次效應,您可以使用 KNN 為未標記數據獲取最近標記數據的 label。
  • 或者,您可以訓練一個簡單的 MLP 來對潛在空間的每個樣本進行分類。 (在這種方法中,您應該僅使用標記數據訓練 MLP,然后在未標記數據上對其進行測試)

不要忘記 Batch normalization 和 drop out 層 ps,AE 中最有意義的層是潛在空間。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM