我在多线程环境中工作,将权重传递给函数并在那里重新创建模型。现在,在我的函数中,model.set_weights(model.get_weights())
都不起作用。在
我尝试过使用K.clear_session
并逐层设置权重,但都不起作用。在
我的代码的目的是:
def create_model(parameters=None):
"""Create a model from weights."""
from keras.models import Sequential
from keras.layers import Dense
import keras.backend as K
model = Sequential()
model.add(Dense(12, input_dim=8, init='uniform', activation='relu'))
model.add(Dense(8, init='uniform', activation='relu'))
model.add(Dense(1, init='uniform', activation='sigmoid'))
if parameters:
model.set_weights(parameters)
else:
model.compile(loss='binary_crossentropy', optimizer='RMSProp', metrics=['accuracy'])
return model
不管怎样。。。在
^{2}$…不起作用。在
我在运行程序时遇到错误ValueError: Fetch argument <tf.Variable 'dense_1/kernel:0' shape=(8, 12) dtype=float32_ref> cannot be interpreted as a Tensor. (Tensor Tensor("dense_1/kernel:0", shape=(8, 12), dtype=float32_ref) is not an element of this graph.)
。请记住,这发生在多线程环境中。在
目前没有回答
相关问题 更多 >
编程相关推荐