End-to-end is all you need
成都的夏天燥热难耐,不由得惹人胡思乱想,在回寝室的路上,仓皇整理思绪,做此文。
End-to-end is all you need
2026年目标检测领域真是百花齐放,又是Yolo系列正统出了26,又是MIT也发了RF-DETR,尽管还是什么突破实时性能上限天花板之类的陈腔滥调....
但有一处让我小有震惊的点在于Yolo26竟然取消了nms设计,虽然细细品来,Nms可能也算是一种比较trivial的解法,也有诸如soft-nms之类的优化方案,但是在CNN范式中取消这种做减法确实比较惊艳。
在摘要中说到他们提出了一个端到端的模型,我之前看论文的时候也总在看到端到端范式这种词汇,直到我参加比赛的时候,我也在吹牛逼说我们形成了一个怎样的端到端体系,可是端到端到底是个什么东西呢,好像确无一个详细的定义,但细细品来,整个深度学习的发展就是端到端的发展。
从范式演进看端到端
From ML to DL,我们用而RPN结构替代原有的人工设计特征,诸如Harris,SIFT此类方法,在这个角度上,我们可以说人工特征不是一种端到端,因为没有RPN泛化好。
From CNN to DETR,我们用匈牙利匹配替代原有的Anchor/proposal设计,在这个角度上,我们可以说锚框不是一种端到端,因为它需要把很多没用的锚框进入检测头。
From two stage to one stage,在CNN中,我们用整张feature map接检测头的方式替代了原有的RPN结构,在这个角度上,我们可以说而RPN结构不是一种端到端,因为它需要做很多没用的ROI去做roi pooling/ roi align。
训练流程的端到端化
让我们换一个方向,从训练流程来讲。原来数据预处理的时,我们要人工去设置数据增强的阈值,旋转的概率,mosaic的概率等等,随着时代发展,自动数据增强开始流行,使我们减少了许多超参。
通用化趋势
从Task-Level来讲,我们正在从细方向单任务模型变为更复杂,更通用,泛化性更好的通用模型。让我们再疯狂一点,不止视觉呢?随着clip的兴起,不同形式,不同模态也在逐渐走向大一统。或许李飞飞口中所述的World Model真的是对的?
端到端的本质
因此我们可以在不同角度下刻画End to End,从服务端来说,End to End可以指冗余参数及设计减少,从输入直接到输出,从客户端来说,End to End可以指泛化性更强,从单需求到多需求,从单场景到多场景。
这两种角度的刻画似乎是对立关系,又是参数减少,又是泛化更强,根据openai的scalling law,这怎么能做到呢?我们只能换种方式解决这个问题,即信息密度。
一切优秀的设计均是为了增加信息密度,模型上我们有ResNet解决了深层的信息密度,训练上我们有Dropout提升了特征的信息密度,结果上我们有L2正则化提升了权重的信息密度。
行文至此,我想我们是时候在此给端到端一个明确的定义了: End to end is a process of fighting entropy increase.
"我反抗,故我们存在"
——加缪
于归寝途中