完全无基础。暂作笔记。
1.基本概念
制作基础模型
收集真实数据集:寻找模型参数
损失函数:衡量预测值与真实值之间的误差。通常我们会选取一个非负数作为误差,且数值越小表示误差越小。
两种损失函数介绍的简书
https://www.jianshu.com/p/b715888f079b
https://www.jianshu.com/p/b715888f079b
优化函数:无法使用损失函数评估(解析解),采用优化函数减少损失(数值解)
小批量随机梯度下降(mini-batch stochastic gradient descent)
先选取一组模型参数的初始值,如随机选取;接下来对参数进行多次迭代,使每次迭代都可能降低损失函数的值。在每次迭代中,先随机均匀采样一个由固定数目训练数据样本所组成的小批量(mini-batch),然后求小批量中数据样本的平均损失有关模型参数的导数(梯度),最后用此结果与预先设定的一个正数的乘积作为模型参数在本次迭代的减小量。
2.实现
线性回归模型从零开始的实现
线性回归模型使用pytorch的简洁实现
softmax和分类模型:
softmax回归的基本概念
如何获取Fashion-MNIST数据集和读取数据
softmax回归模型的从零开始实现,实现一个对Fashion-MNIST训练集中的图像数据进行分类的模型
使用pytorch重新实现softmax回归模型
线性回归预测种类数值,softmax预测离散值
使用离散的数值来表示类别
例如 假设真实标签为狗、猫或者鸡,这些标签对应的离散值为y1 y2 y3.对应的数值为1,2,3
问题:1.无法直观判断数值的意义 2.误差难以衡量
1.softmax运算符(softmax operator)将输出值变换成值为正且和为1的概率分布
2.计算效率
单样本矢量计算表达式
权重设为矩阵
小批量矢量计算表达式
交叉熵损失函数
也可以使用平方损失估计(过于严格)
模型训练和预测
把预测概率最大的类别作为输出类别。如果它与真实类别(标签)一致,说明这次预测是正确的。使用准确率(accuracy)来评价模型的表现
获取Fashion-MNIST训练集和读取数据
torchvision包,它是服务于PyTorch深度学习框架的,主要用来构建计算机视觉模型。torchvision主要由以下几部分构成:
torchvision.datasets: 一些加载数据的函数及常用的数据集接口;
torchvision.models: 包含常用的模型结构(含预训练模型),例如AlexNet、VGG、ResNet等;
torchvision.transforms: 常用的图片变换,例如裁剪、旋转等;
torchvision.utils: 其他的一些有用的方法。
多层感知机
1.多层感知机的基本知识
2.使用多层感知机图像分类的从零开始的实现
3.使用pytorch的简洁实现
以多层感知机(multilayer perceptron,MLP)为例
隐藏层
虽然神经网络引入了隐藏层,却依然等价于一个单层神经网络
激活函数
解决方法之一:添加一个非线性变换
ReLU函数
Sigmoid函数
tanh函数
来源:CSDN
作者:陈锐Rain
链接:https://blog.csdn.net/weixin_43222669/article/details/104319537