matlab随机数(matlab怎么生成随机数rank)

生活百科 2022-08-05 13:40www.17kangjie.cn生活百科

随机数的生成在算法编程中非常常用,在matlab中rand(random的缩写)家族经常被使用。
小白一枚,敬请大神指教

rand家族成员

randMatrix = rand(x, y)

randMatrix = randn(x, y)

randMatrix = randi(x, y)

randMatrix = randperm(x, y)

rng 使用方法

rand

随机生成一组数,数值范围在[0, 1]之间,所生成的随机值服从随机分布。

rand(x) or rand(x, y)

rand(x) :这种形式的写法默认随机生成维度为x的方阵。

>> randMatrix = rand(3) randMatrix = 0.8147 0.9134 0.2785 0.9058 0.6324 0.5469 0.1270 0.0975 0.9575 12345671234567

rand(x, y):这种形式的写法随机生成行数为x,列数为y的矩阵。

>> randMatrix = rand(2,3) randMatrix = 0.9649 0.9706 0.4854 0.1576 0.9572 0.8003 123456123456

randn

该函数生成服从标准正态分布的随机数。

randn(x) or randn(x, y)

randn(x): 生成标准正态分布的随机数方阵,大小为:-x- by -x-

>> randMatrix = randn(3) randMatrix = -0.2050 1.4090 -1.2075 -0.1241 1.4172 0.7172 1.4897 0.6715 1.6302 12345671234567

randn(x, y) :生成服从标准正态分布的随机数矩阵。大小为:-x- by -y-

>> randMatrix = randn(2,3) randMatrix = 0.4889 0.7269 0.2939 1.0347 -0.3034 -0.7873 123456123456

randi

该函数也具有常用的两种形式:randi(x) or randi(x, y).使用方法和上述的rand和randn一样。

randperm

该函数功能是生成一组整数,并将顺序随机打乱。这种打乱顺序,完全随机,并不服从什么分布。
例1:

>> randperm(5) ans = 2 4 5 3 1 1234512345

randperm(5), 表示生成从1到5的五个为整数,并随机打乱顺序。
例2:

>> randperm(10, 3) ans = 4 6 5 1234512345

randperm(10, 3),表示生成从1到10的10整数,将顺序随机打乱,并将前三个整数返回。

探索篇——rng 使用方法

在一些随机生成参数的神经网络算法中,将某一次预测结果较高的随机参数在下一次随机生成中进行使用时,rng函数算是一种方式。它可以将上一次随机生成的随机数,进行保存,并在下一次随机生成时进行调用,使得前后两次随机生成的随机数相同。

>> randNum = rng; >> rand_1 = rand(3) rand_1 = 0.2238 0.5060 0.9593 0.7513 0.6991 0.5472 0.2551 0.8909 0.1386 >> rng(randNum); >> rnad_2 = rand(3) rnad_2 = 0.2238 0.5060 0.9593 0.7513 0.6991 0.5472 0.2551 0.8909 0.1386 12345678910111213141516171234567891011121314151617

rng 函数在使用时,还可以指定随机生成的类型(rand, randi,randn)。

相关关键词:matlab随机数

Copyright © 2016-2025 www.17kangjie.cn 长沙家政网【一起康洁家政】 版权所有 Power by