Date 15
1. Table
1.1 zip()
函数是 Python 中的一个内置函数,用于将多个可迭代对象打包成一个元组的迭代器。
2. Pytorch 中的函数小结
2.0 连续(contiguous)
在 pytorch 中,张量是连续的是指张量存储在内存的方式————其数据在内存中的排列是按行顺序排列的,没有跳过任何数据间隙。
- is_contiguous() 和 contiguous()
is_contiguous() 用于判断张量是否是连续的;
contiguous() 可以重新开辟一块内存重新排列数据,使得张量按顺序存储。
2.1 transpose() 和 permute()
两个都是用于改变张量唯独顺序的操作,都只是改变张量的视图。
- transpose() 用于交换张良的两个维度。
- 用法:
tensor.transpose(dim1, dim2)
- 用法:
- permute() 允许按照指定的顺序重新排列所有的维度。
- 用法:
tensor.permute(*dims)
- 用法:
2.2 view() 和 reshape()
都用于改变张量的形状,有着不同的特点。
-
view()
- 用法:
tensor.view(new_shape)
-
Note: 它要求张量必须是连续的,否者会报错。
- 用法:
-
reshape()
- 用法:
tensor.reshape(new_shape)
-
reshape()
不要求张量必须是连续的,如果张量是非连续的,它会尝试返回一个新的内存拷贝。
- 用法: