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 相关文章推荐
python中List的sort方法指南
Sep 01 Python
Python使用Scrapy爬取妹子图
May 28 Python
Python 正则表达式实现计算器功能
Apr 29 Python
老生常谈Python序列化和反序列化
Jun 28 Python
python 3.6 +pyMysql 操作mysql数据库(实例讲解)
Dec 20 Python
Flask框架WTForm表单用法示例
Jul 20 Python
Django 登陆验证码和中间件的实现
Aug 17 Python
解决Tensorboard可视化错误:不显示数据 No scalar data was found
Feb 15 Python
tensorflow2.0的函数签名与图结构(推荐)
Apr 28 Python
Python+logging输出到屏幕将log日志写入文件
Nov 11 Python
Python3 用matplotlib绘制sigmoid函数的案例
Dec 11 Python
Python读取pdf表格写入excel的方法
Jan 22 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/06/28 PHP
将博客园(cnblogs.com)数据导入到wordpress的代码
2013/01/06 PHP
PHP判断指定时间段的2个方法
2014/03/14 PHP
微信公众平台接口开发入门示例
2014/12/24 PHP
php 数组字符串搜索array_search技巧
2016/07/05 PHP
Laravel 5.2 文档 数据库 ―― 起步介绍
2019/10/21 PHP
JavaScript类库D
2010/10/24 Javascript
jQuery Ajax异步处理Json数据详解
2013/11/05 Javascript
jquery使用淘宝接口跨域查询手机号码归属地实例
2013/11/28 Javascript
解析JavaScript中delete操作符不能删除的对象
2013/12/03 Javascript
解决js中window.open弹出的是上次的缓存页面问题
2013/12/29 Javascript
javascript日期格式化示例分享
2014/03/05 Javascript
使用jQuery异步加载 JavaScript脚本解决方案
2014/04/20 Javascript
JS通过Cookie判断页面是否为首次打开
2016/02/05 Javascript
javascript函数自动执行常用方法汇总
2016/03/28 Javascript
javascript截图 jQuery插件imgAreaSelect使用详解
2016/05/04 Javascript
基于AngularJs + Bootstrap + AngularStrap相结合实现省市区联动代码
2016/05/30 Javascript
简单实现node.js图片上传
2016/12/18 Javascript
jquery实现表单获取短信验证码代码
2017/03/13 Javascript
细说webpack源码之compile流程-入口函数run
2017/12/26 Javascript
Nuxt.js 数据双向绑定的实现
2019/02/17 Javascript
javascript 高级语法之继承的基本使用方法示例
2019/11/11 Javascript
JavaScript实现滑动门效果
2020/01/18 Javascript
vue 使用lodash实现对象数组深拷贝操作
2020/09/10 Javascript
[04:10]2018年度CS GO玩家最喜爱的主播-完美盛典
2018/12/16 DOTA
解析Python中的__getitem__专有方法
2016/06/27 Python
tensorflow2.0保存和恢复模型3种方法
2020/02/03 Python
Python3自动生成MySQL数据字典的markdown文本的实现
2020/05/07 Python
python基于socket模拟实现ssh远程执行命令
2020/12/05 Python
python通用数据库操作工具 pydbclib的使用简介
2020/12/21 Python
详解Python Celery和RabbitMQ实战教程
2021/01/20 Python
Spy++的使用方法及下载教程
2021/01/29 Python
结合CSS3的布局新特征谈谈常见布局方法
2016/01/22 HTML / CSS
南京某软件公司的.net面试题
2015/11/30 面试题
电子工程求职信
2014/07/17 职场文书
Kubernetes中Deployment的升级与回滚
2022/04/01 Servers