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的随机排列的张量。这个函数在需要随机打乱序列或者创建没有重复元素的随机索引时非常有用,比如在分割数据集为训练集和测试集时进行随机采样。
相关推荐
2601_966949659 小时前
如何根据研究的起止时间截取分钟级行情?Python 实战与 QuantDash 数据处理指南
开发语言·python·pandas·量化交易·1024程序员节·股票数据·quantdash
张彦峰ZYF11 小时前
越过边界之前:Reward Seeker 实验如何改写智能体安全的时间逻辑
人工智能·ai agent·anthropic·智能体安全·reward seeker·“控制评价过程”泛化跨领域策略·envbom
拓恒技术11 小时前
无人机巡检AI算法的工程化落地:从需求到交付的5个核心环节
人工智能·算法·无人机
罗西的思考13 小时前
AI 时代的 “房谋杜断”:如何培养能力、品味与判断力
人工智能·算法·机器学习
在世修行14 小时前
智学文枢:页面切换与跨页数据预填
python·桌面应用·signal·1024程序员节·pyside·跨页跳转·状态预填
字节跳动视频云技术团队14 小时前
720P 直升 8K,解密 2026 抖音美好奇妙夜巨幕超分黑科技
人工智能·音视频开发
2601_9628857214 小时前
如何用 Python 把 K 线重采样成任意周期?
开发语言·python
打工仔折腾 AI14 小时前
在 Ubuntu ARM64 部署 Q1 V3.0 MuJoCo 模型:加载、单步推理与执行器响应解析
linux·运维·人工智能·python·深度学习·ubuntu·性能优化
逐米时代14 小时前
从试点验证到协同深化:制造业AI转型三年路线图设计方法
人工智能
GlobalInfo15 小时前
全球及中国风电叶片检测机器人行业研究报告(2026版):市场现状、行业前景与占有率分析
运维·网络·人工智能·机器人