在TensorFlow中使用广泛和深入的学习网络进行预测

时间:2017-04-19 10:42:09

标签: python tensorflow

我已在我的数据集上培训了一个广泛而深入的学习网络,其中包含属性 - product_id,views,likes,dislikes,shares,user_ratings。 user_ratings被视为目标变量。我能够根据我提供的测试集来评估我的模型。但我无法理解如何生成预测。我已经使用了"预测"方法如下,但我得到的只是[1]:

model.predict(input_fn=lambda : input_fn(df_train[:1]),as_iterable=False)

其中input_fn是:

def input_fn(df):
  continuous_cols = {k: tf.constant(df[k].values) for k in CONTINUOUS_COLUMNS}
  categorical_cols = {
  k: tf.SparseTensor(
      indices=[[i, 0] for i in range(df[k].size)],
      values=df[k].values,
      dense_shape=[df[k].size, 1])
  for k in CATEGORICAL_COLUMNS}
  feature_cols = dict(continuous_cols)
  feature_cols.update(categorical_cols)
  product_name = tf.constant(df[TARGET_COLUMN].values)
  return feature_cols, product_name

另外,在df_train [:1]中,我给出了user_rating值。但是当我尝试删除此列并执行它时,它显示错误。问题是该模型正在研究二进制分类问题,但我想使用10个类别进行用户评级(1到10)。

我怎样才能做到这一点?提前致谢。

1 个答案:

答案 0 :(得分:0)

我通过传递 - >解决了我的问题n_classes =模型的10个参数。