die Summe über eine Liste von Tensoren in tensorflow

Ich habe ein tiefes neuronales Netzwerk, in dem sich die GEWICHTE zwischen den Schichten sind in einer Liste gespeichert.

layers[j].weights Ich will incluse dem Grat Strafe in meine Kosten-Funktion. Ich brauche dann etwas wie
tf.nn.l2_loss(layers[j].weights**2 for j in range(self.n_layers)) d.h. das Quadrat der Summe aller GEWICHTE.

Insbesondere die GEWICHTE sind wie folgt definiert:

>>> avs.layers
[<neural_network.Layer object at 0x10a4b2a90>, <neural_network.Layer object at 0x10ac85080>, <neural_network.Layer object at 0x10b0f3278>, <neural_network.Layer object at 0x10b0eacf8>, <neural_network.Layer object at 0x10b145588>, <neural_network.Layer object at 0x10b165048>, <neural_network.Layer object at 0x10b155ba8>]
>>>
>>> avs.layers[0].weights
<tensorflow.python.ops.variables.Variable object at 0x10b026748>
>>> 

Wie kann ich das machen, dass in tensorflow ?

  • Ich denke, dass müssen Sie erstellen eine neue tensor aus diesen gewichten und zu verwenden, dass in die Kosten-Gleichung.
InformationsquelleAutor Donbeo | 2015-12-29
Schreibe einen Kommentar