在一些复杂任务中,传统的机器学习方法需要将一个任务的输入和输出之间人为地切分成很多的子模块(或者多个阶段),每个子模块分开学习,比如一个自然语言理解任务,一般需要分词、词性标注、句法分析、语义分析、语义推理等步骤,这种学习方式有两个问题:一是每一个模块都需要单独优化,并且其优化目标和任务总体目标并不能保证一致;二是错误传播,即前一步的错误会对后续的模型造成很大的影响.这样就增加了机器学习方法在实际应用中的难度。
端到端学习也被称为端到端训练,指在学习过程中不进行分模块或者分阶段训练,直接优化任务的总体目标,在端到端学习中,一般不需要一般 不需要明确地给出不同模块或阶段的功能,中间过程不需要人为干预.端到端学习的训练数据为“输入-输出”对的形式,无须提供其他额外信息.因此,端到端学习和深度学习一样,都是要解决贡献度分配问题.目前,大部分采用神经网络模型的深度学习也可以看作一种端到端的学习