我基本上是在寻找一种使用tensorflow saver的解决方法,因为要在Colab TPU上进行培训,您需要一个Google Cloud帐户,而免费版本仅可使用12个月或价值300美元的积分。
如果我使用Adagrad并使用常规tf保护程序保存,则保存的变量与权重相关。由于我正在执行word2vec,因此有两组权重,即嵌入权重和softmax权重。我可以使用
来获取那些变量保存在我的张量流检查点中的名称for v in tf.get_default_graph().get_collection("variables"):
print('from variables collection ', v)
我看到两个与Adagrad优化器相关的
from variables collection <tf.Variable 'embeddings/Adagrad:0' shape=(10001, 256) dtype=float32_ref>
from variables collection <tf.Variable 'softmax_weights/Adagrad:0' shape=(10001, 256) dtype=float32_ref>
我对Adagrad优化器了解不足,无法确切地知道这些变量是什么。他们是官方tf文档中提到的initial_accumulator_value
吗?
initial_accumulator_value:浮点值。的起始值 累加器必须是正数。
https://www.tensorflow.org/api_docs/python/tf/train/AdagradOptimizer
如果是这样,那么我可以使用这些值初始化我的优化器。
但是问题是,如何在不使用tf saver的情况下从优化程序中保存这些值?