tensorflow-collection收集器
阿新 • • 發佈:2018-12-04
con -c b+ import env 退出 arr collect none collection收集器的作用在於,可以在計算圖運行過程中保存需要的值。
[6., 7.]], dtype=float32), array([[1., 2.],
[3., 4.]], dtype=float32), array([[2., 3.],
[4., 5.]], dtype=float32), array([[4., 5.],
[6., 7.]], dtype=float32)]
get_collection得到collection中關於key的內容,返回值是一個列表。
add_to_collection將值增加到collection中,並與name關聯
add_to_collections將一個值放入多個collection中
tf.get_collection(
key,
scope=None
)
tf.add_to_collection(
name,
value
)
#!/usr/bin/env python2 # -*- coding: utf-8 -*- """ Created on Mon Aug 27 11:16:32 2018 @author: myhaspl """ import tensorflow as tf a = tf.constant([[1., 2.], [3., 4.]]) b = a+1 c= b+2 tf.add_to_collection("my_constant",a) tf.add_to_collection("my_constant",b) tf.add_to_collection("my_constant",c) const_vals=tf.get_collection("my_constant") res=tf.add_n([a,b,c]) sess=tf.Session() with sess: print sess.run(res) print sess.run(const_vals)
[[ 7. 10.]
[13. 16.]]
[array([[1., 2.],
[3., 4.]], dtype=float32), array([[2., 3.],
[4., 5.]], dtype=float32), array([[4., 5.],
[6., 7.]], dtype=float32)]
記住,上次跑程序已經保存的值不會被自動刪除,值會累計保存,直到python進程退出。否則,再跑一次上面的程序,則
[[ 7. 10.]
[13. 16.]]
[array([[1., 2.],
[3., 4.]], dtype=float32), array([[2., 3.],
[4., 5.]], dtype=float32), array([[4., 5.],
[3., 4.]], dtype=float32), array([[2., 3.],
[4., 5.]], dtype=float32), array([[4., 5.],
[6., 7.]], dtype=float32)]
#!/usr/bin/env python2 # -*- coding: utf-8 -*- """ Created on Mon Aug 27 11:16:32 2018 @author: myhaspl """ import tensorflow as tf a = tf.constant([[1., 2.], [3., 4.]]) tf.add_to_collections(["my_con1","my_con2"],a) const_1=tf.get_collection("my_con1") const_2=tf.get_collection("my_con2") sess=tf.Session() with sess: print sess.run(const_1) print sess.run(const_2)
[array([[1., 2.],
? ? ? ?[3., 4.]], dtype=float32)]
[array([[1., 2.],
? ? ? ?[3., 4.]], dtype=float32)]
tensorflow-collection收集器