【问题标题】:How setup Keras model correctly?如何正确设置 Keras 模型?
【发布时间】:2016-02-01 07:41:16
【问题描述】:

我正在努力在 Keras 中构建模型。我想以input=10output=3 的形式传递我的所有功能。但是,一旦我运行下面的代码

def build_model(input_dim, output_classes):
    print 'Creating model ...', time.time() - start, mprof.memory_usage()
    model = Sequential()
    model.add(Dense(input_dim=input_dim, output_dim=8, activation=relu))
    model.add(Dropout(0.5))
    model.add(Dense(input_dim=8, output_dim=6, activation=relu))
    model.add(Dropout(0.5))
    model.add(Dense(output_dim=output_classes, activation='softmax'))
    model.compile(loss='categorical_crossentropy', optimizer='adadelta')

我遇到了一个错误:

ValueError: ('shapes (35,9) and (10,8) not aligned: 9 (dim 1) != 10 (dim 0)', (35L, 9L), (10L, 8L))
Apply node that caused the error: Dot22(<TensorType(float32, matrix)>, <TensorType(float32, matrix)>)
Inputs types: [TensorType(float32, matrix), TensorType(float32, matrix)]
Inputs shapes: [(35L, 9L), (10L, 8L)]
Inputs strides: [(36L, 4L), (32L, 4L)]
Inputs values: ['not shown', 'not shown']

在我的例子中,模型初始化的正确参数是什么?

【问题讨论】:

  • 你确定input_dim 是一个标量吗?
  • 请发布input_dimoutput_classes的值。

标签: python python-2.7 neural-network keras


【解决方案1】:

我复制了你的代码并没有错误地执行它。(只是在我使用 Python 3 时评论了打印)

我设置了 input_dim = 10 和 output_classes = 3,没有问题。

可能是您为 output_classes 传递了一个非整数值,如果是这种情况,可能会出现一系列错误,具体取决于传递的对象类型。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-13
    • 1970-01-01
    • 2020-06-20
    • 1970-01-01
    • 2019-03-14
    • 2020-08-16
    相关资源
    最近更新 更多