Я работаю над файлом task.py для отправки задания gcloud MLEngine. Ранее я успешно использовал tenorflow.estimator.DNNClassifier для отправки заданий с моими данными (которые состоят исключительно из 8 столбцов последовательных числовых данных для цен и объема криптовалюты; без категориальных значений).
Теперь я переключился на RNNClassifier для оценки тензорного потока. Это мой текущий код для соответствующей части:
def get_feature_columns():
return [
tf.feature_column.numeric_column(feature, shape=(1,))
for feature in column_names[:len(column_names)-1]
]
def build_estimator(config, learning_rate, num_units):
return tf.contrib.estimator.RNNClassifier(
sequence_feature_columns=get_feature_columns(),
num_units=num_units,
cell_type='lstm',
rnn_cell_fn=None,
optimizer=tf.train.AdamOptimizer(learning_rate=learning_rate),
config=config)
estimator = build_estimator(
config=run_config,
learning_rate=args.learning_rate,
num_units=[32, 16])
tf.estimator.train_and_evaluate(estimator, train_spec, eval_spec)
Однако я получаю следующую ошибку ValueError:
ValueError: All feature_columns must be of type _SequenceDenseColumn. You can wrap a sequence_categorical_column with an embedding_column or indicator_column. Given (type <class 'tensorflow.python.feature_column.feature_column_v2.NumericColumn'>): NumericColumn(key='LTCUSD_close', shape=(1,), default_value=None, dtype=tf.float32, normalizer_fn=None)
Я не понимаю этого, поскольку данные не категоричны.