torch.rand()和torch.randn()的区别

torch.rand() 和 torch.randn() 是 PyTorch 中用于生成张量的两个函数,它们之间的主要区别在于生成张量元素的方式不同:

1.torch.rand():

torch.rand() 用于生成元素值在 [0, 1) 之间均匀分布的随机张量。

返回的张量中的每个元素都是从区间 [0, 1) 的均匀分布中随机采样得到的。

示例:

python 复制代码
import torch

# 生成一个形状为 (2, 3) 的随机张量,值在 [0, 1) 的均匀分布中随机取样
x = torch.rand(2, 3)

2.torch.randn():

torch.randn() 用于生成元素值服从标准正态分布(均值为0,方差为1)的随机张量。

返回的张量中的每个元素都是从标准正态分布中随机采样得到的。

python 复制代码
import torch

# 生成一个形状为 (2, 3) 的随机张量,值服从标准正态分布
x = torch.randn(2, 3)

总的来说,torch.rand() 生成的张量中的元素值来自 [0, 1) 的均匀分布,而 torch.randn() 生成的张量中的元素值来自标准正态分布。因此,你可以根据需要选择合适的随机初始化方法。

相关推荐
Larcher32 分钟前
从零搭建 MCP 服务——让 AI 拥有无限扩展能力
人工智能·程序员
zzzzzz31034 分钟前
你的 AI 写的 React 烂透了?这个 8000+ Star 的开源工具能揪出 90% 的「Agent 屎山」
人工智能
小星AI37 分钟前
MCP协议超详细教程,从入门到实战
人工智能
小星AI38 分钟前
Kimi Code CLI 超详细教程,附源码
人工智能·agent
牧艺1 小时前
Cursor Rules / Skills 分层设计:让 Agent 像「团队新同事」
前端·人工智能·cursor
shepherd1111 小时前
一文带你掌握 LLM、Token、Context、Prompt、RAG、MCP、Skill、Agent 等 AI 核心概念
人工智能·后端·ai编程
小林ixn2 小时前
MCP 保姆级入门指南:AI 的“万能充电口”到底怎么玩?
人工智能
转转技术团队3 小时前
没有测试的核心代码,怎么交给 AI 重构
人工智能
爱读源码的大都督4 小时前
Claude Code源码分析(三):为什么系统提示词中需要有tools呢?
前端·人工智能·后端