机器学习中的模型复杂度、正则化与人工神经网络设计
1. 模型容量与复杂度
模型容量/复杂度指的是模型能够处理的变化程度。容量越高,模型能应对的变化就越多。例如,与模型 $y_4$ 相比,模型 $y_1$ 的容量较小。在多项式模型中,多项式的次数越高,模型的容量越大。
虽然多项式次数越高,对数据的拟合效果越好,但同时也会增加模型的复杂度。使用容量过高的模型可能会导致过拟合,即模型在训练数据上表现良好,但在未见过的数据上表现不佳。机器学习的目标是创建一个不仅对训练数据鲁棒,而且对未见过的数据样本也鲁棒的模型。
以 $y_4$ 为例,它是一个四次多项式模型,虽然能很好地拟合已见数据,但对未见数据的表现较差。这是因为新特征 $x_4$ 捕捉了过多不必要的细节,使模型过于复杂。如果知道要移除哪些特征,我们可以将其移除,回到三次多项式模型 $y_3$($\Theta_4x^4 + \Theta_3x^3 + \Theta_2x^2 + \Theta_1x + \Theta_0$)。但在实际工作中,我们往往不知道要移除哪些特征。
如果不想完全移除某个特征,而只是想对其进行惩罚,可以修改损失函数。例如,为了最小化 $\Theta_4x^4$,我们可以最小化 $\Theta_4$。如果该特征非常差,可以将 $\Theta_4$ 设为 0,如方程 2 - 19 所示:
[L_{new} = \sum_{i = 0}^{N} (f(x_i) - d_i) + \Theta_4x_4 * 0]
这样就回到了三次多项式方程 $y_3$,它虽然对已见数据的拟合不如 $y_4$ 完美,但对未见数据的表现通常更好。
如果 $x_4$ 是一个相对较好的特
模型复杂度与神经网络设计
超级会员免费看
订阅专栏 解锁全文
674

被折叠的 条评论
为什么被折叠?



