np.random.seed() 的使用详解


Posted in Python onJanuary 14, 2020

在学习人工智能时,大量的使用了np.random.seed(),利用随机数种子,使得每次生成的随机数相同。

我们带着2个问题来进行下列实验

  1. np.random.seed()是否一直有效
  2. np.random.seed(Argument)的参数作用?

例子1

import numpy as np
 
if __name__ == '__main__':
 i = 0
 while (i < 6):
  if (i < 3):
   np.random.seed(0)
   print(np.random.randn(1, 5))
  else:
   print(np.random.randn(1, 5))
   pass
  i += 1
 
 print("-------------------")
 i = 0
 while (i < 2):
  print(np.random.randn(1, 5))
  i += 1
 print(np.random.randn(2, 5))
 
 print("---------重置----------")
 np.random.seed(0)
 i = 0
 while (i < 8):
  print(np.random.randn(1, 5))
  i += 1

np.random.seed() 的使用详解

可以看出,np.random.seed()对后面的随机数一直有效。

两次利用随机数种子后,即便是跳出循环后,生成随机数的结果依然是相同的。第一次跳出while循环后,进入第二个while循环,得到的两个随机数组确实和加了随机数种子不一样。但是,后面的加了随机数种子的,八次循环中的结果和前面的结果是一样的。说明,随机数种子对后面的结果一直有影响。同时,加了随机数种子以后,后面的随机数组都是按一定的顺序生成的。

例子2,随机数种子参数的作用

import numpy as np
 
if __name__ == '__main__':
 i = 0
 np.random.seed(0)
 while (i < 3):
  print(np.random.randn(1, 5))
  i += 1
 i = 0
 print("---------------------")
 np.random.seed(1)
 i = 0
 while (i < 3):
  print(np.random.randn(1, 5))
  i += 1

np.random.seed() 的使用详解

当随机数种子参数为0和1时,生成的随机数结果相同。说明该参数指定了一个随机数生成的起始位置。每个参数对应一个位置。并且在该参数确定后,其后面的随机数的生成顺序也就确定了。

所以,随机数种子的参数怎么选择?这个参数只是确定一下随机数的起始位置,可随意分配。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
对pytorch网络层结构的数组化详解
Dec 08 Python
Python3 关于pycharm自动导入包快捷设置的方法
Jan 16 Python
Python给图像添加噪声具体操作
Mar 03 Python
python批量修改文件夹及其子文件夹下的文件内容
Mar 15 Python
Python3内置模块之json编解码方法小结【推荐】
Dec 09 Python
python 列表输出重复值以及对应的角标方法
Jun 11 Python
用OpenCV将视频分解成单帧图片,图片合成视频示例
Dec 10 Python
pyqt5数据库使用详细教程(打包解决方案)
Mar 25 Python
Python HTTP下载文件并显示下载进度条功能的实现
Apr 02 Python
Python中常见的数制转换有哪些
May 27 Python
Django vue前后端分离整合过程解析
Nov 20 Python
Django 用户认证Auth组件的使用
Nov 30 Python
下载与当前Chrome对应的chromedriver.exe(用于python+selenium)
Jan 14 #Python
Python selenium 自动化脚本打包成一个exe文件(推荐)
Jan 14 #Python
pytorch+lstm实现的pos示例
Jan 14 #Python
Python中sorted()排序与字母大小写的问题
Jan 14 #Python
Pytorch实现LSTM和GRU示例
Jan 14 #Python
Python生成词云的实现代码
Jan 14 #Python
pytorch-RNN进行回归曲线预测方式
Jan 14 #Python
You might like
PHP缓存技术的多种方法小结
2012/08/14 PHP
php foreach正序倒序输出示例代码
2014/07/01 PHP
php正则表达式学习笔记
2015/11/13 PHP
PHP的Yii框架中View视图的使用进阶
2016/03/29 PHP
PHP实现生成推广海报的方法详解
2018/03/14 PHP
PHP封装的简单连接MongoDB类示例
2019/02/13 PHP
Laravel 框架基于自带的用户系统实现登录注册及错误处理功能分析
2020/04/14 PHP
去除链接虚线全面分析总结
2006/08/15 Javascript
js动态修改input输入框的type属性(实现方法解析)
2013/11/13 Javascript
Jquery each方法跳出循环,并获取返回值(实例讲解)
2013/12/12 Javascript
javascript里使用php代码实例
2014/12/13 Javascript
jQuery实现点击按钮弹出可关闭层的浮动层插件
2015/09/19 Javascript
jquery树形菜单效果的简单实例
2016/06/06 Javascript
详解jQuery uploadify文件上传插件的使用方法
2016/12/16 Javascript
angularjs封装$http为factory的方法
2017/05/18 Javascript
微信JSSDK调用微信扫一扫功能的方法
2017/07/25 Javascript
React-Native中props具体使用详解
2017/09/04 Javascript
mpvue写一个CPASS小程序的示例
2018/09/04 Javascript
elementUI 设置input的只读或禁用的方法
2018/10/30 Javascript
怎样在vue项目下添加ESLint的方法
2019/05/16 Javascript
微信小程序嵌入腾讯视频源过程详解
2019/08/08 Javascript
js实现金山打字通小游戏
2020/07/24 Javascript
举例区分Python中的浅复制与深复制
2015/07/02 Python
python类和继承用法实例
2015/07/07 Python
django初始化数据库的实例
2018/05/27 Python
使用python爬取B站千万级数据
2018/06/08 Python
python得到电脑的开机时间方法
2018/10/15 Python
Python包资源下载路径报404解决方案
2020/11/05 Python
利用指针变量实现队列的入队操作
2012/04/07 面试题
幼儿园庆六一游园活动方案
2014/01/29 职场文书
产品包装策划方案
2014/05/18 职场文书
会计专业毕业生求职信
2014/07/04 职场文书
大学生考试作弊检讨书
2014/09/21 职场文书
学习心理学的体会
2014/11/07 职场文书
2015年幼儿园德育工作总结
2015/05/25 职场文书
解决SpringBoot跨域的三种方式
2021/06/26 Java/Android