我正在阅读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
谢谢。
答案 0 :(得分:2)
对于发电机,我们将对其进行培训,但在我们进行培训和培训后也会对其进行采样。鉴别器将需要在伪造和真实输入图像之间共享变量。因此,如果我们再次构建图形,我们可以使用tf.variable_scope的reuse关键字来告诉TensorFlow重用变量而不是创建新变量。
然后是鉴别者。我们将构建其中两个,一个用于真实数据,一个用于伪数据。由于我们希望实数和假数据的权重相同,我们需要重用变量。对于虚假数据,我们将它作为g_model从生成器中获取。因此,真正的数据鉴别器是鉴别器(input_real),而伪鉴别器是鉴别器(g_model,reuse = True)。