2

時系列予測用のテンソルフロー実装があります。私のデータには外生的な特徴が含まれています。それらを訓練入力に提供し、入力を評価します。予測ステップpredict_continuation_input_fnで、外因性特徴列の KeyError が発生します。これが私のコードの簡略版です:

features = (ex_0, ex_1, ex_2)
reader = tf.contrib.timeseries.CSVReader(
  _DATA_FILE,
  column_names=(tf.contrib.timeseries.TrainEvalFeatures.TIMES, tf.contrib.timeseries.TrainEvalFeatures.VALUES) + features,
  column_dtypes=(tf.int64,tf.float32,tf.float32,tf.float32,tf.float32),
  skip_header_lines=1)

estimator = tf.contrib.timeseries.StructuralEnsembleRegressor(
  periodicities=[20],
  num_features=1,
  exogenous_feature_columns= [tf.contrib.layers.real_valued_column(column_name=f, dimension=1) for f in features])

train_input_fn=tf.contrib.timeseries.RandomWindowInputFn(reader, batch_size=4, window_size=100)
estimator.train(input_fn=train_input_fn, steps=20)

evaluation_input_fn = tf.contrib.timeseries.WholeDatasetInputFn(reader)
evaluation = estimator.evaluate(input_fn=evaluation_input_fn, steps=1)

predict_input_fn = tf.contrib.timeseries.predict_continuation_input_fn(
      evaluation, steps=100)
(predictions,) = tuple(estimator.predict(input_fn=predict_input_fn))

この時点でエラーが発生しますKeyError: 'ex_0'evaluation結果の変数には外因性の特徴が含まれていないため、エラーは明らかです。predict_continuation_input_fnexogenous_features を取得する引数がありますが、評価からその引数に外生データをフィードする方法に関するドキュメントは見つかりませんでした。

これらの機能を予測に提供するにはどうすればよいですか? 私の実装に欠陥はありますか?アドバイスは大歓迎です。

4

1 に答える 1