Pytorch中torch.rand()、torch.randn()、torch.randint()、torch.randperm()几个函数的说明

1. torch.rand(*sizes, out=None) -> Tensor

  • 参数:

    • sizes (int...):整数序列,定义了输出张量的形状。
    • out (Tensor, 可选):输出张量。
  • 返回值:

    • 一个新的张量,包含了在区间 [0, 1) 上均匀分布的随机数。
  • 用途:

    • torch.rand 用于生成指定形状的张量,其元素从 [0, 1) 的均匀分布中随机抽取。这通常用于模型权重的初始化或任何需要均匀分布随机数的场景。

2. torch.randn(*sizes, out=None) -> Tensor

  • 参数:

    • sizes (int...):整数序列,定义了输出张量的形状。
    • out (Tensor, 可选):输出张量。
  • 返回值:

    • 一个新的张量,包含了从标准正态分布(均值为0,标准差为1)中抽取的随机数。
  • 用途:

    • torch.randn 生成具有标准正态分布(高

斯分布)的随机数张量。这在需要正态分布随机数的场景下使用,如权重初始化或概率模型的输入。

3. torch.randint(low=0, high, *sizes, out=None) -> Tensor

  • 参数:

    • low (int, 可选):随机整数生成的最低值(包含),默认为0。
    • high (int):随机整数生成的最高值(不包含)。
    • sizes (int...):整数序列,定义了输出张量的形状。
    • out (Tensor, 可选):输出张量。
  • 返回值:

    • 一个新的张量,包含了在区间 [low, high) 上均匀分布的随机整数。
  • 用途:

    • torch.randint 用于生成指定范围内的随机整数张量。常用于生成索引、随机抽样、初始化整数参数等场景。

4.torch.randperm(n, out=None) -> Tensor

  • 参数:

    • n (int):生成整数序列的上限,序列将包含 [0, n)。
    • out (Tensor, 可选):输出张量。
  • 返回值:

    • 一个新的张量,包含了一个长度为 n 的随机排列。
  • 用途:

    • torch.randperm 生成一个0到n-1的随机排列的张量。这个函数在需要随机打乱序列或者创建没有重复元素的随机索引时非常有用,比如在分割数据集为训练集和测试集时进行随机采样。
相关推荐
haluhalu.4 分钟前
深入理解AIAgent(1.3)--- 设计模式
人工智能·python·设计模式·langchain
估值探索者5 分钟前
【Python量化选股流水线 #03】候选股怎么排序?动量+低波+流动性三因子打分取 Top-N
开发语言·python·接口·api接口·股票数据接口·数据接口·股票数据api接口
骑士雄师5 分钟前
supervisor 中关于上下文多轮信息维护常用到的python语法
开发语言·python
stereohomology7 分钟前
外挂可能是用AI工具自定义solomd插件和主题适合的方式
人工智能·markdown·薅羊毛·solomd·外挂新特性
青少儿编程课堂13 分钟前
蓝桥杯·全国青少年信息素养大赛·电子学会Python/C/C++考级:任意进制互转与大数多进制加法解析
c++·python·算法·bfs·信息学竞赛
东离与糖宝17 分钟前
一个句号击穿Copilot安全机制,CVSS8.8高危漏洞深度解析
人工智能
Orchestrator_me19 分钟前
k8s网络与应用
网络·python·kubernetes
迅猛龙办公室23 分钟前
Python函数实现反转一个只有3位数的整数
开发语言·前端·python
我星期八休息23 分钟前
Redis 的原理和使用(2)
前端·数据库·redis·python·mysql·缓存·bootstrap
“AI国潮设计-小江”25 分钟前
《【AIGC实战】Python+SDXL批量生成“英歌舞树莓香草布丁”IP,附保持角色一致性的代码逻辑》
开发语言·人工智能·python·prompt·aigc