2017-07-06 3 views
0

Ich bin neu in Tensorflow und habe einen Fehler beim Ausführen einiger Beispielcodes festgestellt.TypeError: __init __() hat ein unerwartetes Schlüsselwortargument 'shape' erhalten

import tensorflow as tf 

g1 = tf.Graph() 
with g1.as_default(): 
    v = tf.get_variable("v", initializer=tf.zeros_initializer(shape=[1])) 

Ausführen des obigen Code gibt den Fehler: Typeerror: __init __() ein unerwartetes Stichwort Argument 'Form' bekam.

Der Kommentar unten besagt, dass tf.zeros_initializer "Shape" Argument gemäß der Dokumentation nicht akzeptiert. Ich habe versucht,

v = tf.get_variable("v", initializer=tf.zeros_initializer()) 

und es sagt Valueerror: Form einer neuen Variablen (v) muss vollständig definiert werden, sondern war.

Also, welche Art von Argument/Ausdruck sollte ich verwenden, um die Form zu definieren, ohne einen Typfehler zu verursachen?

Ich kann nicht finden, wie man es online löst. Bitte helfen Sie. Danke

+0

'tf.zero_initializer()' akzeptiert kein 'shape' Argument, siehe [Dokumentation] (https://www.tensorflow.org/api_docs/python/tf/zeros_initializer). Was hofften Sie, dass der Code tun würde? –

+0

Vielen Dank für die Dokumentation. Dies ist ein Beispielcode aus einem Buch und ich finde auch heraus, was es tun soll. BTW kann ich einige Beispiele haben, wie man tf.zero_initializer() benutzt? Ich habe versucht, "shape = [1]" oder "shape =" zu entfernen. Beides funktioniert nicht. Vielen Dank. – wooway777

Antwort

1

Es scheint, dass das Buch, das ich verwende, ein wenig veraltet ist. Der folgende Code scheint so weit zu funktionieren.

v = tf.get_variable("v", shape=[1], initializer=tf.zeros_initializer) 

Ich werde prüfen, ob es tatsächlich funktioniert mit mehr Code später hinzugefügt.

+0

Ok Ich habe gerade überprüft, dass es funktioniert. Wenn Sie auch das Buch von Caicloud verwenden, hoffe ich, dass dies hilft. Außerdem wird im folgenden Teil des Buches 'tf.initialize_all_variables(). Run()' ausgeführt. Dies sollte auf 'tf.global_variables_initializer(). Run()' aktualisiert werden. – wooway777

Verwandte Themen