Как передать вложенный список целых чисел в флаги командной строки Google?

Как передать вложенный список целых чисел gflags? Я могу заставить мой код работать с чем-то вроде

flags = tf.app.flags
FLAGS = flags.FLAGS
flags.DEFINE_float('network_nodes', [784, [5, 5, 32], [5, 5, 64], 1200, 10], 'The network structure')

Но пытаясь использовать это в командной строке с чем-то вроде

python test.py --network_nodes=[784, 100, 10]

Результаты (не удивительно) в ошибке:

test.py: error: argument --network_nodes: invalid int value: '[784, 100, 10]'

Как передать вложенный список целых чисел gflags (или TensofFlow's tf.app.flags)?

1 ответ

Решение

Из документации: https://github.com/gflags/python-gflags/blob/master/gflags.py

DEFINE_list: Takes a comma-separated list of strings on the commandline.
         Stores them in a python list object.

Таким образом, вам придется передать его в виде списка строк --network_nodes=784,100,10 а затем преобразовать строки в плавающие.

Другие вопросы по тегам