2016-09-25 15 views
4

の予測を呼び出す:KeyError例外私は2つの機能を備えたLinearRegressorを訓練している訓練されたモデル

def train_input_fn(): 
    x = [1,2,3,4] 
    y = [2,3,4,5] 
    feature_cols = tf.constant(x) 
    labels = tf.constant(y) 
    return feature_cols, labels  

x = tf.contrib.layers.real_valued_column("x") 
y = tf.contrib.layers.real_valued_column("y")  
m = tf.contrib.learn.LinearRegressor(feature_columns=[ x,y], 
             model_dir=model_dir) 
m.fit(input_fn=train_input_fn, steps=100) 

訓練の後、私は二つの新しい値

new_sample = np.array([20,20]) 
m.predict(new_sample) 
から予測したいリットル:X、Yとラベルを私はキーヤーを取得し、なぜ誰もが知ってい

File "/usr/local/lib/python2.7/dist-packages/tensorflow/contrib/layers/python/layers/feature_column.py", line 870, in insert_transformed_feature 
input_tensor = columns_to_tensors[self.name] 
KeyError: 'x' 

を予測呼び出すとき

は、私は、このエラーメッセージが表示されますror?

+0

こんにちはニクラス、?私はあなたのような同じエラーがあります。そして、pred = self.model.predict_proba(input_fn = lambda:self.input_fn(data))、それは動作します。しかし、私が入力としてXを使用すると、動作しませんでした。 – user48135

+0

こんにちは@ user48135私は以下の受け入れられた答えでそれを解決しました – Niclas

答えて

1

はこれを試してください:あなたは、この問題を解決する方法

my_feature_columns = [tf.contrib.layers.real_valued_column("", dimension=2)] 
m = tf.contrib.learn.LinearRegressor(feature_columns=my_feature_columns, 
            model_dir=model_dir) 
m.fit(input_fn=train_input_fn, steps=100) 
0

私はTensorflowの専門家ではないですが、これは私の作品:

new_sample = np.array([20,20],dtype='float32') 
empty_y = np.zeros(len(new_sample),dtype='float32') 
prediction_x = tf.contrib.learn.io.numpy_input_fn({"x":new_sample},empty_y, batch_size=45, num_epochs=100) 
forecast = list(estimator.predict(input_fn=prediction_x,as_iterable=False)) 
関連する問題