我已在我的数据集上培训了一个广泛而深入的学习网络,其中包含属性 - 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)。
我怎样才能做到这一点?提前致谢。
答案 0 :(得分:0)
我通过传递 - >解决了我的问题n_classes =模型的10个参数。