Curriculum learning (CL) is a training strategy that trains a machine learning model from easier data to harder data, which imitates the meaningful learning order in human curricula. As an easy-to-use plug-in, the CL strategy has demonstrated its power in improving the generalization capacity and convergence rate of various models in a wide range of scenarios such as computer vision and natural language processing etc. In this survey article, we comprehensively review CL from various aspects including motivations, definitions, theories, and applications. We discuss works on curriculum learning within a general CL framework, elaborating on how to design a manually predefined curriculum or an automatic curriculum. In particular, we summarize existing CL designs based on the general framework of Difficulty Measurer+Training Scheduler and further categorize the methodologies for automatic CL into four groups, i.e., Self-paced Learning, Transfer Teacher, RL Teacher, and Other Automatic CL. We also analyze principles to select different CL designs that may benefit practical applications. Finally, we present our insights on the relationships connecting CL and other machine learning concepts including transfer learning, meta-learning, continual learning and active learning, etc., then point out challenges in CL as well as potential future research directions deserving further investigations.
翻译:课程学习(CL)是一种培训战略,培训机器学习模式,从较容易的数据到较难的数据,这种培训模式模仿了人类课程中有意义的学习顺序。作为一个容易使用的插件,CL战略展示了在计算机视觉和自然语言处理等多种情景中提高各种模型的普及能力和趋同率的能力。在这个调查文章中,我们从包括动机、定义、理论和应用在内的各方面全面审查了CL。我们在一般的CL框架内讨论课程学习工作,阐述如何设计一个人工预设课程或自动课程。特别是,我们根据难测加训练排程总框架总结现有的CL设计,并进一步将自动CL方法分为四组,即自定学习、转移教师、RL教师和其他自动CL。我们还分析了选择可能有益于实际应用的不同CL设计的原则。我们介绍了将CL和其他机器学习概念联系起来的关系,包括转移学习、元学习、持续学习和积极学习等。我们提出的CL未来研究方向,作为未来的研究方向。