Matlab中的RandStream的应用场景

本文介绍了Matlab中RandStream类在生成随机数中的作用,包括如何控制随机数的重复生成以确保结果的可重复性。通过 RandStream.getDefaultStream 和 reset 函数,可以实现随机数流的重置,从而在多次运行程序时得到相同的随机数序列。此外,还讨论了在机器学习和模式识别中,如何使用RandStream在不同实例间确保结果的多样性,以进行算法稳健性的评估。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一,matlab中生成随机数主要有三个函数:rand, randn,randi

1,rand  生成均匀分布的伪随机数。分布在(0~1)之间

  主要语法:rand(m,n)生成m行n列的均匀分布的伪随机数

            rand(m,n,'double')生成指定精度的均匀分布的伪随机数,参数还可以是'single'

            rand(RandStream,m,n)利用指定的RandStream(我理解为随机种子)生成伪随机数

2,randn 生成标准正态分布的伪随机数(均值为0,方差为1)

   主要语法:和上面一样

3, randi 生成均匀分布的伪随机整数

  主要语法:randi(iMax)在开区间(0,iMax)生成均匀分布的伪随机整数

            randi(iMax,m,n)在开区间(0,iMax)生成mXn型随机矩阵

            r = randi([iMin,iMax],m,n)在开区间(iMin,iMax)生成mXn型随机矩阵

 

二,关于随机种子,伪随机数的重复生成

正常情况下每次调用相同指令例如rand生成的伪随机数是不同的,

例如:

rand(1,3)

rand(1,3)

matlab的输出为:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值