Код работает нормально, пока я не попытаюсь реализовать тензорную доску. Как только я добавляю обратный вызов в мой model.fit
, я получаю следующую ошибку:
FailedPreconditionError: Попытка использовать неинициализированное значение
обучение_23 / Адам / Переменная_7 [[Узел: обучение_23 / Адам / Переменная_7 / чтение
= IdentityT = DT_FLOAT, _class = ["loc: @ training_23 / Adam / Assign_10"], _device = "/ job: localhost / replica: 0 / task: 0 / device: CPU: 0"]]
Я пытался добавить к tf.global_variables_initializer()
безрезультатно. Я не знаю, чего не хватает. Ниже мой код:
from keras.models import Sequential
from keras.layers import Dense, Dropout
import numpy
from tensorflow.keras.callbacks import TensorBoard
import tensorflow as tf
#random seed for reproducibility
numpy.random.seed(6)
NAME = "Test"
tensorboard = TensorBoard(log_dir="logs/{}".format(NAME))
# loading load prima indians diabetes dataset, past 5 years of medical
history
dataset = numpy.loadtxt("vmlb3.csv", delimiter=",")
test1 = numpy.loadtxt("mpredict.csv", delimiter=",")
# split into input (X) and output (Y) variables, splitting csv data
X = dataset[:,0:4]
Y = dataset[:,4]
# create model, add dense layers one by one specifying activation function
model = Sequential()
model.add(Dense(20, input_dim=4, activation='relu')) # input layer requires
input_dim param
model.add(Dense(10, activation='relu'))
model.add(Dense(1, activation='sigmoid')) # sigmoid instead of relu for
final probability between 0 and 1
# compile the model, adam gradient descent (optimized)
model.compile(loss="binary_crossentropy", optimizer="adam", metrics=
['accuracy'])
# call the function to fit to the data (training the network)
model.fit(X, Y, epochs = 1, batch_size=20, validation_split = 0.3,
**callbacks=[tensorboard]**)
# save the model
#model.save('weights.h5')