分类、回归基本原理
最常见的监督式学习任务包括回归任务(预测值)和分类任务(预测类)。
在现实生活中,连续值预测问题是非常常见的,比如股价的走势预测、天气预报中温度和湿度等的预测、年龄的预测、交通流量的预测等。对于预测值是连续的实数范围,或者属于某一段连续的实数区间,我们把这种问题称为回归(Regression)问题。特别地,如果使用线性模型去逼近真实模型,那么我们把这一类方法叫做线性回归,线性回归是回归问题中的一种具体的实现。
除了连续值预测问题以外,还有离散值预测问题。比如说硬币正反面的预测,它的预测值y只可能有正面或反面两种可能;再比如说给定一张图片,这张图片中物体的类别也只可能是像猫、狗、天空之类的离散类别值。对于这一类问题,我们把它称为分类(Classification)问题。
张量的创建
张量(Tensors)类似于NumPy的ndarrays,但张量可以在GPU上进行计算。 所以从本质上来说,PyTorch是一个处理张量的库。一个张量是一个数字、向量、矩阵或任何n维数组。
下面分别展示了0维张量到n位张量:
import torch
import numpy
torch.manual_seed(7) # 固定随机数种子
在深度学习中,我们通常会频繁地对数据进行操作。我们初窥张量,要学会如何去创建、操作张量。建议不要一开始就花费大量时间来研究明白API的作用,可以结合最后的线性回归模型等实战来学习。
张量的创建
张量(Tensors)类似于NumPy的ndarrays(点NumPy实践了解),但张量可以在GPU上进行计算。 所以从本质上来说,PyTorch是一个处理张量的库。一个张量是一个数字、向量、矩阵或任何n维数组。
下面分别展示了0维张量到n位张量: Image
import torch
import numpy
torch.manual_seed(7) # 固定随机数种子
1
import torch
2
import numpy
3
torch.manual_seed(7) # 固定随机数种子
<torch._C.Generator at 0x7f168427f780>
一、直接创建
- torch.tensor(data, dtype=None, device=None, requires_grad=False,
pin_memory=False) - 功能:从data创建tensor
- data: 数据,可以是list,numpy
- dtype: 数据类型,默认与data的一致
- device: 所在设备,cuda/cpu requires_grad: 是否需要梯度
- pin_memory: 是否存于锁页内存
torch.tensor([[0.1, 1.2], [