是一个可学习层,用于学习单词或者其它以index标记的数据的编码(通常是向量编码)
为何需要这个层?普通的one-hot编码很难表示两个词之间的相关度,但通过可训练的embedding
层可以学习出两个词变量编码,且如果是相关的词,词向量之间具有更大的相关性。
------
Keras:
keras.layers.embeddings.Embedding(input_dim, output_dim,
embeddings_initializer='uniform', embeddings_regularizer=None,
activity_regularizer=None, embeddings_constraint=None, mask_zero=False, input_length=None)
输入shape
形如(samples,sequence_length)的2D张量
输出shape
形如(samples, sequence_length, output_dim)的3D张量
官方例子:
【1】model = Sequential()
【2】model.add(Embedding(input_dim=1000,output_dim=64, input_length=10))