在看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)spa
在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)。.net
input_shape就是指輸入張量的shape。例如,input_dim=784,說明輸入是一個784維的向量,這至關於一個一階的張量,它的shape就是(784,)。所以,input_shape=(784,)。orm
input_dim = input_shape(input_dim,)blog
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. input
參考:string
https://blog.csdn.net/HHTNAN/article/details/82493952it