| 语言 | 格式 | 评分 |
|---|---|---|
中文(简体) | .pdf | 3 |
| 摘要 | ||
文档详细介绍了在PyTorch中创建Tensor的方法,包括从NumPy数组转换、使用ones和zeros创建全1和全0的Tensor,通过eye函数创建对角矩阵,以及利用arange、linspace等函数生成特定范围的数值。此外,文档还展示了如何生成随机数Tensor,如rand、randn和randint函数的使用,以及处理未初始化Tensor的方法。 | ||
| AI总结 | ||
### 文档总结:PyTorch 创建 Tensor 入门
#### 1. 从 NumPy 导入数据
- 使用 `torch.from_numpy()` 可以将 NumPy 数组转换为 PyTorch Tensor。
- 示例:
```python
a = np.array([2, 3.3])
torch.from_numpy(a) # 输出 tensor([2.0000, 3.3000], dtype=torch.float64)
```
#### 2. 创建基础 Tensor
##### ones 和 zeros
- `torch.ones()` 创建全 1 的 Tensor。
```python
torch.ones(3,3) # 输出 tensor([[1., 1., 1.], [1., 1., 1.], [1., 1., 1.]])
```
- `torch.zeros()` 创建全 0 的 Tensor。
```python
torch.zeros(3,3) # 输出 tensor([[0., 0., 0.], [0., 0., 0.], [0., 0., 0.]])
```
##### eye 矩阵
- `torch.eye()` 创建单位矩阵。
```python
torch.eye(3) # 输出 tensor([[1., 0., 0.], [0., 1., 0.], [0., 0., 1.]])
```
#### 3. 数值范围生成
- `torch.linspace()`:在指定区间内生成等差数列。
- `torch.logspace()`:在对数尺度上生成等差数列。
- 示例:
```python
torch.linspace(1, 4, 3) # 输出 tensor([1., 2.5, 4.])
torch.logspace(0, 1, 3) # 输出 tensor([1.0000, 1.7783, 3.1623])
```
#### 4. 未初始化 Tensor
- `torch.empty()`:创建未初始化的 Tensor,值不确定。
```python
torch.empty(2,3) # 输出 tensor([[ 3.1921e+27, 0.0000e+00, -1.0163e+11],
# [ 7.1186e-43, 0.0000e+00, -0.0000e+00]])
```
#### 5. 随机数生成
- `torch.rand()`:生成均匀分布的随机数。
```python
torch.rand(3,3) # 输出 tensor([[0.1489, 0.3039, 0.0103],
# [0.7305, 0.6398, 0.1361],
# [0.0675, 0.8197, 0.0676]])
```
- `torch.rand_like()`:根据现有 Tensor 的形状生成随机数。
```python
a = torch.rand(3,3)
torch.rand_like(a) # 输出与 a 同形状的随机数 Tensor
```
- `torch.randint()`:生成指定范围的整数随机数。
```python
torch.randint(1,10, (3,3)) # 输出 tensor([[8, 4, 2], [1, 2, 7], [3, 6, 2]])
```
#### 6. 注意事项
- `torch.range()` 已弃用,建议使用 `torch.arange()`。
- 可以通过 `.type()` 或 `torch.tensor()` 指定数据类型。
- 创建 Tensor 时,避免使用 `torch.FloatTensor([1,2])`,建议直接使用 `torch.tensor([1,2])`。
#### 7. 示例
- 创建特定形状的全 7 Tensor:
```python
torch.full([1],7) # 输出 tensor([7.])
```
---
### 总结
PyTorch 提供了多种方法创建 Tensor,包括从 NumPy 数组导入、生成基础 Tensor(如全 1、全 0、单位矩阵)、数值范围生成、未初始化 Tensor 以及随机数生成。掌握这些方法可以快速进行深度学习实践。 | ||
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余
9 页请下载阅读 -
文档评分














深度学习与PyTorch入门实战 - 07. 创建Tensor