小编典典

如何在Tensorflow中关闭辍学测试?

python

一般来说,我对Tensorflow和ML还是比较陌生,因此我对一个(可能)琐碎的问题表示歉意。

我使用辍学技术来提高网络的学习速度,并且看起来工作得很好。然后,我想在一些数据上测试网络,看它是否像这样工作:

   def Ask(self, image):
        return self.session.run(self.model, feed_dict = {self.inputPh: image})

显然,由于辍学仍然存在,每次产生不同的结果。我能想到的一种解决方案是创建两个单独的模型-
一个用于训练,另一个用于实际以后使用网络,但是,这种解决方案对我来说似乎不切实际。

解决此问题的常用方法是什么?


阅读 292

收藏
2021-01-20

共1个答案

小编典典

最简单的方法是使用来更改keep_prob参数placeholder_with_default

prob = tf.placeholder_with_default(1.0, shape=())
layer = tf.nn.dropout(layer, prob)

这样,当您训练时,可以像这样设置参数:

sess.run(train_step, feed_dict={prob: 0.5})

评估时使用默认值1.0。

2021-01-20