首页 > 解决方案 > 尝试导入 TensorFlow 数据集时出错

问题描述

我正在关注本教程:https : //www.tensorflow.org/guide/keras 并在尝试使用 tf.data.Dataset 时遇到错误。

import tensorflow as tf
import tensorflow.data
import numpy as np
from tensorflow.keras import layers

model = tf.keras.Sequential([
# Adds a densely-connected layer with 64 units to the model:
layers.Dense(64, activation='relu', input_shape=(32,)),
# Add another:
layers.Dense(64, activation='relu'),
# Add a softmax layer with 10 output units:
layers.Dense(10, activation='softmax')])

model.compile(optimizer=tf.train.AdamOptimizer(0.001),
              loss='categorical_crossentropy',
              metrics=['accuracy'])

# Instantiates a toy dataset instance:
dataset = tf.data.Dataset.from_tensor_slices((data, labels))
dataset = dataset.batch(32)
dataset = dataset.repeat()

# Don't forget to specify `steps_per_epoch` when calling `fit` on a dataset.
model.fit(dataset, epochs=10, steps_per_epoch=30)

我收到此错误:

Colocations handled automatically by placer.
Traceback (most recent call last):
  File "tutorial.py", line 19, in <module>
    dataset = tensorflow.data.Dataset.from_tensor_slices((data, labels))
NameError: name 'data' is not defined

我已经 pip 安装了 Tensorflow 和 Tensorflow-Datasets API。不知道发生了什么,非常感谢任何帮助!

标签: pythontensorflowtensorflow-datasets

解决方案


你忘了定义你的datalabels变量。

正如教程所述:

data = np.random.random((1000, 32))
labels = np.random.random((1000, 10))

推荐阅读