【发布时间】:2020-06-02 11:57:45
【问题描述】:
创建此模型后,出现“不支持的可调用”错误。
CATEGORICAL_COLUMNS = ['sex', 'n_siblings_spouses', 'parch', 'class', 'deck', 'embark_town', 'alone']
NUMERIC_COLUMNS = ['age', 'fare']
feature_columns = []
for feature_name in CATEGORICAL_COLUMNS:
vocabulary = dftrain[feature_name].unique()
feature_columns.append(tf.feature_column.categorical_column_with_vocabulary_list(feature_name, vocabulary))
for feature_name in NUMERIC_COLUMNS:
feature_columns.append(tf.feature_column.numeric_column(feature_name, dtype = tf.float32))
print(feature_columns)`enter code here`
def make_input_fn(data_df, label_df, num_epochs=10, shuffle=True, batch_size=32):
def input_function():
ds=tf.data.Dataset.from_tensor_slices((dict(data_df), label_df))
if shuffle:
ds=ds.shuffle(1000)
ds=ds.batch(batch_size).repeat(num_epochs)
return ds
return input_function()
train_input_fn = make_input_fn(dftrain, y_train)
eval_input_fn = make_input_fn(dfeval, y_eval, num_epochs=1, shuffle=False)
linear_est = tf.estimator.LinearClassifier(feature_columns=feature_columns)
linear_est.train(train_input_fn) # train
result = linear_est.evaluate(eval_input_fn) # get model metrics/stats by testing on tetsing data
clear_output() # clears consoke output
print(result['accuracy']) # the result variable is simply a dict of stats about our model
错误:
TypeError: 不支持的可调用对象
【问题讨论】:
标签: python tensorflow machine-learning deep-learning jupyter-notebook