我目前正在尝试进入机器学习和神经网络,但目前我缺乏编程技能对我有什么影响。我正在关注一个在线教程,其中编写了这些代码行来评估创建的模型:
pred_fn = tf.estimator.inputs.pandas_input_fn(x=X_test,batch_size=len(X_test),shuffle=False)
predictions = list(model.predict(input_fn=pred_fn))
predictions[0]
final_preds = []
for pred in predictions:
final_preds.append(pred['class_ids'][0])
final_preds[:10]
from sklearn.metrics import classification_report
print(classification_report(y_test,final_preds))
这对我很有用,告诉我从X_test
选择的这10个输入中获得的精确度。不幸的是,我无法弄清楚如何能够预测X_test
中的特定单值,或者甚至可能是与X_test
元素具有相同维度的手动输入值。
X_test
是pandas.core.frame.DataFrame
,包含15列和数千行。因此,我会发现预测或评估某个值是有帮助的。
如果我错过了我应该包含的任何重要信息,请告诉我。提前谢谢!
答案 0 :(得分:0)
为什么不直接使用X_test数据帧的某些部分,或者将单个值作为带有单行的数据帧传递。
划分数据框:
params[:user] #=> Hash {name: foo, id: 10}
params[:user][:name] #=> will return 10
params[:user][:array] #=> will return [1,2]
用第i行测试,现在使用temp而不是X_test。
或者创建一个包含所需数据的新数据框:
temp = X_test[i:i+1]
其中数据作为列表输入(可迭代)[[a1,a2,a3 ... a15]]。
再次在代码中使用temp而不是X_test。