2017-10-24 3 views
1

Tensorflowには、既に列番号tf.feature_column.crossed_columnを横切ってフィーチャを作成する機能がありますが、それはカテゴリデータ用です。数値データはどうですか?2つの他のtf.feature_columnsを掛けてtf.feature_columnを作成するにはどうすればいいですか?

私は年齢やeducation_num第3および第4の特徴列ベースを作成したい場合たとえば、すでに

age = tf.feature_column.numeric_column("age") 
education_num = tf.feature_column.numeric_column("education_num") 

2列は次のようにあります

my_feature = age * education_num 
my_another_feature = age * age 

どのようにそれを行うことができますか?

答えて

1

カスタム数値列を宣言し、自分のinput functionでデータフレームに追加することができます

# Existing features 
age = tf.feature_column.numeric_column("age") 
education_num = tf.feature_column.numeric_column("education_num") 
# Declare a custom column just like other columns 
my_feature = tf.feature_column.numeric_column("my_feature") 

... 
# Add to the list of features 
feature_columns = { ... age, education_num, my_feature, ... } 

... 
def input_fn(): 
    df_data = pd.read_csv("input.csv") 
    df_data = df_data.dropna(how="any", axis=0) 
    # Manually update the dataframe 
    df_data["my_feature"] = df_data["age"] * df_data["education_num"] 

    return tf.estimator.inputs.pandas_input_fn(x=df_data, 
              y=labels, 
              batch_size=100, 
              num_epochs=10) 

... 
model.train(input_fn=input_fn()) 
+0

ありがとう!また、入力関数の目的についてもっと理解するのに役立ちます。 –

関連する問題