我正在为来自csv的数据构建一个简单的线性回归器。数据包括一些人的体重和身高值。整体学习过程非常简单:
MAX_STEPS = 2000
# ...
features = [tf.contrib.layers.real_valued_column(feature_name) for feature_name in FEATURES_COL]
# ...
linear_regressor = tf.contrib.learn.LinearRegressor(feature_columns=features)
linear_regressor.fit(input_fn=prepare_input, max_steps=MAX_STEPS)
然而,出乎意料的是,回归器构建的模型很糟糕。结果可以用下一张图来说明:
可视化代码(以防万一):
plt.plot(height_and_weight_df_filtered[WEIGHT_COL],
linear_regressor.predict(input_fn=prepare_full_input),
color='blue',
linewidth=3)
以下是 scikit-learn 为 LinearRegression 类提供的相同数据:
lr_updated = linear_model.LinearRegression()
lr_updated.fit(weight_filtered_reshaped, height_filtered)
增加步数没有效果。我会假设我以错误的方式使用来自 TensorFlow 的回归器。