torch.view()和.reshape()

view只能作用在连续的张量上(张量中元素的内存地址是连续的)。而reshape连续or非连续都可以。

调用x.reshape的时候,如果x在内存中是连续的,那么x.reshape会返回一个view(原地修改,此时内存地址不变),否则就会返回一个新的张量(这时候内存地址变了)。

python 复制代码
import torch

a = torch.rand(2, 3)
b = a.permute(1, 0)  # 地址不连续
c = b.reshape(6)

print(id(a), id(b), id(c))
# 2423946308560 2423946344864 2423946631984

d = b.view(6)  # 报错
相关推荐
算AI几秒前
基于LLM的无人机仿真测试:新方法竞赛夺佳绩
人工智能·深度学习·算法·机器学习·ai
小白说大模型16 分钟前
AI驱动的个性化学习路径:知识图谱与知识点关联的存储与推理
大数据·人工智能·学习·mysql·机器学习·prompt·知识图谱
Groundwork Explorer19 分钟前
W5500 网卡编程初始化与使用指南
python·单片机
王大大的刀19 分钟前
Spring AI 重试引起的 LLM 重复调用
java·人工智能
howdoyoudo20260636 分钟前
AI审计手记 #01(数据补全版):107小时、17,600次操作——OpenAI越狱案完整攻击链量化分析
大数据·人工智能·安全·ai·语言模型
hrrrrxeeeee42 分钟前
不同基础怎么报考 CAIE 认证|Level I 与 Level II 报考指南
大数据·人工智能·产品经理
Tangyuewei1 小时前
388 个 PR:AI 自主运维实测
运维·人工智能
逸Y 仙X1 小时前
MCP(模型控制协议)完全指南:从核心概念到实战开发
python·大模型·llm·ai编程·mcp
OpenMiniServer1 小时前
复利普化型社会——从关系协同走向产业协同
人工智能
大模型丫丫1 小时前
检索增强生成(RAG)入门:原理、架构与实践
人工智能·rag