上下文:我正在构建一个用于文本分类的 CNN 分类器。我有一个包含 20 个不同类别和大约 20,000 个标记特征的数据集(感兴趣的人可以使用 20 个新闻组数据集)。
我想知道我是否在太多的时期训练我的模型,这将使它非常擅长对我的训练数据集中的特征进行分类,但无法适应新的/略有不同的输入。这就是我们所说的“过拟合”吗?这个词对我来说不是很清楚。
此外,我想澄清神经网络的“收敛”一词。当精度开始趋于平稳时,是否达到了这种收敛?还是跟损失值有关?
上下文:我正在构建一个用于文本分类的 CNN 分类器。我有一个包含 20 个不同类别和大约 20,000 个标记特征的数据集(感兴趣的人可以使用 20 个新闻组数据集)。
我想知道我是否在太多的时期训练我的模型,这将使它非常擅长对我的训练数据集中的特征进行分类,但无法适应新的/略有不同的输入。这就是我们所说的“过拟合”吗?这个词对我来说不是很清楚。
此外,我想澄清神经网络的“收敛”一词。当精度开始趋于平稳时,是否达到了这种收敛?还是跟损失值有关?
您对时代的评论是正确的。因此,如果您使用的 epoch 太少,您可能会欠拟合,而使用太多的 epoch 会导致过度拟合。如您所知,您始终可以通过增加模型复杂度和增加 epoch 步数来任意提高训练精度。尝试缓解此问题的一种方法是提前停止。在伪代码中:
N时期:
这与您在机器学习方法中使用的经典交叉验证技术非常相似。
关于收敛,如果您的误差度量和权重在几次迭代中相对恒定,您通常会说网络已经收敛到某个局部最小值。