import tensorflow as tf
import os
import numpy as np
import resnet_model
path = "F:\cifar-10-batches-py"
from tensorflow.python.keras.datasets.cifar import load_batch
fpath = os.path.join(path, 'train')
x_train, y_train = load_batch(fpath, label_key='fine' + '_labels')
fpath = os.path.join(path, 'test')
x_test, y_test = load_batch(fpath, label_key='fine' + '_labels')
x_train = tf.transpose(x_train,[0,2,3,1])
y_train = np.float32(tf.keras.utils.to_categorical(y_train,num_classes=100))
x_test = tf.transpose(x_test,[0,2,3,1])
y_test = np.float32(tf.keras.utils.to_categorical(y_test,num_classes=100))
batch_size = 48
train_data = tf.data.Dataset.from_tensor_slices((x_train,y_train)).shuffle(batch_size*10).batch(batch_size).repeat(3)
model = resnet_model.resnet_Model()
model.compile(optimizer=tf.optimizers.Adam(1e-2), loss=tf.losses.categorical_crossentropy,metrics = ['accuracy'])
model.fit(train_data, epochs=10)
score = model.evaluate(x_test, y_test)
print("last score:",score)
出现如下报错:
File "F:\pythonProject19\main.py", line 6, in
from tensorflow.python.keras.datasets.cifar import load_batch
ModuleNotFoundError: No module named 'tensorflow.python.keras.datasets'
本人的tensorflow版本为2.2.0,有人知道为什么会出现这种情况吗?
你用的python什么版本的
在命令窗口激活对应虚拟环境:activate tensorflow_env
安装包:pip install tensorflow_datasets
安装完成后提示错误:ImportError: This version of TensorFlow Datasets requires TensorFlow version >=1.13.0; Detected an installation of version 1.5.0. Please upgrade TensorFlow toproceed.
这是提示我们升级Tensorflow,升级命令:pip install -upgrade tensorflow
一般情况下这时导入会出现numpy与tensorflow不兼容的情况,只需要将numpy 卸载再安装一个低于1.17的版本即可。
此时再运行代码,出现下图,这不是错误,详细请查看官方文档:https://tensorflow.google.cn/datasets/overview
亲测,问题解决。