我在用keras跑深度学习预训练模型的时候发现了这个问题:
ning-models$ python mobilenet.py
/home/eric/anaconda3/lib/python3.6/site-packages/h5py/__init__.py:36: FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type`.
from ._conv import register_converters as _register_converters
Using TensorFlow backend.
Traceback (most recent call last):
File "mobilenet.py", line 667, in <module>
model = MobileNet(include_top=False, weights='imagenet')
File "mobilenet.py", line 390, in MobileNet
include_top=include_top or weights)
T
虽然是个小错误,但是好像很多人会犯,我这里把它记录下来,方便大家,这里python版本>2.0以后会出现这种问题,因为函数已经改变了。
# Determine proper input shape.
input_shape = _obtain_input_shape(input_shape,
default_size=224,
min_size=32,
data_format=K.image_data_format(),
require_flatten=include_top or weights)
像这样把include_top换成require_flatten就行了。