生成数据类型float矩阵的最快方法是什么?

时间:2018-07-23 06:38:36

标签: python list numpy

我正尝试使用以下代码生成数据类型为float的10000 * 10000矩阵,其中的条目为非零值。

import numpy as np
list_going_in=np.random.rand(10000,10000)

,但是要花超过一秒钟的时间才能完成。

感谢您的帮助。

3 个答案:

答案 0 :(得分:5)

否,没有更快的方法可以做到这一点。随机数生成的开销限制了您。优化这些东西的唯一方法是在矩阵中是否有某种结构(例如所有零,三角形,稀疏等)。如果每个单元格都不相同,则必须分别计算和存储每个单元格。

据我所知,

np.random可能是最快的,无论如何都接近。

答案 1 :(得分:2)

您可以为此使用空:

例如:

np.empty((1000,1000))+np.empty((1000))

答案 2 :(得分:2)

如果我没记错的话,这种情况只会在您开发神经网络时出现,我建议您使用张量流:

    import tensorflow as tf
    tf.random_uniform(
    shape,
    minval=0,
    maxval=None,
    dtype=tf.float32,
    seed=None,
    name=None
)