1、单层神经网络
经典的浅层模型,例如线性回归和Softmax回归。前者适用于回归问题:模型最终输出是一个连续值,例如房价;后者适用于分类问题:模型最终输出是一个离散值,例如图片的类别。这两种浅层模型本质上都是单层神经网络。
2、模型
设数据样本数为n,特征数为d。给定批量数据样本的特征和标签
X∈Rn×d
X
∈
R
n
×
d
,线性回归的批量输出
y∈Rn×1
y
∈
R
n
×
1
的计算表达式为
其中 w∈Rd×1 w ∈ R d × 1 和 b∈R b ∈ R 分别为线性回归的模型参数:权重和偏差。用预测值 y^ y ^ 和真实值 y y 之间的平方损失作为模型的损失函数。
3、损失函数
希望模型的估计值和真实值在训练数据集上尽可能接近。用平方损失(square loss)来定义数据样本i上的损失(loss)为
当该损失越小时,模型在数据样本i上的估计值和真实值越接近。已知训练数据集样本数为n。线性回归的目标是找到一组模型参数 w1,w2,b w 1 , w 2 , b 来最小化损失函数
损失函数 ℓ(w1,w2,b) ℓ ( w 1 , w 2 , b ) 可看作是训练数据集中各个样本上损失的平均
4、优化算法
一种常用的优化算法叫做小批量随机梯度下降(mini-batch stochastic gradient descent)(把数据打乱,依次不放回地批量取)。每一次迭代前,我们可以随机均匀采样一个由训练数据样本索引所组成的小批量(mini-batch)
B
B
;然后求小批量中数据样本平均损失有关模型参数的导数(梯度);用此结果与人为设定的正数的乘积作为模型参数在本次迭代的减小量。
|B| | B | 代表每个小批量中的样本个数(批量大小,batch size),η称作学习率(learning rate)并取正数。需要强调的是,这里的批量大小和学习率的值是人为设定的,并不需要通过模型训练学出,也叫做超参数(hyperparameter)。我们通常所说的“调参”指的正是调节超参数。