会议专题

交叉验证的并行计算框架设计及实现

  交叉验证被广泛用于对机器学习算法进行参数优化,但其计算量非常大,非常耗时,比如对N个样本的数据集使用留一法交叉验证(LOOCV,leave-one-out cross-validation)时,需要将训练、预测重复执行N次。因集成规模极限的逼近,致使CPU向多核方向发展,如何利用好多核CPU的强大计算能力变得至关重要。传统的多核并行计算框架如Pthread、OpenMP和MPI库等,都能够很好的解决并行系统的多线程程序设计问题,但是,使用这些库对于大多数开发人员来说过于繁琐,要求程序员自己管理线程、通过消息和加锁的方式来处理数据同步等问题,因此,通过这些库实现一个正确、可扩展有并行程序变得非常困难。<br>  为此,本文设计了一套基于多线程的并行交叉验证框架(Parallel-CV,Parallel Cross Validation),它支持K-Fold, Leave-M-Out和自定义交叉验证方法,同时提供非常简单的API供用户自编程序轻松实现各类机器学习算法交叉验证的并行化。

交叉验证 并行计算 框架设计 机器学习算法 线程管理

李灵巧 杨辉华

桂林电子科技大学 电子工程与自动化学院

国内会议

全国第四届近红外光谱学术会议

桂林

中文

196-197

2012-09-12(万方平台首次上网日期,不代表论文的发表时间)