DVK*_*DVK 11 python numpy tensorflow tf.keras
我目前正在尝试将 numpy 数组列表保存到单个文件中,此类列表的示例可以采用以下形式
import numpy as np
np_list = []
for i in range(10):
if i % 2 == 0:
np_list.append(np.random.randn(64))
else:
np_list.append(np.random.randn(32, 64))
Run Code Online (Sandbox Code Playgroud)
我可以通过迭代列表将所有这些使用合并到一个文件中savez,但还有其他方法吗?我正在尝试保存函数返回的权重model.get_weights(),这是一个列表ndarray,在从保存的文件中检索权重后,我打算使用将这些权重加载到另一个模型中model.set_weights(np_list)。因此,列表的格式必须保持不变。如果有人有一种优雅的方式来做到这一点,请告诉我。
mar*_*cos 17
我会选择np.saveandnp.load因为它是平台无关的,比savetxt数组列表更快,例如:
import numpy as np
a = [
np.arange(100),
np.arange(200)
]
np.save('a.npy', np.array(a, dtype=object), allow_pickle=True)
b = np.load('a.npy', allow_pickle=True)
Run Code Online (Sandbox Code Playgroud)
这是np.save和np.load的文档。在这个答案中,您可以找到更好的讨论如何正确保存和加载 numpy.array() 数据?
就像@AlexP提到的那样,numpy >= v1.24.2不支持不同大小和类型的数组,所以这就是为什么需要进行转换。
| 归档时间: |
|
| 查看次数: |
23989 次 |
| 最近记录: |