2016-08-05 4 views
3

Я являюсь абсолютным инициатором с AI и тензорным потоком, поэтому, пожалуйста, простите, если это глупый вопрос. Я тренировался сеть tensorflow с помощью сценария на основе этого урока:Формат функции «Tensorflow»

https://www.tensorflow.org/versions/r0.10/tutorials/wide_and_deep/index.html

Я считаю, что обучение было нормально. Теперь я whant запустить этот метод, чтобы сделать прогноз для одного входа:

tf.contrib.learn.DNNClassifier.predict_proba(x=x) 

Но я не могу найти какую-либо документации о том, как построить параметр «х» ... I судимого:

x = {k: tf.SparseTensor(indices=[[0, 0]], values=[d_data[k]], shape=[1, 1]) for k in COLUMNS} 

Где: d_data - словарь, содержащий около 150 пар ключ/значение. COLUMNS - это список со всеми необходимыми ключами. Эта же настройка была использована для обучения сети.

Но получил ошибку:

AttributeError: 'dict' object has no attribute 'dtype' 

Так ... х не должно быть «ДИКТ» ... но что она должна быть тогда? Может ли кто-нибудь дать мне несколько направлений?

Большое спасибо.

ответ

2

Класс BaseEstimator имеет лучшие documentation.

x: Matrix of shape [n_samples, n_features...]. Can be iterator that returns arrays of features. The training input samples for fitting the model. If set, `input_fn` must be `None`. 

Я изучу, что документация здесь исправлена. Спасибо за указание.

0

У меня такая же ошибка, но я думаю, это связано с тем, что мы используем более старый выпуск tensorflow (я нахожусь на 0.8.0), и теперь метод подгонки может принимать различный тип ввода input_fn, который, как я думаю, может принимать форма словаря, см here

def fit(self, x=None, y=None, input_fn=None, steps=None, batch_size=None, 
     monitors=None, max_steps=None): 

в моей текущей версии эта функция не имеет «input_fn», следовательно, почему он является обязательным для ввода тензора матрицы объекта в й.

Удалось ли вам найти решение тем временем?

Смежные вопросы