一、线性回归基本要素
1、模型线性回归假设输出与各个输入之间是线性关系,
例如:
price=warea⋅area+wage⋅age+b
2、训练数据集(training data set)或训练集(training set):收集的真实数据,在这个数据上面寻找模型参数来使模型的预测价格与真实价格的误差最小。一栋房屋被称为一个样本(sample),其真实售出价格叫作标签(label),用来预测标签的两个因素叫作特征(feature)。特征用来表征样本的特点。3、 损失函数模型训练中,通常采用平方误差函数衡量价格预测值与真实值之间的误差。数值越小表示误差越小。
表达式为
4、优化函数-随机梯度下降
先选取一组模型参数的初始值,如随机选取;接下来对参数进行多次迭代,使每次迭代都可能降低损失函数的值。在每次迭代中,先随机均匀采样一个由固定数目训练数据样本所组成的小批量(mini-batch),然后求小批量中数据样本的平均损失有关模型参数的导数(梯度),最后用此结果与预先设定的一个正数的乘积作为模型参数在本次迭代的减小量
其中为学习率,即学习步长的大小
为批量大小
优化模型有两个步骤:
(1)初始化模型参数
(2)在数据上多次迭代,通过在负梯度方向来更新模型参数pytorch的一些使用:
1、torch.ones(n):创建n维1张量
2、torch.zeros(n):创建n维0张量
3、torch.randn(num_examples, num_inputs,dtype=torch.float32)labels.numpy():将张量转换为array
4、dataset = Data.TensorDataset(features, labels) :合并数据集的特征和标签
5、torch.nn.Linear(in_features,out_features,bias=True
)6、w.requires_grad_(requires_grad=True)张量的自动求导
7、view():resize功能
8、l.backward() :计算批样本损失
9、sgd([w, b], lr, batch_size):调用随机梯度下降处理批
10、w.grad.data.zero_():梯度的清零
11、torch.manual_seed(1):固定随机数
12、np.random.normal(0, 1, (num_examples, num_inputs)):生成正态分布,均值为0,标准差为1,输出矩阵的shape为: (num_examples, num_inputs)
Softmax的基本概念
一、权重矢量
二、神经网络图softmax回归是一个单层神经网络,由于每个输出的计算都要依赖于所有的输入,所以softmax的输出层是一个全连接层。
Softmax运算不改变预测类别输出。
三、pytorch的使用
1、torchvision包:服务于PyTorch深度学习框架的,主要用来构建计算机视觉模型。torchvision主要由以下几部分构成:
1)torchvision.datasets: 一些加载数据的函数及常用的数据集接口;
2)torchvision.models: 包含常用的模型结构(含预训练模型),例如AlexNet、VGG、ResNet等;
3)torchvision.transforms: 常用的图片变换,例如裁剪、旋转等;
4)torchvision.utils: 其他的一些有用的方法。用法:class torchvision.datasets.FashionMNIST(root, train=True, transform=None, target_transform=None, download=False) root(string)– 数据集的根目录,其中存放processed/training.pt和processed/test.pt文件。train(bool, 可选)– 如果设置为True,从training.pt创建数据集,否则从test.pt创建。download(bool, 可选)– 如果设置为True,从互联网下载数据并放到root文件夹下。如果root目录下已经存在数据,不会再次下载。transform(可被调用 , 可选)– 一种函数或变换,输入PIL图片,返回变换之后的数据。如:transforms.RandomCrop。target_transform(可被调用 , 可选)– 一种函数或变换,输入目标,进行变换。
来源:CSDN
作者:weixin_43177538
链接:https://blog.csdn.net/weixin_43177538/article/details/104318270