torch.empty()造成的内存溢出问题

torch.empty()造成的内存溢出问题

问题

代码实现的时候遇见了一个很奇怪的问题,运行同一段代码会出现一些奇怪的超大指数值,调试发现是混淆了torch.empty 和torch.zeros的概念。对torch.empty初始化的矩阵直接"+=",出现的内存问题。

例如:

python 复制代码
import torch

a = torch.empty((3,4))
a += 1

上述代码不会报错,但是结果不正确。

原因

这是由于torch.empty 创建了矩阵会分配一个内存地址,该地址对应的数据是随机的,可能跟你上一次的缓存或者其他数据有关

例如

python 复制代码
a = torch.empty((3,4))
#
# tensor([[6.8943e+34, 1.6212e-19, 1.4586e-19, 7.7179e+28],
#        [1.6217e-19, 1.4586e-19, 1.8617e+25, 1.6212e-19],
#        [1.4587e-19, 1.1578e+27, 3.3248e-06, 6.0542e+22]])

这里的矩阵值是随机的,因此torch.empty只起到一个占位的作用,只有需要赋值的时候可以使用,

但是如果明确需要初始值为0,需要torch.zeros

PS: 不排除有一定的机率初始化为0,这就造成程序有一些偶然机会会正常运行

相关推荐
IALab-检测行业AI报告生成18 小时前
IACheck AI 报告审核助手:整体架构与详细结构说明
大数据·人工智能·架构·ai报告审核
码农杂谈000718 小时前
AI 原生企业内容管理:4 大转型策略,破解老软件 AI 升级难题
大数据·人工智能·内容中台·企业内容管理系统·内容生产·ai内容生产·生成式 ai 品牌力
清水白石00818 小时前
突破并行瓶颈:Python 多进程开销全解析与 IPC 优化实战
开发语言·网络·python
rayufo18 小时前
包含思维链CoT的最小大模型
人工智能·chatgpt
麦麦大数据18 小时前
M003_中药可视化系统开发实践:知识图谱与AI智能问答的完美结合
人工智能·flask·llm·vue3·知识图谱·neo4j·ner
生成论实验室19 小时前
即事经:一种基于生成论的宇宙、生命与文明新范式
人工智能·科技·神经网络·算法·信息与通信
量子-Alex19 小时前
【大模型思维链】RAP中如何通过提示词将LLM改造为世界模型
人工智能·深度学习·机器学习
Lupino19 小时前
IoT 平台可编程化:基于 Pydantic Monty 构建工业级智能自动化链路
python
码农杂谈000719 小时前
企业人工智能:2026 避坑指南,告别工具摆设,实现 AI 价值变现
人工智能·百度
tuotali202619 小时前
氢气压缩机技术核心要点测评
大数据·人工智能