美文网首页
从数据的角度理解TensorFlow鸢尾花分类程序8

从数据的角度理解TensorFlow鸢尾花分类程序8

作者: LabVIEW_Python | 来源:发表于2018-06-14 13:02 被阅读132次

    上节,本节继续分析:5,评估模型的效果:

    评估指的是确定模型进行预测的效果。要确定鸢尾花分类模型的效果,需要将测试值test_x传递给模型,并要求模型预测它们所代表的鸢尾花品种。然后,将模型的预测与实际标签(test_y)进行比较。如果模型对一半输入样本的品种预测正确,则准确率为 0.5。

    为方便评估模型的效果,每个 Estimator 都提供了 evaluate 方法,如下所示:

    调用classifier.evaluate方法

    调用 classifier.evaluate 与调用 classifier.train 类似。最大的区别在于,classifier.evaluate 必须从测试集(而非训练集)中获取样本。

    为了公正地评估模型的效果,用于评估模型的数据一定不能与用于训练模型的数据相同

    跟train方法类似,evaluate方法也需要一个输入函数input_fn,要求跟train方法一致。由于evaluate只运行一次,而且需要优化神经网络参数,所以,输入给evaluate方法的数据,不需要随机化(shuffle)和重复(repeat)操作,代码实现如下图所示:

    eval_input_fn

    当classifier.evaluate 方法调用eval_input_fn函数时,eval_input_fn函数会将测试集中的特征和标签转换为 tf.dataset 对象,并按照batch_size大小将测试数据(N个)组织成为 shape 为 N%batch_size 的Tensor,然后将组织好的数据返回给evaluate方法。 

    相关文章

      网友评论

          本文标题:从数据的角度理解TensorFlow鸢尾花分类程序8

          本文链接:https://www.haomeiwen.com/subject/gnzeeftx.html