TensorFlow 圖形編輯器庫(kù)允許就地修改現(xiàn)有的tf.Graph實(shí)例。
TensorFlow 圖像編輯器庫(kù)概覽
附加新節(jié)點(diǎn)是 TensorFlow 核心庫(kù)允許的唯一圖形編輯操作。圖形編輯器庫(kù)試圖允許其他類型的編輯操作,即重新路由和轉(zhuǎn)換。
- 重路由(reroute)是一種本地操作,包括重新插入現(xiàn)有張量(圖形的邊緣)。操作(節(jié)點(diǎn))不會(huì)被此操作修改。例如,可以使用重路由來插入添加噪聲的操作來代替現(xiàn)有的張量。
- 轉(zhuǎn)換(transform)是將圖形轉(zhuǎn)換為另一個(gè)圖形的全局操作。默認(rèn)情況下,轉(zhuǎn)換是一個(gè)簡(jiǎn)單的副本,但它可以被定制以實(shí)現(xiàn)其他目標(biāo)。例如,可以將圖形轉(zhuǎn)換成另一個(gè),其中在特定類型的所有操作之后添加噪聲。
重要:必須完成使用圖形編輯器就地修改圖形offline,即沒有任何活動(dòng)會(huì)話。
當(dāng)然,新的操作可以在線附加,但是圖形編輯器的特定操作(如重新路由和轉(zhuǎn)換)目前只能脫機(jī)完成。
以下是您無法執(zhí)行的操作的示例:
- 構(gòu)建圖表
- 創(chuàng)建會(huì)話并運(yùn)行圖表
- 使用圖形編輯器修改圖形
- 使用same以前創(chuàng)建的會(huì)話重新運(yùn)行圖
要編輯已經(jīng)運(yùn)行的圖形,請(qǐng)按照下列步驟操作:
- 構(gòu)建圖表
- 創(chuàng)建會(huì)話并運(yùn)行圖表
- 保存圖狀態(tài)并終止會(huì)話
- 使用圖形編輯器修改圖形
- 創(chuàng)建一個(gè)新的會(huì)話并恢復(fù)圖形狀
- 用新創(chuàng)建的會(huì)話重新運(yùn)行圖
請(qǐng)注意,此過程會(huì)花費(fèi)很多,因?yàn)楸仨氃谶M(jìn)行任何修改后創(chuàng)建新會(huì)話。除此之外,需要時(shí)間,因?yàn)檎麄€(gè)圖形狀態(tài)必須被保存并重新恢復(fù)。
子圖
圖形編輯器庫(kù)中的大部分功能都在子圖上運(yùn)行。更準(zhǔn)確地說,它們作為 SubGraphView 類的輸入?yún)?shù)實(shí)例(或任何可以轉(zhuǎn)換為它的東西),這樣做允許相同的功能在單個(gè)操作以及任何大小的子圖形上透明地操作。
可以通過幾種方式創(chuàng)建子圖:
my_sgv = ge.sgv ( ops )
my_sgv = ge.sgv_scope (“foo/bar” ,graph = tf.get_default_graph ())
my_sgv = ge .SGV (“foo/.*/.*read$” ,graph =tf.get_default_graph ())
請(qǐng)注意,圖形編輯器旨在同時(shí)操作多個(gè)圖形,通常在轉(zhuǎn)換或復(fù)制操作期間。為此,為避免任何混淆,絕對(duì)不會(huì)使用默認(rèn)圖形,必須明確地給出要運(yùn)行的圖形。這就是graph=tf.get_default_graph() 在上面代碼片段中使用的原因。
TensorFlow 模塊概述
- util:實(shí)用功能
- select:TensorFlow 張量和操作的各種選擇方法
- match:TensorFlow 圖匹配。將其視為圖形的正則表達(dá)式(但尚未完成)
- reroute:將張量重新路由到不同的消費(fèi)操作的各種方法,如 swap 或 reroute_a2b
- subgraph:SubGraphView 類,它可以在 TensorFlow 中進(jìn)行子圖操作 tf.Graph
- edit:在子圖上運(yùn)行的各種編輯功能,如分離,連接或旁路。
- transform:Transformer 類,它能夠?qū)⒆訄D轉(zhuǎn)換(或簡(jiǎn)單地復(fù)制)到另一個(gè)子圖中
模塊:util
- tf.contrib.graph_editor.make_list_of_op
- tf.contrib.graph_editor.get_tensors
- tf.contrib.graph_editor.make_list_of_t
- tf.contrib.graph_editor.get_generating_ops
- tf.contrib.graph_editor.get_consuming_ops
- tf.contrib.graph_editor.ControlOutputs
- tf.contrib.graph_editor.placeholder_name
- tf.contrib.graph_editor.make_placeholder_from_tensor
- tf.contrib.graph_editor.make_placeholder_from_dtype_and_shape
模塊:選擇
- tf.contrib.graph_editor.filter_ts
- tf.contrib.graph_editor.filter_ts_from_regex
- tf.contrib.graph_editor.filter_ops
- tf.contrib.graph_editor.filter_ops_from_regex
- tf.contrib.graph_editor.get_name_scope_ops
- tf.contrib.graph_editor.check_cios
- tf.contrib.graph_editor.get_ops_ios
- tf.contrib.graph_editor.compute_boundary_ts
- tf.contrib.graph_editor.get_within_boundary_ops
- tf.contrib.graph_editor.get_forward_walk_ops
- tf.contrib.graph_editor.get_backward_walk_ops
- tf.contrib.graph_editor.get_walks_intersection_ops
- tf.contrib.graph_editor.get_walks_union_ops
- tf.contrib.graph_editor.select_ops
- tf.contrib.graph_editor.select_ts
- tf.contrib.graph_editor.select_ops_and_ts
模塊:子圖
- tf.contrib.graph_editor.SubGraphView
- tf.contrib.graph_editor.make_view
- tf.contrib.graph_editor.make_view_from_scope
模塊:重新路由
- tf.contrib.graph_editor.reroute.swap_ts
- tf.contrib.graph_editor.reroute.reroute_ts
- tf.contrib.graph_editor.reroute.swap_inputs
- tf.contrib.graph_editor.reroute.reroute_inputs
- tf.contrib.graph_editor.reroute.swap_outputs
- tf.contrib.graph_editor.reroute.reroute_outputs
- tf.contrib.graph_editor.reroute.swap_ios
- tf.contrib.graph_editor.reroute.reroute_ios
- tf.contrib.graph_editor.reroute.remove_control_inputs
- tf.contrib.graph_editor.reroute.add_control_inputs
模塊:編輯
- tf.contrib.graph_editor.detach_control_inputs
- tf.contrib.graph_editor.detach_control_outputs
- tf.contrib.graph_editor.detach_inputs
- tf.contrib.graph_editor.detach_outputs
- tf.contrib.graph_editor.detach
- tf.contrib.graph_editor.connect
- tf.contrib.graph_editor.bypass
模塊:轉(zhuǎn)換
- tf.contrib.graph_editor.replace_t_with_placeholder_handler
- tf.contrib.graph_editor.keep_t_if_possible_handler
- tf.contrib.graph_editor.assign_renamed_collections_handler
- tf.contrib.graph_editor.transform_op_if_inside_handler
- tf.contrib.graph_editor.copy_op_handler
- tf.contrib.graph_editor.Transformer
- tf.contrib.graph_editor.copy
- tf.contrib.graph_editor.copy_with_input_replacements
- tf.contrib.graph_editor.graph_replace
有用的別名
- tf.contrib.graph_editor.ph
- tf.contrib.graph_editor.sgv
- tf.contrib.graph_editor.sgv_scope
更多建議: