PyTorch 之 rand() 与 randn() 函数

文章目录

当然,让我更详细地介绍 torch.rand()torch.randn(),以及它们在 PyTorch 中的用法。

torch.rand()

torch.rand(*sizes, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False) 生成从均匀分布(在 0 到 1 之间)中抽样的随机数。

  • *sizes: 输出张量每个维度的大小。可以是整数序列或变量数量的参数。
  • out: 如果提供了,结果将被放入此张量。
  • dtype: 输出张量的所需数据类型。
  • layout: 输出张量的所需布局。
  • device: 输出张量的所需设备。
  • requires_grad: 如果为 True,生成的张量将具有 requires_grad 属性,设置为 True,允许进行自动微分。

示例:

python 复制代码
import torch

# 生成一个2x3的张量,其中的元素是在0到1之间的随机值
随机张量 = torch.rand(2, 3)
print(随机张量)

torch.randn()

torch.randn(*sizes, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False) 生成从均值为0,标准差为1的正态分布中抽样的随机数。

  • *sizes: 输出张量每个维度的大小。可以是整数序列或变量数量的参数。
  • out: 如果提供了,结果将被放入此张量。
  • dtype: 输出张量的所需数据类型。
  • layout: 输出张量的所需布局。
  • device: 输出张量的所需设备。
  • requires_grad: 如果为 True,生成的张量将具有 requires_grad 属性设置为 True,允许进行自动微分。

示例:

python 复制代码
import torch

# 生成一个2x3的张量,其中的元素是从标准正态分布中抽样得到的随机值
正态随机张量 = torch.randn(2, 3)
print(正态随机张量)

这些函数在神经网络的权重初始化、为测试创建合成数据,以及任何需要随机数的场景中都很有用。根据你的具体用例调整大小和其他参数。

相关推荐
风象南4 小时前
普通人用AI加持赚到的第一个100块
人工智能·后端
牛奶4 小时前
2026年大模型怎么选?前端人实用对比
前端·人工智能·ai编程
牛奶4 小时前
前端人为什么要学AI?
前端·人工智能·ai编程
罗西的思考7 小时前
AI Agent框架探秘:拆解 OpenHands(10)--- Runtime
人工智能·算法·机器学习
冬奇Lab8 小时前
OpenClaw 源码精读(2):Channel & Routing——一条消息如何找到它的 Agent?
人工智能·开源·源码阅读
冬奇Lab8 小时前
一天一个开源项目(第38篇):Claude Code Telegram - 用 Telegram 远程用 Claude Code,随时随地聊项目
人工智能·开源·资讯
孟健9 小时前
Karpathy 用 200 行纯 Python 从零实现 GPT:代码逐行解析
python
格砸9 小时前
从入门到辞职|从ChatGPT到OpenClaw,跟上智能时代的进化
前端·人工智能·后端
可观测性用观测云9 小时前
可观测性 4.0:教系统如何思考
人工智能
sunny8659 小时前
Claude Code 跨会话上下文恢复:从 8 次纠正到 0 次的工程实践
人工智能·开源·github