机器学习中如何理解end-to-end

  • 传统机器学习的流程往往由多个独立的模块组成,比如在一个典型的自然语言处理(Natural Language Processing)问题中,包括分词[1]、词性标注[2]、句法分析[3]、语义分析[4]等多个独立步骤,每个步骤是一个独立的任务,其结果的好坏会影响到下一步骤,从而影响整个训练的结果,这是非端到端的。
    在这里插入图片描述

  • 端到端模型在训练过程中,从输入端(输入数据)到输出端会得到一个预测结果,与真实结果相比较会得到一个误差,这个误差会在模型中的每一层传递(反向传播),每一层的表示都会根据这个误差来做调整,直到模型收敛或达到预期的效果才结束,中间所有的操作都包含在神经网络内部,不再分成多个模块处理。由原始数据输入,到结果输出,从输入端到输出端,中间的神经网络自成一体(也可以当做黑盒子看待),这是端到端的。

📌 两者相比,端到端的学习省去了在每一个独立学习任务执行之前所做的数据标注,为样本做标注的代价是昂贵的、易出错的。

  • 来自Quora上的回答:

    原文
      The phrase “end-to-end” doesn’t mean anything particular to deep learning. Much like that VC favorite “from soup to nuts”, it’s just an emphatic adverbial phrase that’s thrown in to convey a vague aura that what you’re doing is somehow more complete, total, and more general than what others are doing.
      I repeat, there is no “end-to-end model”. Such a term does not exist. If someone tells you “it’s an end-to-end deep learning model”, they’re trying to communicate completeness without being specific. If you’re reading a paper or blog, then just ignore and look for the details (either in math or in figures). If you’re talking to someone, just ignore and ask questions until the specifics emerge.
      Sometimes people do want to emphasize that they are doing less pre-processing or post-processing than others, and then they might invoke a term such as “end-to-end” meaning that they removed some extra processing step that was at common at some point. But it’s never total. There’s always some sort of unpacking and repacking on either end of a real-world system.

    • 他大致意思是说 end-to-end 其实并不严谨,有时候为了想说明自己的模型与人家的模型相比数据预处理和数据后处理更少,称自己的模型是end-to-end,事实上现实世界的系统总是存在处理过程的。

📌 总之大致明白end-to-end大概是不依赖其他的模块,结果也是通过模型直接输出了,这样就差不多了,不用太过于深究。

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值