🧠AI 冷知识
你知道吗?
这些有趣的 AI 小知识可能让你大吃一惊
🧮
Tensor的隐身术PyTorch的Tensor和NumPy的ndarray在内存中共享同一块数据——通过tensor.numpy()转换时,数据根本不会被复制!这意味着修改一个会影响另一个,除非你显式调用.copy()。这个"零拷贝"设计让PyTorch和NumPy的互操作快如闪电。
一句话总结
💡
Tensor 是 PyTorch 的核心数据结构,是支持 GPU 加速与自动求导的多维数组。
常见误区
这些坑别踩
✗
误区 1
Tensor 和 NumPy 的 ndarray 完全等价。
✓
正确理解
Tensor 可在 GPU 上运算并支持自动求导,而 ndarray 仅在 CPU 且不跟踪梯度;二者可通过 from_numpy / numpy 互转但特性不同。
✗
误区 2
改变 Tensor 形状一定会复制数据。
✓
正确理解
view / reshape 只是改变视图元信息,非连续时 reshape 可能复制,但通常不复制底层数据;reshape 在非连续时可能触发复制以保证正确性。
✗
误区 3
两个 Tensor 只要形状相同就能做运算。
✓
正确理解
还需在同一设备(device)且 dtype 兼容,否则会报错;形状相同但设备不同的 Tensor 不能直接运算。