1. 程式人生 > >深度學習Keras框架筆記之AutoEncoder類

深度學習Keras框架筆記之AutoEncoder類

seq boolean red any ati RR blog data val

深度學習Keras框架筆記之AutoEncoder類使用筆記

keras.layers.core.AutoEncoder(encoder, decoder,output_reconstruction=True, weights=None) 

  

這是一個用於構建很常見的自動編碼模型。如果參數output_reconstruction=True,那麽dim(input)=dim(output);否則dim(output)=dim(hidden)。

inputshape: 取決於encoder的定義

outputshape:取決於decoder的定義

參數:

  • encoder:編碼器,是一個layer類型或layer容器類型。
  • decoder:解碼器,是一個layer類型或layer容器類型。
  • output_reconstruction:boolean。值為False時,調用predict()函數時,輸出是經過最深隱層的激活函數。Otherwise, the output of thefinal decoder layer is presented. Be sure your validation data conforms to thislogic if you decide to use any.(這一塊還不太了解,待以後了解了再補充)
  • weights:用於初始化權值的numpy arrays組成的list。這個List至少有1個元素,其shape為(input_dim, output_dim)。

舉例:

from keras.layers import containers  
  
 # input shape: (nb_samples, 32)  
encoder =containers.Sequential([Dense(16, input_dim=32), Dense(8)])  
decoder =containers.Sequential([Dense(16, input_dim=8), Dense(32)])  
   
autoencoder =Sequential()  
autoencoder.add(AutoEncoder(encoder=encoder, decoder=decoder,output_reconstruction=False))  

  順便再打個小廣告,歡迎訪問自己的網站:圓柱模板

深度學習Keras框架筆記之AutoEncoder類