keras中vgg遇到的坑(错误)

第一:如果包的错误和下面的错误是类似的,报这种类型的错误:因为Keras调用的后端深度学习的框架一般是theano或者TensorFlow,但是theano输入的tensor是(batch_size,channal,w,h),而TensorFlow的tensor是(batch_size,w,h,channal),如果用反了,就会报错

ensorflow.python.framework.errors_impl.InvalidArgumentError: Negative dimension size caused by subtracting 2 from 1 for 'max_pooling2d_2/MaxPool' (op: 'MaxPool') with input shapes: [?,1,128,128].

解决办法是调整我们的后台,只需要这两句就可以轻松解决

from keras import backend as K
K.set_image_dim_ordering('th')

第二:如果报错的代码和下面类似,那么主要是在我们在加载已经训练好的权重是,没有加上by_name=Ture

ValueError: You are trying to load a weight file containing 0 layers into a model with 16 layers.

    if weights_path:
        model.load_weights(weights_path,by_name=True)

猜你喜欢

转载自blog.csdn.net/sunshunli/article/details/81437675
今日推荐