numpy 随机数_Numpy库使用入门(四)随机数

48cc9527db7a32e55f6e0a4a8174f374.png
ERNIE:当你神经网络好不容易搭完后,启动它要做的第一件事是什么?
BERT:emm......当然是把参数矩阵中塞满随机数啦(`・ω・´)。可是我懒得写循环......
ERNIE:没事,咱俩一开始时,参数矩阵就都是随机数啦,或许也包括我现在说的这句话。

基础np随机数生成函数

numpy有一个random子库,用法与python原本的random库差不多,调用时记得加上random:np.random.<方法>

eaf209f8a487d8a8c057da19a596a7a7.png

IDE测试

>>> np.random.rand(3,3) #生成一个3*3的随机数矩阵
array([[0.28034402, 0.7632137 , 0.77616993],
       [0.67435242, 0.17635725, 0.48415525],
       [0.6530347 , 0.33255404, 0.44074308]])
>>> np.random.randn(3,3) #矩阵元素符合正态分布
array([[ 0.19233304,  0.85012517,  1.17034056],
       [-0.30448713, -2.2180847 , -0.09353092],
       [ 0.5803468 ,  0.59346808, -0.60543587]])
>>> np.random.randint(0,10,(3,3)) #每个元素都是范围在[0,10)的随机整数
array([[0, 1, 3],
       [7, 5, 5],
       [0, 9, 1]])
>>> np.random.seed(10) #通过设定同一个随机数种子,可以使得生成的随机数完全相同
>>> np.random.randint(100,200,(3,4))
array([[109, 115, 164, 128],
       [189, 193, 129, 108],
       [173, 100, 140, 136]])
>>> np.random.randint(100,200,(3,4))
array([[116, 111, 154, 188],
       [162, 133, 172, 178],
       [149, 151, 154, 177]])
>>> np.random.seed(10)
>>> np.random.randint(100,200,(3,4))
array([[109, 115, 164, 128],
       [189, 193, 129, 108],
       [173, 100, 140, 136]])

np的高级随机数函数

44e3682732403a09891ab2c3b70a56a7.png

IDE测试

>>> a = np.random.randint(100,200,(3,4))
>>> a
array([[116, 111, 154, 188],
       [162, 133, 172, 178],
       [149, 151, 154, 177]])
>>> np.random.shuffle(a) #只对a的第一个轴(0轴,即axis=0)洗牌
>>> a
array([[116, 111, 154, 188],
       [149, 151, 154, 177],
       [162, 133, 172, 178]]) 
>>> np.random.shuffle(a) #我们洗了两次牌,可以看到只有列方向的三个元素之间交换了元素
>>> a
array([[162, 133, 172, 178],
       [116, 111, 154, 188],
       [149, 151, 154, 177]]) 
随机数函数的展示不够直观,需要使用可以自己尝试

概率分布函数

fe476af4e5503d61175530e2376e7746.png

IDE测试

>>> a = np.random.uniform(0,10,(3,4))
>>> a
array([[3.7334076 , 6.74133615, 4.41833174, 4.34013993],
       [6.17766978, 5.13138243, 6.50397182, 6.01038953],
       [8.05223197, 5.21647152, 9.08648881, 3.19236089]])
>>> a = np.random.normal(10,5,(3,4))
>>> a
array([[ 8.66341406,  7.25345493, 10.66354148,  7.61928993],
       [16.5423654 , 10.9750664 , 12.00104994,  8.31183831],
       [16.28236132,  6.34015249, 13.30115776,  8.24564054]])
相关知识请米娜桑参考概率论与数理统计
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值