值错误:无值使用model.fit_generator()

时间:2019-11-14 13:02:54

标签: python tensorflow keras

Traceback (most recent call last):
  File "/home/prathyush/Video-classifier-keras-master/demo/crime_vgg16_lstm_hi_dim_train.py", line 37, in <module>
    main()
  File "/home/prathyush/Video-classifier-keras-master/demo/crime_vgg16_lstm_hi_dim_train.py", line 30, in main
    history = classifier.fit(data_dir_path=input_dir_path, model_dir_path=output_dir_path, vgg16_include_top=False, data_set_name=data_set_name, test_size=0.15)
  File "/home/prathyush/Video-classifier-keras-master/demo/../keras_video_classifier/library/recurrent_networks.py", line 500, in fit
    callbacks=[checkpoint])
  File "/home/prathyush/anaconda3/envs/tf_gpu/lib/python3.7/site-packages/keras/legacy/interfaces.py", line 91, in wrapper
    return func(*args, **kwargs)
  File "/home/prathyush/anaconda3/envs/tf_gpu/lib/python3.7/site-packages/keras/engine/training.py", line 1732, in fit_generator
    initial_epoch=initial_epoch)
  File "/home/prathyush/anaconda3/envs/tf_gpu/lib/python3.7/site-packages/keras/engine/training_generator.py", line 42, in fit_generator
    model._make_train_function()
  File "/home/prathyush/anaconda3/envs/tf_gpu/lib/python3.7/site-packages/keras/engine/training.py", line 316, in _make_train_function
    loss=self.total_loss)
  File "/home/prathyush/anaconda3/envs/tf_gpu/lib/python3.7/site-packages/keras/legacy/interfaces.py", line 91, in wrapper
    return func(*args, **kwargs)
  File "/home/prathyush/anaconda3/envs/tf_gpu/lib/python3.7/site-packages/keras/optimizers.py", line 276, in get_updates
    new_p = p - lr * g / (K.sqrt(new_a) + self.epsilon)
  File "/home/prathyush/anaconda3/envs/tf_gpu/lib/python3.7/site-packages/tensorflow/python/ops/math_ops.py", line 815, in binary_op_wrapper
    y = ops.convert_to_tensor(y, dtype=x.dtype.base_dtype, name="y")
  File "/home/prathyush/anaconda3/envs/tf_gpu/lib/python3.7/site-packages/tensorflow/python/framework/ops.py", line 1039, in convert_to_tensor
    return convert_to_tensor_v2(value, dtype, preferred_dtype, name)
  File "/home/prathyush/anaconda3/envs/tf_gpu/lib/python3.7/site-packages/tensorflow/python/framework/ops.py", line 1097, in convert_to_tensor_v2
    as_ref=False)
  File "/home/prathyush/anaconda3/envs/tf_gpu/lib/python3.7/site-packages/tensorflow/python/framework/ops.py", line 1175, in internal_convert_to_tensor
    ret = conversion_func(value, dtype=dtype, name=name, as_ref=as_ref)
  File "/home/prathyush/anaconda3/envs/tf_gpu/lib/python3.7/site-packages/tensorflow/python/framework/constant_op.py", line 304, in _constant_tensor_conversion_function
    return constant(v, dtype=dtype, name=name)
  File "/home/prathyush/anaconda3/envs/tf_gpu/lib/python3.7/site-packages/tensorflow/python/framework/constant_op.py", line 245, in constant
    allow_broadcast=True)
  File "/home/prathyush/anaconda3/envs/tf_gpu/lib/python3.7/site-packages/tensorflow/python/framework/constant_op.py", line 283, in _constant_impl
    allow_broadcast=allow_broadcast))
  File "/home/prathyush/anaconda3/envs/tf_gpu/lib/python3.7/site-packages/tensorflow/python/framework/tensor_util.py", line 454, in make_tensor_proto
    raise ValueError("None values not supported.")
ValueError: None values not supported.

我正在使用Tensorflow作为后端,并使用具有4个内核的Tesla K80 GPU

可能是什么问题?我正在从VGG16 CNN中提取功能并将这些功能另存为.npy文件。

import cv2
import os
import numpy as np
from keras.applications.vgg16 import VGG16, preprocess_input
from keras.preprocessing.image import img_to_array
from keras.optimizers import SGD
from keras.models import Model
from keras.utils import multi_gpu_model
from keras.optimizers import SGD,RMSprop,Adam

base_model = VGG16(weights='imagenet')
model = Model(inputs=base_model.input,outputs=base_model.get_layer('block4_pool').output)
adam=Adam(lr=0.001, beta_1=0.9, beta_2=0.999, epsilon=None, decay=0.0, amsgrad=False)
model.compile(optimizer=adam, loss='categorical_crossentropy', metrics=['accuracy'])
model = multi_gpu_model(model)


checkpoint = ModelCheckpoint(filepath=weight_file_path, save_best_only=True)
        history = model.fit_generator(generator=train_gen, steps_per_epoch=train_num_batches,
                                      epochs=NUM_EPOCHS,
                                      verbose=1, validation_data=test_gen, validation_steps=test_num_batches,
                                      callbacks=[checkpoint])

上面是代码存储库中的代码段。

0 个答案:

没有答案