库名: np.random
RandomState()
np.random.RandomState(seed)
seed 相同时两个不同的RandomState对象会产生相同的随机数据序列
seed 默认值为None,此时不同的RandomState对象产生不同的随机数据序列,此时RandomState将从/dev/urandom 或者从clock otherwise读取seed值
1
2
3
4
5
6
7
8print np.random.RandomState(1).randint(1, 100010)
print np.random.RandomState(1).randint(1, 100000)
print np.random.RandomState(1).randint(1, 100000)
print np.random.RandomState().randint(1, 100000)
print np.random.RandomState().randint(1, 100000)
print np.random.RandomState().randint(1, 100000)
print np.random.RandomState(1) is np.random.RandomState(1)
print np.random.RandomState() is np.random.RandomState()输出如下:
98540
98540
98540
38317
42305
70464
False
False
关于初始化向量的维度
不是行向量也不是列向量
1
2np.random.randn(5)
# [1,2,3,4,5]- shape为(5,)
- 是一个特殊的数据结构
- 是一个一维向量,不是矩阵,不是行向量,也不是列向量
列向量
1
2
3
4
5
6np.random.randn(5,1)
# [[1]
[2]
[3]
[4]
[5]]- shape为(5,1)
- 是一个矩阵
行向量
1
2np.random.randn(1,5)
# [[1,2,3,4,5]]- shape为(1,5)
- 是一个矩阵
一个好的习惯是使用向量时用Assert语句确保维度
1
assert(a.shape == (3,4))