python - ImportError:无法导入名称“MasterServer”
问题描述
我正在尝试使 mnist 示例正常工作,但出现下一个错误
我试图 pip install tensorflow-gpu==2.3.0 但这并没有解决问题
import matplotlib.pyplot as plt
mnist = tf.keras.datasets.mnist # 28*28
(x_train, y_train), (x_test, y_test) = mnist.load_data()
x_train = tf.keras.utils.normalize(x_train, axis=1)
x_test = tf.keras.utils.normalize(x_test, axis=1)
model = tf.keras.models.Sequential()
model.add(tf.keras.layers.Flatten(input_shape=(28,28)))
model.add(tf.keras.layers.Dense(128, activation=tf.nn.relu))
model.add(tf.keras.layers.Dense(128, activation=tf.nn.relu))
model.add(tf.keras.layers.Dense(10, activation=tf.nn.softmax))
model.compile(optimizer='adam',
loss='sparse_categorical_crossentropy',
metrics=['accuracy'])
model.fit(x_train, y_train, epochs=3)
我得到的错误
Traceback (most recent call last):
File "C:/TI-software/AAI/Herkansing/Testmnist.py", line 1, in <module>
import tensorflow as tf
File "C:\Users\Bryan\AppData\Roaming\Python\Python38\site-packages\tensorflow\__init__.py", line 41, in <module>
from tensorflow.python.tools import module_util as _module_util
File "C:\Users\Bryan\AppData\Roaming\Python\Python38\site-packages\tensorflow\python\__init__.py", line 45, in <module>
from tensorflow.python import data
File "C:\Users\Bryan\AppData\Roaming\Python\Python38\site-packages\tensorflow\python\data\__init__.py", line 25, in <module>
from tensorflow.python.data import experimental
File "C:\Users\Bryan\AppData\Roaming\Python\Python38\site-packages\tensorflow\python\data\experimental\__init__.py", line 96, in <module>
from tensorflow.python.data.experimental import service
File "C:\Users\Bryan\AppData\Roaming\Python\Python38\site-packages\tensorflow\python\data\experimental\service\__init__.py", line 22, in <module>
from tensorflow.python.data.experimental.service.server_lib import MasterServer
ImportError: cannot import name 'MasterServer' from 'tensorflow.python.data.experimental.service.server_lib'```
解决方案
您可以卸载旧版本并安装最新版本,它将解决您的大部分问题。我能够在TF 2.3.0
和中执行代码TF 2.4.1
。
import tensorflow as tf
print(tf.__version__)
mnist = tf.keras.datasets.mnist # 28*28
(x_train, y_train), (x_test, y_test) = mnist.load_data()
x_train = tf.keras.utils.normalize(x_train, axis=1)
x_test = tf.keras.utils.normalize(x_test, axis=1)
model = tf.keras.models.Sequential()
model.add(tf.keras.layers.Flatten(input_shape=(28,28)))
model.add(tf.keras.layers.Dense(128, activation=tf.nn.relu))
model.add(tf.keras.layers.Dense(128, activation=tf.nn.relu))
model.add(tf.keras.layers.Dense(10, activation=tf.nn.softmax))
model.compile(optimizer='adam',
loss='sparse_categorical_crossentropy',
metrics=['accuracy'])
model.fit(x_train, y_train, epochs=3)
输出:
2.3.0
Downloading data from https://storage.googleapis.com/tensorflow/tf-keras-datasets/mnist.npz
11493376/11490434 [==============================] - 0s 0us/step
Epoch 1/3
1875/1875 [==============================] - 4s 2ms/step - loss: 0.2597 - accuracy: 0.9251
Epoch 2/3
1875/1875 [==============================] - 3s 2ms/step - loss: 0.1083 - accuracy: 0.9669
Epoch 3/3
1875/1875 [==============================] - 4s 2ms/step - loss: 0.0733 - accuracy: 0.9769
<tensorflow.python.keras.callbacks.History at 0x7f3a6cfe46a0
推荐阅读
- rest - Codeigniter 301 永久移动
- javascript - 如何在按钮单击时水平添加输入框
- c# - 将位图转换为 ImageSource 后资源 png 质量下降
- php - 如果业务逻辑要发送电子邮件
- c# - 使用 VS 2019 生成 SOAP 客户端时如何配置端点?
- c# - 替换字符串语句中的匹配字符串c#
- django - 模板渲染期间出错:__str__ 返回非字符串(NoneType 类型)
- angular - 角度超过最大调用堆栈大小
- python - Python - 从一系列 FreqDist 中获取最新出现的 FreqDist 键
- mamp-pro - MAMP PRO XIP.IO 指向错误的文档根目录