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)  # 报错
相关推荐
船长@Quant8 分钟前
文档构建:Sphinx全面使用指南 — 基础篇
python·markdown·sphinx·文档构建
kadog9 分钟前
PubMed PDF下载 cloudpmc-viewer-pow逆向
前端·javascript·人工智能·爬虫·pdf
喵手14 分钟前
从 Java 到 Kotlin:在现有项目中迁移的最佳实践!
java·python·kotlin
liuweidong080217 分钟前
【Pandas】pandas DataFrame rsub
开发语言·python·pandas
亿坊电商28 分钟前
AI数字人多模态技术如何提升用户体验?
人工智能·ux·ai数字人
CH3_CH2_CHO1 小时前
不吃【Numpy】版
开发语言·python·numpy
不吃香菜?1 小时前
PyTorch 实现食物图像分类实战:从数据处理到模型训练
人工智能·深度学习
Jackilina_Stone1 小时前
【论文阅读】平滑量化:对大型语言模型进行准确高效的训练后量化
人工智能·llm·量化·论文阅读笔记
-曾牛1 小时前
企业级AI开发利器:Spring AI框架深度解析与实战
java·人工智能·python·spring·ai·rag·大模型应用
TMT星球2 小时前
商汤绝影生成式AI汽车新品亮相上海车展,引领AI汽车创新潮流
人工智能·汽车