import numpy as np

np.random.randint(a, b, size=(c, d)):

注:a-b表示生成[a,b]数的范围,后面size表示生成矩阵的大小

#eg:
np.random.randint(0,10,(4,3))
array([[0, 3, 6],
       [8, 0, 8],
       [6, 5, 8],
       [7, 0, 9]])

np.random.rand(a, b)

注:通过本函数可以返回一个或者一组服从“0-1”分布的随机样本值。随机样本取值的范围为[0,1)

应用:在Dropout正则化方法中用到,可以用来生成dropout随机向量例如d3 = np.random.rand(a3.shape[0], a3.shape[1])

keep_prob = 0.30
a3 = np.random.randint(0,10,(4,3))
print(a3)
d3 = np.random.rand(a3.shape[0], a3.shape[1])<keep_prob#s输出威布尔变量
print(d3)
a3 = np.multiply(a3, d3, dtype='float32')
a3 =a3/keep_prob
a3
[[2 8 1]
 [2 5 4]
 [1 8 9]
 [5 0 8]]
[[ True  True  True]
 [False  True False]
 [ True False False]
 [False False False]]





array([[ 6.6666665, 26.666666 ,  3.3333333],
       [ 0.       , 16.666666 ,  0.       ],
       [ 3.3333333,  0.       ,  0.       ],
       [ 0.       ,  0.       ,  0.       ]], dtype=float32)
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐