重用'的目的是什么? GAN中的flag在tensorflow中实现?

时间:2017-12-06 21:05:34

标签: python tensorflow neural-network deep-learning

我正在阅读GAN教程,并且我注意到使用了“重用”#39;旗帜,我不会完全得到他们正在做或预防。如果您查看下面的代码,您将看到在每个变量范围初始化中使用<!DOCTYPE html> <html> <head> <link href="//netdna.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css" rel="stylesheet"> <link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.6.3/css/bootstrap-select.min.css" /> <script src="js/script.js" type="text/javascript"></script> </head> <body> <form id="form"> <select class="selectpicker" data-live-search="true" id="gear0"> <option></option> <optgroup label="Pistols"> <option value="pistol1">M1911</option> </optgroup> </select> <div id="newGear"> </div> <input type="button" onclick="createGear()" value="Create Gear Input!"> </form> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.2/js/bootstrap.min.js"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.6.3/js/bootstrap-select.min.js"></script> </body> </html>

(我尝试查看文档,但仍不明确: https://www.tensorflow.org/versions/r0.12/how_tos/variable_scope/

reuse

谢谢。

1 个答案:

答案 0 :(得分:2)

对于发电机,我们将对其进行培训,但在我们进行培训和培训后也会对其进行采样。鉴别器将需要在伪造和真实输入图像之间共享变量。因此,如果我们再次构建图形,我们可以使用tf.variable_scope的reuse关键字来告诉TensorFlow重用变量而不是创建新变量。

然后是鉴别者。我们将构建其中两个,一个用于真实数据,一个用于伪数据。由于我们希望实数和假数据的权重相同,我们需要重用变量。对于虚假数据,我们将它作为g_model从生成器中获取。因此,真正的数据鉴别器是鉴别器(input_real),而伪鉴别器是鉴别器(g_model,reuse = True)。