从numpy到pytorch实现逻辑回归
逻辑回归常用于二元分类任务,其使用交叉熵损失进行梯度计算,实现步骤如下:
- 加载、打乱、标准化训练和测试数据
- 设计分类器、损失函数和梯度更新函数
- 用训练数据计算目标函数和精度
- 用训练数据计算损失函数和梯度,并更新梯度
- 重复
3-4
步,直到精度达到要求或达到指定迭代次数 - 用测试数据计算目标函数和精度
使用numpy
和pytorch
分别实现小批量梯度下降的2
分类逻辑回归
逻辑回归常用于二元分类任务,其使用交叉熵损失进行梯度计算,实现步骤如下:
3-4
步,直到精度达到要求或达到指定迭代次数使用numpy
和pytorch
分别实现小批量梯度下降的2
分类逻辑回归
逻辑回归(logistic regression
)是分类算法,常用于二元分类
首先利用numpy
实现梯度下降解决多变量线性回归问题,然后逐步将操作转换成pytorch
实现步骤如下:
3-5
步,直到完成迭代次数多变量线性回归测试数据参考ex1data2.txt
梯度下降是求解函数最小值的算法,也称为最速下降法,它通过梯度更新不断的逼近最优解
常用的比喻是下山问题,通过计算梯度能够找到函数值变化最快的地方,通过步长决定收敛的速度
梯度下降方法包括批量梯度下降、随机梯度下降和小批量梯度下降,下面通过梯度下降计算多变量线性回归问题
指定标签块名
指定标签块名+起始标签页+标签页名
指定标签块名+起始标签页+FontAwesome
符号
子标签块设置
This is Tab 1.
This is Tab 2.
This is Tab 3.
This is Sub Tab 1.
This is Sub Tab 2.
This is Sub Tab 3.
嵌套子标签块设置
This is Tab 1.
This is Tab 2.
This is Tab 3.
This is Sub Tab 1.
This is Sub Tab 2.
This is Sub Tab 3.
This is Sub-Sub Tab 1 of Sub Tab 3.
This is Sub-Sub Tab 2 of Sub Tab 3.
This is Sub-Sub Tab 3 of Sub Tab 3.
正态分布(normal distribution
),也称为常态分布,高斯分布(gaussian distribution
),是连续随机变量概率分布的一种,自然界中大量现象符合正态分布,比如身高/体重/成绩/收入/寿命
在多变量回归或分类问题上,需要保证这些变量的取值范围具有同一尺度
原因一:确保大尺度变量不会左右分类器的分类结果。如果分类器利用结果变量的距离来计算损失函数,那么小尺度变量的变化会被忽略,大尺度变量会决定分类效果 原因二:帮助梯度下降算法收敛更快。参考机器学习--特征缩放/均值归一化,从损失函数等值线图可知,变量在同一尺度下能够更快的通过梯度下降算法收敛
常用的特征缩放方法包括标准化(或称为规范化)和区间缩放
进行图像处理经常需要使用图像数据集,常用的包括cifar-10/mnist等等
很多时候也需要自己进行图像的采集,如何有效的保存和管理这些图像,以及训练完成后得到的数据?参考DATA LOADING AND PROCESSING TUTORIAL进行图像数据集的制作
cifar-100数据集解析和cifar-10数据集解析类似,区别在于cifar-100
共20
个超类(superclass
),100
个子类,所以每张图像有两个标签:超类标签(coarse label
)和子类标签(fine label
)