keras 中 Embedding层input_dim,output_dim个人理解

from keras.layers.embeddings import Embedding
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. Size of the vocabulary, i.e. maximum integer index + 1.
  • output_dim: int >= 0. Dimension of the dense embedding.
  • embeddings_initializer: Initializer for the embeddings matrix (see initializers).

上面只是列出了常用参数,其中input_dim便是词汇长度+1,我个人理解是,Embedding功能是将单词索引变为向量表示,这个过程,便是一个降维的过程,所以你的输入维度便是你的最大数字加一
keras 中 Embedding层input_dim,output_dim个人理解_第1张图片
可以看出,我输入数组中最大数字是3,所以我的input_dim便要比3要大1,其中output_dim便是输出维度,就如同CNN最后的全连接层一样,上面我设置的5,便将每一位要表示的数字变为用1x5来表示的向量。

你可能感兴趣的:(keras)