- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如何将如下所示的 tensorflow 2.0 中的选定变量保存在一个文件中,并使用 tf.train.Checkpoint 将它们加载到另一个代码中的某些已定义变量中?
class manyVariables:
def __init__(self):
self.initList = [None]*100
for i in range(100):
self.initList[i] = tf.Variable(tf.random.normal([5,5]))
self.makeSomeMoreVariables()
def makeSomeMoreVariables(self):
self.moreList = [None]*10
for i in range(10):
self.moreList[i] = tf.Variable(tf.random.normal([3,3]))
def saveVariables(self):
# how to save self.initList's 3,55 and 60th elements and self.moreList's 4th element
此外,请展示如何保存所有变量并使用 tf.train.Checkpoint 重新加载。提前致谢。
最佳答案
我不确定这是不是你的意思,但你可以创建一个 tf.train.Checkpoint
专门针对要保存和恢复的变量的对象。请参阅以下示例:
import tensorflow as tf
class manyVariables:
def __init__(self):
self.initList = [None]*100
for i in range(100):
self.initList[i] = tf.Variable(tf.random.normal([5,5]))
self.makeSomeMoreVariables()
self.ckpt = self.makeCheckpoint()
def makeSomeMoreVariables(self):
self.moreList = [None]*10
for i in range(10):
self.moreList[i] = tf.Variable(tf.random.normal([3,3]))
def makeCheckpoint(self):
return tf.train.Checkpoint(
init3=self.initList[3], init55=self.initList[55],
init60=self.initList[60], more4=self.moreList[4])
def saveVariables(self):
self.ckpt.save('./ckpt')
def restoreVariables(self):
status = self.ckpt.restore(tf.train.latest_checkpoint('.'))
status.assert_consumed() # Optional check
# Create variables
v1 = manyVariables()
# Assigned fixed values
for i, v in enumerate(v1.initList):
v.assign(i * tf.ones_like(v))
for i, v in enumerate(v1.moreList):
v.assign(100 + i * tf.ones_like(v))
# Save them
v1.saveVariables()
# Create new variables
v2 = manyVariables()
# Check initial values
print(v2.initList[2].numpy())
# [[-1.9110833 0.05956204 -1.1753829 -0.3572553 -0.95049495]
# [ 0.31409055 1.1262076 0.47890127 -0.1699607 0.4409122 ]
# [-0.75385517 -0.13847834 0.97012395 0.42515194 -1.4371008 ]
# [ 0.44205236 0.86158335 0.6919655 -2.5156968 0.16496429]
# [-1.241602 -0.15177743 0.5603795 -0.3560254 -0.18536267]]
print(v2.initList[3].numpy())
# [[-3.3441594 -0.18425298 -0.4898144 -1.2330629 0.08798431]
# [ 1.5002227 0.99475247 0.7817361 0.3849587 -0.59548247]
# [-0.57121766 -1.277224 0.6957546 -0.67618763 0.0510064 ]
# [ 0.85491985 0.13310803 -0.93152267 0.10205163 0.57520276]
# [-1.0606447 -0.16966362 -1.0448577 0.56799036 -0.90726566]]
# Restore them
v2.restoreVariables()
# Check values after restoring
print(v2.initList[2].numpy())
# [[-1.9110833 0.05956204 -1.1753829 -0.3572553 -0.95049495]
# [ 0.31409055 1.1262076 0.47890127 -0.1699607 0.4409122 ]
# [-0.75385517 -0.13847834 0.97012395 0.42515194 -1.4371008 ]
# [ 0.44205236 0.86158335 0.6919655 -2.5156968 0.16496429]
# [-1.241602 -0.15177743 0.5603795 -0.3560254 -0.18536267]]
print(v2.initList[3].numpy())
# [[3. 3. 3. 3. 3.]
# [3. 3. 3. 3. 3.]
# [3. 3. 3. 3. 3.]
# [3. 3. 3. 3. 3.]
# [3. 3. 3. 3. 3.]]
如果你想保存列表中的所有变量,你可以用这样的东西替换makeCheckpoint
:
def makeCheckpoint(self):
return tf.train.Checkpoint(
**{f'init{i}': v for i, v in enumerate(self.initList)},
**{f'more{i}': v for i, v in enumerate(self.moreList)})
请注意,您可以拥有“嵌套”检查点,因此,更一般地说,您可以拥有一个为变量列表创建检查点的函数,例如:
def listCheckpoint(varList):
# Use 'item{}'.format(i) if using Python <3.6
return tf.train.Checkpoint(**{f'item{i}': v for i, v in enumerate(varList)})
那么你可以这样:
def makeCheckpoint(self):
return tf.train.Checkpoint(init=listCheckpoint(self.initList),
more=listCheckpoint(self.moreList))
关于python - 如何使用 tf.train.Checkpoint 在 tensorflow 2.0 中保存和加载选定变量和所有变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55262614/
我在 eventhub 中遇到了 Blob 存储检查点问题。如果我在获取消费者客户端时没有设置 checkpoint_store,我的应用程序运行正常。每当我尝试设置 checkpoint_store
当它说时,辅助名称节点检查点每小时(fs.checkpoint.period 以秒为单位)或如果编辑日志已达到 64 MB(fs.checkpoint.size 以字节为单位)则更早?究竟是什么意思?
我正在运行 PostgreSQL 服务器并将 shared_buffers 限制为 4GB。 当我在数据库中插入大量记录时,检查点进程开始消耗 RAM。即使在一天后,此过程既不会结束也不会减少 RAM
我已经用 sc.setCheckpointDir 设置了检查点目录方法。 /checkpointDirectory/ 然后我创建了一个 rdd 的检查点:rdd.checkpoint()在目录中,我现
我建立了自己的卷积神经网络,在其中跟踪所有可训练变量的移动平均值(tensorflow 1.0): variable_averages = tf.train.ExponentialMovingAver
我们有一个强大的 Postgres 服务器(64 核,384 GB RAM,16 个 15k SAS 驱动器,RAID 10),并且在一天中我们多次重建几个写入密集型的大型数据集。 Apache 和
我需要以编程方式获取不依赖于目录列表和文件扩展验证的现有检查点列表,如果您键入: tf.train.get_checkpoint_state('checkpoints') 您可以看到已打印此列表,但我
我一直在到处寻找这个问题的答案,但无济于事。我希望能够运行我的代码并将变量存储在内存中,以便我可以设置一个“检查点”,我可以在将来运行它。原因是我有一个相当昂贵的函数,它需要一些时间来计算(以及用户输
作为我的问题的序言,让我提供一些背景信息:我目前正在研究一个包含许多不同步骤的数据管道。每一步都可能出错,而且很多都需要一些时间(不是很多,但在几分钟的数量级)。 因此,管道目前受到人工的严格监督。分
本文整理了Java中org.apache.flink.runtime.checkpoint.ZooKeeperCompletedCheckpointStore类的一些代码示例,展示了ZooKeeper
本文整理了Java中org.apache.flink.runtime.checkpoint.ZooKeeperCheckpointIDCounter类的一些代码示例,展示了ZooKeeperCheck
本文整理了Java中org.apache.flink.runtime.checkpoint.ZooKeeperCheckpointRecoveryFactory类的一些代码示例,展示了ZooKeepe
根据 this question和我读过的文档,Spark Streaming 的 foreachRDD(someFunction) 将让 someFunction 本身仅在驱动程序进程中执行,但如果
我正在使用简单的猫与狗数据集在 Google Colab 上尝试新添加的 TPU 支持。 在创建了一个简单的 CNN 之后,我尝试将模型导出到 TPU。但它因错误而失败 TypeError: Chec
我正在尝试在tensorflow-serving中使用重新训练的inception-v3模型。但看来我必须提供一个“检查点”。我想知道如何获得这些“检查点”? retrain.py 返回一个 retr
所以我有一个基于 census tutorial 的 ML 引擎包我尝试使用 --min-eval-Frequency 标志每 N 个步骤执行一次评估,但我不断在 stackdriver 日志中收到消
我可以通过以下方式在检查点( https://www.tensorflow.org/beta/guide/checkpoints#manually_inspecting_checkpoints )中保
我刚刚在 IndoorAtlas 上进行了分析,并使用 ios SDK 尝试了示例应用程序。当我四处走动时,我在创建的平面图中更新了我的位置。 我想知道当我到达我在楼层内创建检查点的位置时应该如何接收
我正在训练一个 tensorflow 模型,在每个 epoch 之后我保存模型状态并 pickle 一些数组。到目前为止,我的模型做了 2 个时期,保存状态的文件夹包含以下文件: checkpoint
您好,我正在尝试运行一个经常因 StackoverflowError 而失败的长 sparkjob。该作业读取一个 parquetfile 并在 foreach 循环中创建一个 rdd。在做了一些研究
我是一名优秀的程序员,十分优秀!