TypeError:compile()缺少1个必需的位置参数:'self'

时间:2017-03-28 13:45:58

标签: python-3.x keras conv-neural-network keras-layer

model.copmpile中的'self'是什么我尝试在keras模型中使用python运行代码我收到此错误

  

model.compile(loss =“binary_crossentropy”,optimizer ='adam',metrics = ['accuracy'])   TypeError:compile()缺少1个必需的位置参数:'self'

3 个答案:

答案 0 :(得分:2)

实例化Class然后使用方法...... 它应该是这样的

model().compile()

or 
m = model()
m.compile()

答案 1 :(得分:0)

实际上你需要显示更多代码才能得到合适的答案,但我试一试:

如果要编译模型,至少需要执行以下步骤:

  1. from keras.models import Model
  2. model = Model(inputs=in, outputs=out) - 其中in是输入图层,out是输出图层。
  3. model.compile(loss=someLoss, optimizer=someOpt)

答案 2 :(得分:0)

有一些参数可以用来编译模型,例如:

如果您定义了Sequential模型,则可以直接调用compile

model.compile(optimizer=..., loss=..., metrics=...)

否则,您需要使用Keras Functional API建立模型并使用上面的代码来编译模型。

# input is the input layer and output is the output layer.
model = Model(inputs=input, outputs=output)