numpy函数使用(floor,seed,permutaion,reshape(参数-1))

numpy.floor()函数

np.floor()返回不大于输入参数的最大整数。(向下取整)

In [7]: n = np.random.randn(5) + 3

In [8]: n
Out[8]: array([ 3.09855111,  2.25077728,  2.24930416,  2.90145913,  3.57786296])

In [9]: np.floor(n)
Out[9]: array([ 3.,  2.,  2.,  2.,  3.])

numpy.random.seed()函数

设定了seed(),代表随机状态被初始化了。所以运行seed()方法后,再次运行随机数生成器,会得到相同的随机数。
注意只会生效一次,所以要实现随机数再次相同,需要在前面再次运行seed()方法。

In [56]: np.random.seed(0)

In [57]: np.random.rand(4)
Out[57]: array([ 0.5488135 ,  0.71518937,  0.60276338,  0.54488318])

In [58]: np.random.seed(0)

In [59]: np.random.rand(4)
Out[59]: array([ 0.5488135 ,  0.71518937,  0.60276338,  0.54488318])

numpy.random.permutation()函数

随机置换一个序列,并返回。
permutaion(x),当x是整数的时候,随机置换"np.arange(x)";当x是一个数列的时候,返回随机交换后的序列。
所以该函数可以用于产生随机交换的索引,从而打乱一个序列。

In [66]: np.random.permutation(6)
Out[66]: array([2, 3, 0, 4, 5, 1])

In [67]: x=np.random.randn(5)

In [68]: x
Out[68]: array([-1.27814912,  1.43737068, -0.07770457,  1.08963016,  0.09654267])

In [69]: np.random.permutation(x)
Out[69]: array([ 0.09654267,  1.43737068, -1.27814912, -0.07770457,  1.08963016])

mini-batch 使用

把一个大的训练集合划分为若干个小的训练集。
用到的参数:m:训练集大小;mini_batch_size:mini-batch的大小;ncm = np.floor(m/mini_batch_size)
划分方案:

使用循环实现如下的划分:
0*mini_batch_size:1*mini_batch_size
1*mini_batch_size:2*mini_batch_size

(ncm-1)*mini_batch_size:ncm*mini_batch_size
最后再加上剩余的:
ncm*mini_batch_size:m

numpy.reshape()函数

不改变数组的值,返回一个新形状的数组。函数参数reshape(a,newshape,order=‘C’);a是该数组。
newshape是整数或者由整数构成的元组。
注意:参数是-1时。reshpae函数会根据另一个参数的维度以及数组大小,计算出这个shape的维度属性。


In [70]: x=np.arange(12).reshape(3,4)

In [71]: x
Out[71]:
array([[ 0,  1,  2,  3],
       [ 4,  5,  6,  7],
       [ 8,  9, 10, 11]])

In [72]: np.arange(12).reshape(-1,4)
Out[72]:
array([[ 0,  1,  2,  3],
       [ 4,  5,  6,  7],
       [ 8,  9, 10, 11]])
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值