Raj*_*yal 5 python neural-network python-3.x keras keras-layer
我一直在尝试合并以下顺序模型,但未能做到。有人可以指出我的错误,谢谢。
使用“合并”时代码会编译,但会出现以下错误“ TypeError:'模块'对象不可调用”,但是使用“合并”时甚至不会编译
我正在使用keras版本2.2.0和python 3.6
from keras.layers import merge
def linear_model_combined(optimizer='Adadelta'):
modela = Sequential()
modela.add(Flatten(input_shape=(100, 34)))
modela.add(Dense(1024))
modela.add(Activation('relu'))
modela.add(Dense(512))
modelb = Sequential()
modelb.add(Flatten(input_shape=(100, 34)))
modelb.add(Dense(1024))
modelb.add(Activation('relu'))
modelb.add(Dense(512))
model_combined = Sequential()
model_combined.add(Merge([modela, modelb], mode='concat'))
model_combined.add(Activation('relu'))
model_combined.add(Dense(256))
model_combined.add(Activation('relu'))
model_combined.add(Dense(4))
model_combined.add(Activation('softmax'))
model_combined.compile(loss='categorical_crossentropy', optimizer=optimizer, metrics=['accuracy'])
return model_combined
Run Code Online (Sandbox Code Playgroud)
合并不能与顺序模型一起使用。在顺序模型中,图层只能有一个输入和一个输出。您必须使用类似这样的功能性API。我假设您对modela和modelb使用相同的输入层,但如果不是这样,则可以创建另一个Input()并将它们都作为模型的输入。
def linear_model_combined(optimizer='Adadelta'):
# declare input
inlayer =Input(shape=(100, 34))
flatten = Flatten()(inlayer)
modela = Dense(1024)(flatten)
modela = Activation('relu')(modela)
modela = Dense(512)(modela)
modelb = Dense(1024)(flatten)
modelb = Activation('relu')(modelb)
modelb = Dense(512)(modelb)
model_concat = concatenate([modela, modelb])
model_concat = Activation('relu')(model_concat)
model_concat = Dense(256)(model_concat)
model_concat = Activation('relu')(model_concat)
model_concat = Dense(4)(model_concat)
model_concat = Activation('softmax')(model_concat)
model_combined = Model(inputs=inlayer,outputs=model_concat)
model_combined.compile(loss='categorical_crossentropy', optimizer=optimizer, metrics=['accuracy'])
return model_combined
Run Code Online (Sandbox Code Playgroud)
keras.layers.merge 层已弃用。使用keras.layers.Concatenate(axis=-1)这里提到的:https : //keras.io/layers/merge/#concatenate
| 归档时间: |
|
| 查看次数: |
16917 次 |
| 最近记录: |