机器学习视频地址:
4.5 线性回归中的梯度下降_哔哩哔哩_bilibili
损失函数学习地址:
损失函数选择
选凸函数的话,会收敛到全局最小值。证明凸函数用Hessian矩阵。凸函数定义:两点连线比线上所有点都大。
batch理解:
- 在机器学习中,指的是用于一次模型更新的所有样本的集合。当使用批处理进行训练时,每次更新模型参数是基于整个批处理内的所有样本计算得到的梯度。
- batch设置为2的话,数据集6张图片,第一次1 2第二次3 4第三次5 6
梯度下降法学习地址:
numpy学习地址:
Python之Numpy详细教程_python numpy-CSDN博客
numpy常用函数:
np.array([1,2,3])
np.array(
[1,2],
[2,3],
[3,4])
//reshape(-1, 1) 是一种便捷的方式来将任何一维数组转换为列向量,其中 -1 告诉 NumPy 自动计算合适的尺寸以匹配另一维度的大小(在这里是指定的 1)
//reshape(-1, x)可以理解为得到(?,x)的数组
np.array([1, 2, 3]).reshape(-1, 1)
//做点积操作
np.dot(w,x)
特征归一化处理:
Min-Max 归一化:通过线性变换将数据映射到[0, 1]区间内。
Z-score 标准化(Standardization):这种方法将原始数据转换为均值为0、标准差为1的数据分布,即标准正态分布。
L2 正则化(也称为向量归一化):对于每个样本,将其特征向量除以其L2范数,使得每个样本的特征向量长度为1。这在文本分类等需要处理高维度稀疏数据的任务中非常有用。
Batch Normalization:不同于上述针对输入数据的归一化方法,Batch Normalization是在神经网络内部使用的一种技术,通常应用于隐藏层的输出上。它通过对每一批次的小批量数据进行归一化,保持输入到每一层的分布稳定,从而加速训练过程,并允许使用更高的学习率。
Layer Normalization:与Batch Normalization不同,Layer Normalization是基于单个训练样本而不是批次来计算均值和方差,因此不受批次大小的影响,特别适合于循环神经网络(RNN)或需要在线学习的场景。
梯度下降中选择