/ / AttributeError: Das Objekt 'module' hat kein Attribut 'main' für tf.app.run () - Python, Tensorflow

AttributeError: 'Modul'-Objekt hat kein Attribut' main 'für tf.app.run () - python, tensorflow

Ich versuche, ein kurzes Programm zu testen, das ziemlich einfach ist und wie folgt dargestellt wird

import numpy as np
import tensorflow as tf
flags = tf.app.flags
FLAGS = flags.FLAGS
import tensorvision.train as train
import tensorvision.utils as utils
flags.DEFINE_string("name", None,
"Append a name Tag to run.")

flags.DEFINE_string("hypes", "hypes/medseg.json",
"File storing model parameters.")
if __name__ == "__main__":
tf.app.run()

Beim Ausführen des Programms wird jedoch die folgende Fehlermeldung angezeigt:

Traceback (most recent call last):
File "train.py", line 43, in <module>
tf.app.run()
File "/devl/tensorflow/tf_0.12/lib/python3.4/site-  packages/tensorflow/python/platform/app.py", line 39, in run
main = main or sys.modules["__main__"].main
AttributeError: "module" object has no attribute "main"

Antworten:

12 für die Antwort № 1

Sie benötigen entweder eine "def main (args)" - Funktion in Ihrer Datei:

import numpy as np
import tensorflow as tf
flags = tf.app.flags
FLAGS = flags.FLAGS
import tensorvision.train as train
import tensorvision.utils as utils

def main(args):
flags.DEFINE_string("name", None,
"Append a name Tag to run.")

flags.DEFINE_string("hypes", "hypes/medseg.json",
"File storing model parameters.")
if __name__ == "__main__":
tf.app.run()

oder tf.app.run () kann eine externe Funktion aufrufen

tf.app.run(my_func)