r-带有MNIST样本数据的简单keras自动编码器不工作



我正试图使用MNIST示例数据集在R中实现一个简单的keras autoencoder。我从博客上得到了我的例子,但它不起作用。我几乎得到了0 %的准确度。

目标是将每个28 x 28图像(784个条目(压缩为32个条目的向量:

这是我的代码:

library(keras)
mnist <- dataset_mnist()
x_train <- mnist$train$x
# reshape
x_train <- array_reshape(x_train, c(nrow(x_train), 784))
x_train <- x_train / 255
model <- keras_model_sequential() 
model %>% 
layer_dense(units = 32, activation = 'relu', input_shape = c(784)) %>% 
layer_dense(units=784, activation='sigmoid')
model %>% compile(
loss = 'categorical_crossentropy',
optimizer = 'adam',
metrics = c('accuracy')
)
history <- model %>% fit(
x_train, x_train, 
epochs = 15, batch_size = 128, 
validation_split = 0.2
)

您希望在此处使用binary_crossentropy作为损失函数。categorical_crossentropy适用于多类别分类问题(只有一个输出为1(,binary_crossentropy适用于多标签分类。

相关内容

  • 没有找到相关文章

最新更新