为什么keras层初始化不起作用

问题描述 投票:1回答:2

当我运行我的小keras模式,我得到这个错误

FailedPreconditionError:试图使用未初始化值BN6 /测试[[{{节点BN6 /β/读}} = IdentityT = DT_FLOAT,_device = “/作业:本地主机/复制:0 /任务:0 /装置:CPU:0”] ]

full traceback error

码:

"input layer"
command_input = keras.layers.Input(shape=(1,1))
image_measurements_features = keras.layers.Input(shape=(1, 640))
"command module"
command_module_layer1=keras.layers.Dense(128,activation='relu')(command_input)
command_module_layer2=keras.layers.Dense(128,activation='relu')(command_module_layer1)
"concatenation layer"
j=keras.layers.concatenate([command_module_layer2,image_measurements_features])
"desicion module"
desicion_module_layer1=keras.layers.Dense(512,activation='relu')(j)
desicion_module_layer2=keras.layers.Dense(256,activation='relu')(desicion_module_layer1)
desicion_module_layer3=keras.layers.Dense(128,activation='relu')(desicion_module_layer2)
desicion_module_layer4=keras.layers.Dense(3,activation='relu')(desicion_module_layer3)
initt = tf.global_variables_initializer()
with tf.Session() as sess:
    sess.run(initt)
big_hero_4=keras.models.Model(inputs=[command_input, image_measurements_features], outputs=desicion_module_layer4)
big_hero_4.compile(optimizer='adam',loss='mean_squared_error',metrics=['accuracy'])
"train the model"
historyy=big_hero_4.fit([x, y],z,batch_size=None, epochs=1,steps_per_epoch=1000)

你对这个错误的任何溶液?为什么keras不会不使用全局变量初始化自动初始化层(前,加入全球初始化后存在误差)

tensorflow keras deep-learning
2个回答
0
投票

你初始化你的模型,然后进行并编译它。这是错误的顺序,先定义你的模型,编译它,然后初始化。相同的代码,只是顺序不同


0
投票

我得到这个工作。使用keras时忘了会话,它只是复杂的事情。

import keras
import tensorflow as tf
import numpy as np

command_input = keras.layers.Input(shape=(1,1))
image_measurements_features = keras.layers.Input(shape=(1, 640))

command_module_layer1 = keras.layers.Dense(128 ,activation='relu')(command_input)
command_module_layer2 = keras.layers.Dense(128 ,activation='relu')(command_module_layer1)

j = keras.layers.concatenate([command_module_layer2, image_measurements_features])

desicion_module_layer1 = keras.layers.Dense(512,activation='relu')(j)
desicion_module_layer2 = keras.layers.Dense(256,activation='relu')(desicion_module_layer1)
desicion_module_layer3 = keras.layers.Dense(128,activation='relu')(desicion_module_layer2)
desicion_module_layer4 = keras.layers.Dense(3,activation='relu')(desicion_module_layer3)

big_hero_4 = keras.models.Model(inputs=[command_input, image_measurements_features], outputs=desicion_module_layer4)
big_hero_4.compile(optimizer='adam',loss='mean_squared_error',metrics=['accuracy'])

# Mock data
x = np.zeros((1, 1, 1))
y = np.zeros((1, 1, 640))
z = np.zeros((1, 1, 3))

historyy=big_hero_4.fit([x, y], z, batch_size=None, epochs=1,steps_per_epoch=1000)

此代码应该启动没有问题的培训。如果你仍然有同样的错误可能是由于你的代码的其他部分,如果有更多的。

© www.soinside.com 2019 - 2024. All rights reserved.