| 语言 | 格式 | 评分 |
|---|---|---|
中文(简体) | .pdf | 3 |
| 摘要 | ||
文档介绍了PyTorch中张量的统计属性,包括如何计算范数、均值、和、最大值、最小值、argmax、argmin、kthvalue和topk等。通过代码示例展示了这些方法的应用,涉及不同维度和参数的设置。文档还提到了矩阵范数和向量范数的区别,并通过具体例子说明了如何使用这些统计方法。 | ||
| AI总结 | ||
《深度学习与PyTorch入门实战 - 13. Tensor统计》主要介绍了PyTorch中张量(Tensor)的统计功能及其使用方法。以下是文档的核心内容总结:
---
### 1. **基本统计方法**
PyTorch提供了多种统计功能,包括:
- **`mean`**:计算均值。
- **`sum`**:计算总和。
- **`min`**:计算最小值。
- **`max`**:计算最大值。
- **`prod`**:计算元素乘积。
- **`argmin`**:返回最小值的索引。
- **`argmax`**:返回最大值的索引。
**示例:**
```python
a = torch.arange(8).view(2,4).float()
a.min(), a.max(), a.mean(), a.prod() # 输出:(tensor(0.), tensor(7.), tensor(3.5000), tensor(0.))
a.sum() # 输出:tensor(28.)
```
---
### 2. **范数(Norm)**
范数用于衡量张量的大小,常见的范数包括:
- **L1范数**:绝对值之和。
- **L2范数**:平方和的平方根。
**示例:**
```python
a = torch.full([8], 1)
b = a.view(2,4)
c = a.view(2,2,2)
# 计算不同范数
a.norm(1), b.norm(1), c.norm(1) # 输出:(tensor(8.), tensor(8.))
a.norm(2), b.norm(2), c.norm(2) # 输出:(tensor(2.8284), tensor(2.8284))
```
---
### 3. **比较运算**
PyTorch提供了多种比较运算符:
- **`torch.gt(a, b)`**:判断a是否大于b。
- **`torch.eq(a, b)`**:判断a是否等于b。
- **`torch.equal(a, b)`**:判断两个张量是否完全相同。
**示例:**
```python
a = torch.ones(2,3)
b = torch.randn(2,3)
torch.eq(a, b) # 输出:tensor([[0, 0, 0], [0, 0, 0]], dtype=torch.uint8)
torch.eq(a, a) # 输出:tensor([[1, 1, 1], [1, 1, 1]], dtype=torch.uint8)
torch.equal(a, a) # 输出:True
```
---
### 4. **k-th值与Top-k值**
PyTorch提供了以下方法来获取特定的k-th值:
- **`kthvalue`**:返回指定k-th值及其索引。
- **`topk`**:返回前k大的值及其索引。
**示例:**
```python
a = torch.randn(4,10)
a.topk(3, dim=1) # 输出:(tensor([[0.8362, -0.1068, -0.1281], ...]), tensor([[8, 6, 5], ...]))
a.kthvalue(3, dim=1) # 输出:(tensor([−0.3806, −0.4974, −0.1624, −0.8415]), tensor([5, 9, 3, 6]))
```
---
### 5. **总结**
PyTorch的统计功能涵盖了从基本的均值、求和到复杂的范数计算、Top-k值提取等操作,适用于深度学习中的特征处理、归一化等场景。通过这些方法,可以高效地对张量进行统计分析和操作。 | ||
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余
4 页请下载阅读 -
文档评分














深度学习与PyTorch入门实战 - 13. Tensor统计