Pytorch中的自編碼(autoencoder)


Pytorch中的自編碼(autoencoder)

本文資料來源:https://www.bilibili.com/video/av15997678/?p=25

什么是自編碼

先壓縮原數據、提取出最有代表性的信息。然后處理后再進行解壓。減少處理壓力

通過對比白色X和黑色X的區別(cost函數),從而不斷提升自編碼模型的能力(也就是還原的准確度)

由於這里只是使用了數據本身,沒有使用label,所以可以說autoencoder是一種無監督學習模型。

實際在使用中,我們先訓練好一個autoencoder模型,然后只取用其前一半,來獲取到壓縮了的特征進行其他的訓練,以達到壓縮特征的目的。

自編碼可以達到類似於PCA的效果

自編碼in Pytorch

  • encoder

  • decoder

  • 連接成網絡

  • 設置優化器和損失函數

    autoencoder=AutoEncoder()
    optimizer=torch.optim.Adam(autoencoder.parameters(),lr=LR)
    loss_func=mm.MSELoss()
    
  • 搭建網絡,傳入數據

這里的y是壓縮之前的數據,用來在loss function中和decoded對比的

  • 設置輸出


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM