tensorflow中flags主要用於接受命令行傳遞引數,可以全域性的更改**中的引數,這正好適用於深度學習這種用到引數比較多的地方。
大概的步驟就是現在.py檔案中定義相應引數,然後呼叫flags,將引數儲存在flags中,方便進一步的更改和呼叫(例如:呼叫時直接用 (flags.引數名) 呼叫即可。
1.先在檔案中呼叫flags功能,呼叫可以通過以下兩種方式:
import tensorflow as tf
flags = tf.flags(新版本)#新老版本任選其一即可
flags = flags.flags
from absl import flags#這種是不呼叫tensorflow而是直接採用absl中的flags模組
flags = flags.flags
2.將引數值傳入flags中,不同的引數型別用不同的函式定義:
flags.define_integer(1,
2,3)
flags.define_float(1,
2,3)
flags.define_boolean(1,
2,3)
這裡的引數 1:引數名稱(呼叫時要用到) 2:預設值。 3:引數描述
import sys, os
from absl import flags
import tensorflow as tf
flags = tf.flags
flags = flags.flags
flags.define_string(
'gpu'
,none
,'comma separated list of gpu to use.'
)flags.define_float(
'number'
,1.0
,'這是乙個浮點數'
)def
main
(ar**)
:del ar**
if flags.gpu:
print
("gpu is %s"
% flags.gpu)
os.environ[
'cuda_visible_devices'
]= flags.gpu
else
:print
('please assign gpus.'
)print
(flags.number)
exit(
)if __name__ ==
'__main__'
:
輸出:
please assign gpus.
1.0
和flag 不怕立Flag,就怕沒有Flag
我慢悠悠地在宿舍裡轉圈,看見舍友遞過來的薯片,原來是因為你。我憤憤地邊吃邊說。在舍友看白痴的眼神中我回到椅子上,撕開了一包無骨雞爪,邊嚼邊想,總有人想阻止我成功。昨天晚自習的時候,班長讓我們每乙個都寫下自己的新年flag,然後互相交換後讀出來。有的人希望自己好好學習,天天向上 有的人希望可以暴瘦 有...
dlopen中幾個flag的區別
dlopen中幾個flag的區別 rtld lazy rtld now rtld global void dlopen const char filename,int flag 其中flag有 rtld lazy rtld now rtld global,其含義分別為 1 rtld lazy 在dl...
dlopen中幾個flag的區別
dlopen中幾個flag的區別 rtld lazy rtld now rtld global void dlopen const char filename,int flag 其中flag有 rtld lazy rtld now rtld global,其含義分別為 1 rtld lazy 在dl...