模型的参数
可训练参数(Trainable Parameters)和超参数(Hyperparameters)。这两类参数在训练过程中有不同的作用和调整方式。
1. 可训练参数(Trainable Parameters)
可训练参数是模型内部的参数,它们在训练过程中通过优化算法(如梯度下降)自动调整,以最小化损失函数。这些参数是模型学习数据特征和模式的关键。
示例
-
线性回归:权重(Weights)和偏置(Bias)。
-
神经网络:每一层的权重矩阵和偏置向量。
-
卷积神经网络(CNN):卷积核的权重和偏置。
在训练过程中,这些参数会根据数据自动更新。例如,在神经网络中,通过反向传播算法计算损失函数对每个参数的梯度,并通过梯度下降或其他优化算法更新参数。
2. 超参数(Hyperparameters)
超参数是模型训练过程中需要手动设置的参数,它们控制模型的结构和训练过程。超参数的选择对模型的性能有重要影响,但它们不会在训练过程中自动更新。
常见的超参数
-
学习率(Learning Rate):控制参数更新的步长。
-
正则化参数(Regularization Parameter):用于防止过拟合,如 L1、L2 正则化参数。
-
批量大小(Batch Size):每次训练时使用的数据量。
-
迭代次数(Number of Epochs):训练过程中的完整数据遍历次数。
-
神经网络的层数和每层的神经元数量:控制模型的复杂度。
-
优化算法(Optimizer):如 SGD、Adam、RMSprop 等。
训练过程中参数的调整
在训练过程中,模型会自动调整可训练参数,但超参数需要手动调整。以下是具体的调整方式:
可训练参数的调整
-
定义损失函数:选择一个合适的损失函数来衡量模型的预测值与真实值之间的差异。
-
选择优化算法:选择一个优化算法(如梯度下降)来最小化损失函数。
-
反向传播:通过反向传播计算损失函数对每个可训练参数的梯度。
-
参数更新:根据梯度和学习率更新可训练参数。
超参数的调整
-
网格搜索(Grid Search):尝试所有可能的超参数组合,选择最优的组合。
-
随机搜索(Random Search):随机选择超参数组合,选择最优的组合。
-
贝叶斯优化(Bayesian Optimization):使用贝叶斯方法来优化超参数。
-
基于验证集的调整:在验证集上评估模型性能,根据性能表现手动调整超参数。
示例
假设你正在训练一个简单的线性回归模型: y=wx+b 其中:
-
w 和 b 是可训练参数。
-
学习率、正则化参数等是超参数。
在训练过程中:
-
可训练参数 w 和 b 会根据数据自动更新。
-
超参数(如学习率)需要你手动选择和调整。
总结
-
可训练参数:模型内部的参数,通过训练自动调整。
-
超参数:控制模型结构和训练过程的参数,需要手动调整。
-
训练过程:可训练参数通过优化算法自动更新,超参数通过验证集性能手动调整。