このページは Cloud Translation API によって翻訳されました。
Switch to English

tf.keras.layers.Embedding

TensorFlow 1つのバージョン GitHubの上のソースを表示

固定サイズの密なベクターに正の整数(インデックス)をオンにします。

:から継承Layer

ノートPCで使用されます

ガイドで使用チュートリアルで使用されます

例えば[[4], [20]] -> [[0.25, 0.1], [0.6, -0.2]]

この層は、モデル内の最初の層として用いることができます。

例:

model = tf.keras.Sequential()
model.add(tf.keras.layers.Embedding(1000, 64, input_length=10))
# The model will take as input an integer matrix of size (batch,
# input_length), and the largest integer (i.e. word index) in the input
# should be no larger than 999 (vocabulary size).
# Now model.output_shape is (None, 10, 64), where `None` is the batch
# dimension.
input_array = np.random.randint(1000, size=(32, 10))
model.compile('rmsprop', 'mse')
output_array = model.predict(input_array)
print(output_array.shape)
(32, 10, 64)

input_dim 整数。語彙の大きさ、すなわち最大の整数インデックス+ 1。
output_dim 整数。密な埋め込みの寸法。
embeddings_initializer 初期化子embeddingsマトリックス(参照keras.initializers )。
embeddings_regularizer 正則関数が適用embeddingsマトリックス(参照keras.regularizers )。
embeddings_constraint 制約関数を適用embeddingsマトリックス(参照keras.constraints )。
mask_zero ブールは、かどうか、入力値0がマスクされるべき特別な「パディング」値です。可変長入力を取ることができる再発性層を使用する場合に有用です。これがあればTrue 、その後、モデルを必要としているすべての後続の層が、マスキングサポートするか例外が発生します。 mask_zeroがTrueに設定されている場合、結果として、インデックス0は、語彙に使用することができない(input_dim語彙+ 1の大きさに等しくなければなりません)。
input_length 入力配列の長さ、それは一定です。この引数は、接続しようとしている場合に必要とされるFlattenその後、 Dense層が上流(それなしで、密な出力の形状を計算することはできません)。

入力形状:

形状の2次元テンソル: (batch_size, input_length)

出力形状:

形状の三次元テンソル: (batch_size, input_length, output_dim)