python - 将张量值以二进制格式保存到文件的最佳方法是什么?

标签 python tensorflow floating-point

我正在尝试将张量值以二进制格式保存到文件中。 特别是我试图将 float32 张量值保存为二进制格式(IEEE-754 格式)。你能帮帮我吗??

import tensorflow as tf

x = tf.constant([[1.0, 2.0, 3.0], [5.5, 4.3, 2.5]])

# how to save tensor x as binary format ?? 

最佳答案

推荐的方法是检查您的模型。如 Saving and Restoring programmer's guide 中所述, 你创建一个 tf.train.Saver对象,可选地指定要保存哪些变量/可保存对象。然后,每当您想保存张量的值时,调用 tf.train.Saver 对象的 save() 方法:

saver = tf.train.Saver(...)

#...

saver.save(session, 'my-checkpoints', global_step = step)

.. 其中第二个参数(上例中的'my-checkpoints')是存储检查点二进制文件的目录的路径。

另一种方法是评估单个张量(将是 NumPy ndarrays),然后将单个 ndarrays 保存到 NPY 文件(通过 numpy.save() )或将多个 ndarrays 保存到单个 NPZ 存档(通过 numpy.savez()numpy.savez_compressed() ):

np.save('x.npy', session.run(x), allow_pickle = False)

关于python - 将张量值以二进制格式保存到文件的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48144477/

相关文章:

python - 如何获得 1 :1 corresponding matches using sklearn KNearest neighbors

Python OpenCV 调整大小(插值)

python - 使用 Tensor Flow 对 MNIST 手写数字进行 CNN 训练的振荡精度

python - 来自tensorflow的AdamOptimizer和GradientDescentOptimizer无法适应简单数据

c - 为什么这段简单的代码不起作用?

python - 如何使用 pythons unittest 从多个基测试类继承?

python - 如何在 Heroku 上使用 New Relic 记录部署

python - .NET框架中使用的经过训练的 tensorflow 模型

java - JIT处理浮点运算是否带/F :fast or/F:precise

c - 准确预测任意浮点格式之间的转换舍入误差