高级索引操作可以帮助用户灵活地对Tensor进行取值、切片等操作,以便进行更加复杂的计算。
1.Tensor的底层实现
本节介绍更能体现向量化思想的高级索引操作,要理解这些操作,需要熟悉Tensor的底层实现。
Tensor的底层使用C/C++实现,它可以用于存储数据,还可以定义如何对数据进行操作。Tensor与Python list最大的区别是:Tensor利用一个连续的内存区域去存储数据,这些数据都未经过封装;list中的每个数据都会被封装成PyObject对象,每个对象独立分配内存,离散地存储在内存当中。
在PyTorch底层使用Storage