Tensor又名张量,也是Tensorflow等框架中的重要数据结构。它可以是一个数(标量),一维数组(向量),二维数组或更高维数组。Tensor支持GPU加速。
创建Tensor
几种常见创建Tensor的方法
举例:
生成全为1的Tensor
生成全为0的Tensor
随机生成
对角线元素为1
常用Tensor操作
通过tensor.view
方法可以调整tensor的形状,但必须保证调整前后元素总数一致。view
不会修改自身的数据,返回的新tensor与源tensor共享内存,也即更改其中的一个,另外一个也会跟着改变。在实际应用中可能经常需要添加或减少某一维度,这时候squeeze
和unsqueeze
两个函数就派上用场了。
resize
是另一种可用来调整size
的方法,但与view
不同,它可以修改tensor的大小。如果新大小超过了原大小,会自动分配新的内存空间,而如果新大小小于原大小,则之前的数据依旧会被保存,看一个例子。