TensorFlow - Столбец объектов - AttributeError: объект не имеет атрибута «длина» - PullRequest
0 голосов
/ 26 декабря 2018

Я пытаюсь добавить индексы слов в функциональные столбцы пользовательского оценщика.Вот что у меня есть:

Функция модели:

def model_function(features, labels, mode, params):    
    word_categorical_column = tf.feature_column.categorical_column_with_identity(key="word_column", num_buckets=10000)
    feature_columns = [tf.contrib.layers.embedding_column(word_categorical_column, 64)]
    input = tf.feature_column.input_layer(features, feature_columns )
    ...

Оценщик:

estimator = tf.estimator.Estimator(
    model_fn=model_function,
    model_dir = model_directory,
    params={
        'n_classes': 5,
    })

Функция ввода:

def input_fntn(train_x, train_y, batch_size):
    dataset = tf.data.Dataset.from_tensor_slices(({"word_column":train_x}, train_y))
    dataset = dataset.shuffle(1000).repeat().batch(batch_size)
    return dataset

train_x isмассив numpy [n_samples, n_features], содержащий индексы дополненных слов.

Запуск метода обучения:

estimator.train(
    input_fn=lambda:input_fntn(train_x, train_y, 128),
    steps=100)

выдает ошибку: AttributeError: '_IdentityCategoricalColumn' объект не имеет атрибута 'length'

Я попытался использовать взамен categoryorical_column_with_vocabulary_list, но это приводит к той же ошибке.Я думаю, что делаю основную ошибку.Любая помощь будет оценена.

...