您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

python – 用numpy / scipy中的随机数初始化一个float32矩阵

5b51 2022/1/14 8:20:38 python 字数 2292 阅读 473 来源 www.jb51.cc/python

scipy.random.rand()和同一个包中的其他函数都生成float64数组作为输出(至少对于Mac OS上的python 2.7.3 64位,scipy版本0.12.0).我想要的是一个相当大的(N千兆字节)随机初始化的float32矩阵.是否有一种简单的方法可以直接生成一个,而不是分配双倍空间对于float64然后转换为32位?最佳答案我会预先分

概述

scipy.random.rand()和同一个包中的其他函数
生成float64数组作为输出
(至少对于Mac OS上的python 2.7.3 64位,scipy版本0.12.0).

我想要的是一个相当大的(N千兆字节)随机初始化的float32矩阵.
是否有一种简单的方法可以直接生成一个,而不是分配双倍空间
对于float64然后转换为32位?

如果您正在进行黑客攻击,那么使用统一随机生成十个浮点数:

>>> bytes_per_float = np.float32(0).nbytes  # ugly,I kNow
>>> np.frombuffer(random.bytes(10 * bytes_per_float),dtype=np.float32)
array([ -3.42894422e-23,-3.33389699e-01,-7.63695071e-26,7.02152836e-10,3.45816648e-18,2.80226597e-09,-9.34621269e-10,-9.75820352e+08,2.95705402e+20,2.57654391e+25],dtype=float32)

当然,这些不遵循任何好的分布,阵列可能包含NaN或Inf,并且由于对齐问题,代码实际上可能在某些非x86机器上崩溃.

总结

以上是编程之家为你收集整理的python – 用numpy / scipy中的随机数初始化一个float32矩阵全部内容,希望文章能够帮你解决python – 用numpy / scipy中的随机数初始化一个float32矩阵所遇到的程序开发问题。


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶