keras常見參數input_dim、input_length理解


在看keras文檔embedding層的時候,不太理解其中的input_dim 和input_length 這兩個參數,查閱了一下資料,記錄下來。

keras.layers.Embedding(input_dim, output_dim, embeddings_initializer='uniform', embeddings_regularizer=None, activity_regularizer=None, embeddings_constraint=None, mask_zero=False, input_length=None)

  • input_dim: int > 0。詞匯表大小, 即,最大整數 index + 1。
  • output_dim: int >= 0。詞向量的維度。

在keras中,數據是以張量的形式表示的,張量的形狀稱之為shape,表示從最外層向量逐步到達最底層向量的降維解包過程。比如,一個一階的張量[1,2,3]的shape是(3,);
一個二階的張量[[1,2,3],[4,5,6]]的shape是(2,3);一個三階的張量[[[1],[2],[3]],[[4],[5],[6]]]的shape是(2,3,1)。

input_shape就是指輸入張量的shape。例如,input_dim=784,說明輸入是一個784維的向量,這相當於一個一階的張量,它的shape就是(784,)。因此,input_shape=(784,)。

input_dim = input_shape(input_dim,)

input_dim, input_length = input_shape(input_length, input_dim)

通俗來說,input_length就是輸入數據的長度,Input_dim就是數據的維度。比如一條數據內容是: “人人車” ,  one hot編碼后是 [[1 0] [1 0] [0 1]]表示 ,則  batch_size = 3, input_dim = 2

參考:

https://blog.csdn.net/HHTNAN/article/details/82493952


免責聲明!

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



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