我有两个数据集,一个是数字数据集,另一个是数字数据集的语义信息。我想训练一个自动编码器来给予应该匹配语义数据集的潜在嵌入。也就是说:ae_model = Model(input = X_tr,target = [X_tr,S_tr])其中S_tr是应该与编码器输出或潜在嵌入匹配的语义嵌入。
# Load the data
(x_train, y_train), (x_test, y_test) = tf.keras.datasets.mnist.load_data()
# Load the target embeddings
target_embeddings = tf.keras.datasets.mnist.load_data()[1]
# Define the autoencoder
encoder = tf.keras.Sequential([
tf.keras.layers.Flatten(input_shape=(28, 28)),
tf.keras.layers.Dense(128, activation='relu'),
tf.keras.layers.Dense(64, activation='relu'),
])
decoder = tf.keras.Sequential([
tf.keras.layers.Dense(128, activation='relu'),
tf.keras.layers.Dense(28 * 28, activation='sigmoid'),
tf.keras.layers.Reshape((28, 28)),
])
ae_model = tf.keras.Model(encoder, decoder)
# Compile the autoencoder
ae_model.compile(optimizer='adam', loss='mse')
# Train the autoencoder
ae_model.fit(x_train, target_embeddings, epochs=10)
我已经尝试过了,但是它传递了Target_embeddings作为目标,我希望潜在的嵌入与target_embeddings匹配,我该怎么做呢?
1条答案
按热度按时间mi7gmzs61#
试试这个: