我试图执行一些教程转移学习项目。 但是我有属性错误。
我检查了我的tensorflow和keras版本。
tensorflow:1.14.0 喀拉斯邦:2.2.5
和python 3.6.9版本。
代码在这里。
.card-header
错误消息在这里。
if(K.image_dim_ordering() == 'th'):
input_tensor = Input(shape=(3, 299, 299))
答案 0 :(得分:2)
keras.backend.common
模块具有image_dim_ordering()
if(K.common.image_dim_ordering() == 'th'):
input_tensor = Input(shape=(3, 299, 299))
答案 1 :(得分:1)
谁对我有同样问题的自我解答。 从Keras 2.x将image_dim_ordering更改为image_data_format。 由于将image_dim_ordering更改为image_data_format。
参考链接
答案 2 :(得分:1)
您可以使用以下方法将格式更改为channels_firs:
keras.backend.set_image_data_format('channels_first')
use this to check your format:
keras.backend.image_data_format()
答案 3 :(得分:1)
将image_dim_ordering
替换为image_data_format
if(K.image_dim_ordering() == 'th'):
input_tensor = Input(shape=(3, 299, 299))
将以上代码更改为
if K.image_data_format() == 'th':
input_tensor = Input(shape=(3, 299, 299))
答案 4 :(得分:0)
它指定Keras将遵循的尺寸标注惯例。要确认您的keras在使用什么,请在以下位置检查您的Keras配置文件:
〜/ .keras / keras.json
在文件中,如果内容是
{
"floatx": "float32",
"epsilon": 1e-07,
"backend": "tensorflow",
"image_data_format": "channels_last"
}
然后更改
if K.image_data_format() == 'channels_last':
input_tensor = Input(shape=(3, 299, 299))
如果文件内容是
{
"image_dim_ordering": "tf",
"epsilon": 1e-07,
"floatx": "float32",
"backend": "tensorflow"
}
然后更改
if(K.image_dim_ordering() == 'th'):
input_tensor = Input(shape=(3, 299, 299))