gpt4 book ai didi

r - 试图解决keras中的数据维度不匹配

转载 作者:行者123 更新时间:2023-12-03 16:58:33 26 4
gpt4 key购买 nike

我正在测试一个模型,然后再让它撕开一个完整的数据集。我的数据是数组中的 RGB 图像,因此,我的训练数据集目前具有以下维度

> dim(ff_train)
[1] 10 500 500 3
因此,10 张图像,每张 500x500 具有 3 个颜色层 (RGB)。
我的测试数据是一样的
> dim(ff_test)
[1] 10 500 500 3
我已经像这样设置了我的模型:


model <- keras_model_sequential() %>%
layer_dense(units = 16, activation = "relu",
input_shape = c(10)) %>%
layer_dense(units = 16, activation = "relu") %>%
layer_dense(units = 1, activation = "sigmoid")

model %>% compile(
optimizer = "rmsprop",
loss = "binary_crossentropy",
metrics = c("accuracy")
)

history <- model %>% fit(
x = ff_train,
y = ff_train_labels$fraction_yes,
epochs = 20,
validation_data = list(ff_test, ff_test_labels$fraction_yes))
其中输入形状为 10,因为我有 10 张图像。我也有 10 个标签,每个标签都是 0 到 1 之间的数字向量中的数字(样本中发生的事件的一部分)——两者的长度都是 10。
但是,当我运行模型时,出现错误
 Error in py_call_impl(callable, dots$args, dots$keywords) : 
ValueError: in user code:
在谷歌搜索之后,我找到了 https://github.com/rstudio/keras/issues/1063说明问题是我的尺寸或结构在训练和测试之间不匹配......似乎不正确?
我在这里缺少什么?尺寸不匹配在哪里?

最佳答案

你的输入是图像,所以你需要使用卷积层作为第一层,之后你需要展平层,这将在密集层之前。
如果没有展平层,您的输出是 4 维,但您需要 2 维输出。

  • 您的输出维度是 10,500,500,1
  • 但你需要 10,10

  • 你最后的密集层应该有 10 个神经元。

    关于r - 试图解决keras中的数据维度不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64775882/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com