2017-05-05 1 views
0

私はTensorflowを使い始めました。m.fit(input_fn=lambda: self.input_fn(train_data), steps=train_steps)を呼び出すと、次のエラーが表示されます。私はfit()に渡す機能のカラムでTensorflow:ValueError:期待される非整数、<dtype: 'int32'>

File "/Library/Python/2.7/site-packages/tensorflow/contrib/layers/python/layers/feature_column_ops.py", line 161, in _input_from_feature_columns 
    transformed_tensor = transformer.transform(column) 
File "/Library/Python/2.7/site-packages/tensorflow/contrib/layers/python/layers/feature_column_ops.py", line 882, in transform 
    feature_column.insert_transformed_feature(self._columns_to_tensors) 
File "/Library/Python/2.7/site-packages/tensorflow/contrib/layers/python/layers/feature_column.py", line 991, in insert_transformed_feature 
    self.sparse_id_column.insert_transformed_feature(columns_to_tensors) 
File "/Library/Python/2.7/site-packages/tensorflow/contrib/layers/python/layers/feature_column.py", line 572, in insert_transformed_feature 
    name="lookup") 
File "/Library/Python/2.7/site-packages/tensorflow/contrib/lookup/lookup_ops.py", line 1018, in index_table_from_tensor 
    "integer" if dtype.is_integer else "non-integer", keys.dtype)) 
ValueError: Expected non-integer, got <dtype: 'int32'>. 

、それは、そこになければならないだけint32int64ですが、それは問題ではないでしょうか?

+0

あなたはコードのサンプルを提供することができますか? – Wontonimo

答えて

1

tf.SparseTensorのカテゴリ機能を使用することができますが、機能の列にはint32が含まれている可能性があります。この場合

ちょうどこのよう例えば、文字列にあなたの整数の列を変換します。

# using Pandas 
for f in categorical_features: 
    df_train[f] = df_train[f].astype(str) 
    df_test[f] = df_test[f].astype(str) 
+0

それはそれでした。ありがとう! –

関連する問題