1. 程式人生 > >TensorFlow 之命令列引數

TensorFlow 之命令列引數

TensorFlow專案例子中經常出現tf.app.flags,這個好像和tf.flags是一樣,加不加中間的app沒區別(要是不是這樣還請大家指出錯誤之處),它支援應用從命令列接受引數,可以用來指定叢集配置等。

import tensorflow as tf

#呼叫flags內部的DEFINE_string函式來制定解析規則
tf.flags.DEFINE_string("para_name_1","default_val", "description")
tf.flags.DEFINE_integer("batch_size", 64, "Batch Size (default: 64)"
) tf.flags.DEFINE_integer("num_epochs", 10, "Number of training epochs (default: 10)") #FLAGS是一個物件,儲存瞭解析後的命令列引數 FLAGS = tf.flags.FLAGS FLAGS._parse_flags()#進行解析,加上這一句可以把FLAGS.__flags變成一個字典 print(FLAGS.batch_size)#執行結果輸出64 print(FLAGS.__flags)#執行結果見下圖

這裡寫圖片描述

當然,以上的都不是重點,重點來了,重點是它可以從命令列接受引數。結果見下圖吧。
這裡寫圖片描述

可以看到當不傳入引數的時候它可以使用預設值,你也可以很方便的傳入自己的引數。