在调优NLP模型时使用J-K-fold交叉验证来减少方差

2019-03-25 08:01吉祥飞李明东
电脑知识与技术 2019年3期
关键词:自然语言处理

吉祥飞 李明东

摘要:K-fold交叉验证(CV)是估计机器学习模型真实性能的常用方法。CV的过程需要数据的随机划分,因此性能评估实际上是随机的,具有可变性,这对于自然语言处理任务是非常重要的。所以建议使用较少变化的J-K-fold CV,其中J个独立的K-fold交叉验证用于评估性能。实验结果表明,通过重复的J-K-fold交叉验证进行调优能减少方差。

关键词:J-K-fold交叉验证;自然语言处理;调优

中图分类号:TP393        文献标识码:A        文章编号:1009-3044(2019)03-0008-02

近年来,机器学习的主要关注点一直是模型性能。需要精确地预测模型在实际应用时的表现,即预测或泛化误差;模型从其训练集中泛化的能力。模型性能的精确估计对于模型之间的选择和最优模型参数的选择至关重要。对用于训练模型的相同数据进行预测误差的估计会导致对预测误差的严重低估,这是不明智的。简单的替代方法是将数据随机分成训练和测试集,或训练、验证和测试集,使用训练集训练的模型,对验证集和测试集上的性能进行调优,以报告拟合模型的性能。更复杂的方法是基于重新采样和更有效地利用数据;包括bootstrapping[1]和K-fold交叉验证(CV)[2]。由于bootstrapping具有很高的计算成本,并且容易低估预测误差,因此通常将CV作为估计预测误差的默认方法。

每一种评估方法都涉及对数据进行一个或多个随机分区。数据的这种随机分离导致了我们的预测估计值的变化,我们将其定义为内部变化。虽然之前讨论过这种内部可变性[3][4],但是对于这个问题的数据集和模型的理解是很差的。由于模型只训练在一个子集上,所以它不能达到像访问所有数据那样的高性能。Zhang和Yang[5]认为,评估性能、模型选择和参数调优对估计量的偏差和方差有不同的要求。特别是,只要偏差在不同的模型/参数之间近似恒定,对所选模型的影响就很小。如果我们估计的方差超过了模型性能的实际差异,我们就不能区分参数和噪声之间的差异。降低交叉验证的内部方差是本文的重点。

1 通过重复的J-K-fold交叉验证进行调优

仅考虑一个分区不能提供关于性能评估中存在的可变性的数量的信息。我们必须查看由1000个不同分区选项产生的调优模型。这种观察激发了重复K-fold CV的使用,也称为J-K-fold CV;K-fold CV估计值的平均值来自J不同的分区选择。实验证明,重复的CV降低了内部的变异性,从而稳定了预测误差,特别是对于较小的数据集。我们可以单独考虑K和J的选择。K增加以减少偏差,而J减少内部变化。有效的参数调优对方差比对偏差更敏感。因此,在我们的调优能够从减少的偏差中获益之前,我们首先需要减少内部的可变性。

我们考虑使用LSTM在Li[6]收集的基准twitter数据集中使用特定于twitter的情绪词向量来执行目标依赖情绪分类。6248个句子中的每一个都带有一个目标元素,任务是预测该元素的情绪(积极的、消极的或中性的)。在这些实验中,我们将最大的时间间隔固定为100,当我们发现5个连续时间的验证集性能没有改善时,就停止训练。对于每个J?K模型,验证集是模型训练数据的随机20%,因此可以认为只是一个随机分区的一部分。我们使用具有默认学习参数的ADAM优化器,批处理大小为32。

我们进行了两个实验: 在网格{10、20、30、90}中对LSTM层(称为宽度)的节点数进行调优,并分别在{0.00001,0.001,0.1}调优输入和偏差(固定宽度为50)的L2正则化量。如图1(a)所示,普通1-10-fold CV根本不适合调优LSTM的宽度,因为它在30到90之间生成几乎一致的值。它也没有一致地为正则化方案选择单一选项(图1(b))。相比之下,使用8-5-fold调优会产生更一致的选择,大多数时间选择70作为最佳宽度(图1(a)),0.001作为输入和偏差正则化(图1(c))。虽然我们所选择的LSTM参数中的可变性随着J的增加而减少,但它仍然显著高于我们的参数网格中的间隙。再加上此调优模型的精度估计的相对稳定性,这表明8-5-fold CV最常见的选择之间的性能差异很小。然而,为了持续地调整模型以适应这种特性,我们需要更大的J而不仅仅是J=8。

2 讨论和结论

本文提倡使用J-K-fold CV,扩展到参数调优。通过使用来自多重估计的信息,稳定了我们的调优过程。为了抵消增加J的计算成本,建议降低K的选择,因为有效的调优更依赖于变化性而不是偏差。

虽然已经在NLP示例中展示了一些特定的J和K选项的有效性,但是在选择它们的最优配置方面还有很多工作要做,这是与问题相关的。我们还想分析目前常见的提前停止的做法,这需要对另一保留数据集进行评估,以防止过度拟合。

参考文献:

[1] Bradley Efron and Robert J Tibshirani. An Introduction to the Bootstrap[M]. CRC press, 1994.

[2] Ron Kohavi. A study of cross-validation and bootstrap for accuracy estimation and model selection[C].International Joint Conference on Artificial Intelligence, 1995(14):1137-1145.

[3] Gaoxia Jiang and Wenjian Wang. Error estimation based on variance analysis of k-fold cross-validation[J].Pattern Recognition, 2017(69):94-106.

[4] YoshuaBengio and Yves Grandvalet. No unbiased estimator of the variance of k-fold cross-validation[J].Journal of Machine Learning Research, 2004(5):1089–1105.

[5] Yongli Zhang and Yuhong Yang. Cross-validation for selecting a model selection procedure[J].Journal of Econometrics, 2015(187):95-112.

[6] Li Dong, Furu Wei, Chuanqi Tan, Duyu Tang, Ming Zhou, Ke Xu. Adaptive recursive neural network for target-dependent twitter sentiment classification[C].Proceedings of the 52nd Annual Meeting of the Association for Computational Linguistics (Volume 2: Short Papers), 2014(2):49-54.

【通聯编辑:代影】

猜你喜欢
自然语言处理
基于LSTM自动编码机的短文本聚类方法
自然语言处理与司法案例
基于组合分类算法的源代码注释质量评估方法
词向量的语义学规范化