#python #tensorflow #tensorflow-datasets
#python #tensorflow #tensorflow-datasets
Вопрос:
Я следую этому руководству:https://www.tensorflow.org/guide/keras и я получаю ошибку при попытке использовать tf.data.Набор данных.
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, так и API Tensorflow-Datasets. Не уверен, что происходит.
Комментарии:
1. Пожалуйста, проверьте tensorflow.org/guide/datasets узнать об использовании и синтаксисе tf.data. Набор данных
Ответ №1:
Вы забыли определить свои data
и labels
переменные.
Как указано в руководстве:
data = np.random.random((1000, 32))
labels = np.random.random((1000, 10))
Ответ №2:
Здесь data
и labels
не определены.
Вы можете инициализировать data
и labels
, добавив
data = tf.random_uniform([1000, 32])
labels = tf.random_uniform([1000, 10])
перед dataset = tf.data.Dataset.from_tensor_slices((data, labels))
Комментарии:
1. Вы в основном скопировали мой ответ ниже. Каков ваш точный вклад в проблему OP?
2. Я использовал tensorflow вместо numpy.