为啥我们需要正则化来训练 MaxEnt?
Posted
技术标签:
【中文标题】为啥我们需要正则化来训练 MaxEnt?【英文标题】:why do we need regularization for training MaxEnt?为什么我们需要正则化来训练 MaxEnt? 【发布时间】:2015-06-27 15:48:35 【问题描述】:我正在阅读 jurafsky 的 NLP 书籍,其中提到为了训练 MaxEnt,我们需要调整权重以防止过度拟合。但我不明白为什么会这样。 如果我们不使用正则化,任何人都可以解释在训练过程中如何发生过拟合吗?
【问题讨论】:
【参考方案1】:我没有读过那本书,但作为机器学习的从业者,我可以告诉你,任何类型的模型都可能出现过拟合。 MaxEnt 也不例外。
您可能应该问的问题是,“什么是过拟合,是什么原因造成的?”
查看:Distinguishing overfitting vs good prediction
考虑到您正在处理的训练数据量,当您尝试估计过多的系数时,或者更一般地说,模型过于灵活时,往往会发生过度拟合。结果是您的模型将“学习”数据中的噪声,从而降低其样本外的预测准确性。
有两种处理过拟合的方法。要么 (1) 获得更多训练数据,要么 (2) 降低模型的复杂性。正则化属于类别 (2),通过惩罚“复杂”解决方案来发挥作用,从而减少方差。 “复杂”的含义因模型类型而异。
在线和介绍 ML 教科书中有大量关于过拟合和正则化的材料。如果你想要一个通俗易懂的解释,我推荐 Abu-Mostafa 从数据中学习。
【讨论】:
以上是关于为啥我们需要正则化来训练 MaxEnt?的主要内容,如果未能解决你的问题,请参考以下文章