Python 使用keras训练模型时的类型错误和值错误

Python 使用keras训练模型时的类型错误和值错误,python,tensorflow,keras,deep-learning,conv-neural-network,Python,Tensorflow,Keras,Deep Learning,Conv Neural Network,我正在用keras训练一个卷积模型。我遇到了两个以前从未遇到过的错误,我无法在网上找到解决方法。以下是整个错误回溯输出: 警告:在标记解析转到stderr之前进行日志记录。 W0617 03:18:36.916876 13992803610464弃用_wrapper.py:119]来自 /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_-backend.py:74: 名称tf.get_default_graph已弃用。

我正在用keras训练一个卷积模型。我遇到了两个以前从未遇到过的错误,我无法在网上找到解决方法。以下是整个错误回溯输出:

警告:在标记解析转到stderr之前进行日志记录。 W0617 03:18:36.916876 13992803610464弃用_wrapper.py:119]来自 /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_-backend.py:74: 名称tf.get_default_graph已弃用。请使用 tf.compat.v1.改为获取默认图形

W0617 03:18:36.956070 139928036104064 deprecation_wrapper.py:119] From
/usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_-backend.py:517: 名称tf.placeholder已弃用。请使用 改为tf.compat.v1.placeholder

W0617 03:18:36.965062 139928036104064 deprecation_wrapper.py:119] From
W0617 03:18:40.366632 139928036104064 deprecation.py:323] From /usr/local/lib/python3.6/dist-packages/tensorflow/python/ops/math_grad.py:1250:
/usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_-backend.py:4185: 已弃用名称tf.truncated_normal。请使用 改为tf.random.u normal

W0617 03:18:37.005445 139928036104064 deprecation_wrapper.py:119] From
/usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_-backend.py:174: 名称tf.get\u default\u session已弃用。请使用 tf.compat.v1.改为获取默认会话

W0617 03:18:37.006534 139928036104064 deprecation_wrapper.py:119] From
/usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_-backend.py:181: 已弃用名称tf.ConfigProto。请使用 改为tf.compat.v1.ConfigProto

W0617 03:18:39.945574 139928036104064 deprecation_wrapper.py:119] From
/usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_-backend.py:1834: 名称tf.nn.fused_batch_norm已弃用。请使用 tf.compat.v1.nn.fused_batch_norm代替

/usr/local/lib/python3.6/dist-packages/ipykernel_launcher.py:19: UserWarning: Update your `Model` call to the Keras 2 API:
模型(输入=张量(“in…”,输出=张量(“ac…”)
W0617 03:18:40.237022 13992803610464弃用_wrapper.py:119]来自/usr/local/lib/python3.6/dist-packages/keras/optimizers.py:790: 名称tf.train.Optimizer已弃用。请使用 改为tf.compat.v1.train.Optimizer

W0617 03:18:36.965062 139928036104064 deprecation_wrapper.py:119] From
W0617 03:18:40.366632 139928036104064 deprecation.py:323] From /usr/local/lib/python3.6/dist-packages/tensorflow/python/ops/math_grad.py:1250:
添加\u调度\u支持..包装器(从 tensorflow.python.ops.array_ops)已弃用,将在中删除 未来版本。 更新说明: 在2.0中使用tf.where,它与np.where具有相同的广播规则 _________________________________________________________________ 图层(类型)输出形状参数#
================================================================= 输入1(输入层)(无、28、28、1)0
_________________________________________________________________ conv2d_1(conv2d)(无、28、28、36)180
_________________________________________________________________ 批次标准化(批次(无、28、28、36)144
_________________________________________________________________ 激活1(激活)(无、28、28、36)0
_________________________________________________________________ conv2d_2(conv2d)(无、28、28、18)2610
_________________________________________________________________ 批次(无、28、28、18)72
_________________________________________________________________ 激活2(激活)(无,28,28,18)0
_________________________________________________________________ conv2d_3(conv2d)(无、28、28、9)657
_________________________________________________________________ 批次标准化(批次(无、28、28、9)36
_________________________________________________________________ 激活3(激活)(无,28,28,9)0
_________________________________________________________________ 展平1(展平)(无,7056)0
_________________________________________________________________ 密集型(密集型)(无,345)2434665
_________________________________________________________________ 激活4(激活)(无,345)0
================================================================= 总参数:2438364 可培训参数:2438238 不可培训参数:126 _________________________________________________________________ 培训3450000个样本,验证345000个样本 纪元1/100 --------------------------------------------------------------------------- TypeError回溯(最近一次调用上次) /usr/local/lib/python3.6/dist-packages/tables/array.py ingetitem(self,key) 660#首先,尝试常规选择 -->661 START、stopl、stepl、shape=self.\u解释\u索引(键) 662 arr=自读片(惊跳、停止、步进、形状)

1421951、3421223、2238167、2940723、1437219、1839514、2746665、, 3359532、3268348]

During handling of the above exception, another exception occurred:

ValueError                                Traceback (most recent call last)
/usr/local/lib/python3.6/dist-packages/tables/leaf.py in _point_selection(self, key)
    579             # handle negative indices
    580             idx = coords < 0
--> 581             coords[idx] = (coords + self.shape)[idx]
    582 
    583             # bounds check

ValueError: operands could not be broadcast together with shapes (20,) (4,)

将此添加到代码的开头指定TensorFlow版本,因为colab中的默认版本现在是TensorFlow V2.0

%tensorflow_版本1.x

导入tensorflow作为tf


打印(tf.版本

将此添加到代码的开头指定TensorFlow版本,因为colab中的默认版本现在是TensorFlow V2.0

%tensorflow_版本1.x

导入tensorflow作为tf


打印(tf.版本

您是否尝试在train_X中打印无效索引的图像?@meowongac打印这些图像是什么意思?显示每个图像?@meowongac我显示了这些图像,它们很好。看起来兼容性问题,因为有很多不推荐使用的错误。我想您正在使用TF 2.0和不推荐使用的函数。我还没有使用2.0o我不确定。@阿纳金,但如果我创建了一个形状和尺寸相同的随机numpy数组,那么同一个模型也可以工作。您是否尝试在train_X?@meowongac中绘制无效索引的图像?绘制它们是什么意思?显示每个图像?@m