Computer Vision的尴尬---by林达华
Computer Vision是AI的一个非常活跃的领域,每年大会小会不断,发表的文章数以千计(单是CVPR每年就录取300多,各种二流会议每年的文章更可谓不计其数),新模型新算法新应用层出不穷。可是,浮华背后,根基何在?
对于Vision,虽无大成,但涉猎数年,也有管窥之见。Vision所探索的是一个非常复杂的世界,对于这样的世界如何建模,如何分析,却一直没有受普遍承认的理论体系。大部分的研究工作,循守着几种模式:
o 从上游学科(比如立体几何,机器学习,优化等等)获取现成方法,略加变化,套用于某一具体应用。
o 对现有的某个模型方法的一些不足之处,加以改进,比如在formulation中加入或者简并参数,或者调整求解过程。
o 选择多个方法组成一个应用系统。
这些工作实实在在解决了很多问题,功不可没。然其不足在于,一事一法,难成积淀。故此,每年新发表之工作,虽汗牛充栋,蔚为大观,就核心学理,与十年二十年前之状态相比,没有根本突破。
过去一年,在导师们的启发下,涉猎一些其它学科,方知学问之博大,自己以往却是一直坐井观天。在这里其实非常感谢Alan的启发,他一般没有很具体的指导,但是他往往会说“你可以看看某某领域,这个问题可能在几十年前已经被他们在另外一个context下面解决了。”刚开始的时候,我不是很服气——我在Vision的literature的survey表明它在vision里面确实是新问题——不过,当我看到那些领域的文章的时候,不得不佩服Alan的广博知识和对根本不同的领域中的相似问题的洞察力。
我不打算具体讨论一个topic,但是,我建议做vision的朋友在有时间的时候去看看一些表面应用完全不同,但是核心学理却是相通的领域。
o 做Sampling, particle filtering的,不妨看看统计物理学(Statistical Physics),他们对于蒙特卡罗方法已经应用数十年,积累极深,很可能在vision或者learning提出的一些新方法,已经是被他们以另外一种形式或者名称提出过了。
o 做Tracking, video, 和optimization的,可以看看控制论(Control theory)。控制科学对于动态系统(或者其它随时间变化的过程)的研究极为透彻。Alan本来是做控制的,正式他几次强烈的建议下,我才去看动态系统论和控制论,看过一些章节后有如醍醐灌顶。我曾经自己花了不少时间导出的一组矩阵微分方程的解,就是control theory里面已有深入探讨的Peano-Baker series在一定条件下的形式。至于做传导模型或者semi-supervised learning的,控制论中的许多观点和方法也是很有帮助的。
o 做Graphical model,和各种统计模型的,信息论(information theory)是肯定必要的,这个不用我在这啰嗦了。有一门叫做信息几何学(information geometry),也值得一观。
比较之下方显差距。很多做Vision的朋友都是理论爱好者,喜欢在paper里面列举公式以彰显“理论深度”——可是,我看过的大部分的文章中的公式推演,一般都是循规蹈矩的推导,其水平未必胜于求解一道经典教科书中的数学习题。诚然,这种推理演绎是整个研究中不可缺少的部分,写在文章中也无可厚非,但是,如果仅此则把推演结果列为theoretical contribution,则不免为过了。真正意义的理论贡献者,不在文中公式多寡,也不在数学深浅,而在于是否能对问题的内在原理展开深入剖析,有所发现,言人之未尝言,给人以新的启发。
作为经典物理基础的牛顿三定律,从现在vision领域的眼光看来,不过是对实验的总结,所得结论,除了第二定律有一简单乘法公式(往高深处说,也不过是常系数线性二阶常微分方程)之外,并无太多数学深入其中。虽如此,经典物理的巍峨大厦由此奠定。也许这个例子类比Vision的研究,未必恰当,但是,它起码可以说明,理论贡献之义在于去芜存菁,也就是排开纷繁复杂的表象,发掘那个深刻但是简单的规律。可是,在vision paper宣称的理论贡献中,有多少循此义而行,又有多少在铅华净尽之后留传下来。
纵理论上根基不足,但Vision终究是应用学科,若能广泛应用则其意义必能发扬。虽然经过几十年努力,vision确实在社会生活中有了不少各种应用,不过比起其它学科则相形见拙。且不说诸如通信,软件工程之类早已在全球形成庞大产业,与vision有更多联系的video coding,signal processing, 和medical image,其应用之深广也为vision所望尘莫及。vision没能形成应有的工业应用,一则确实是它面临的实际问题困难重重,实用水平不易达到,二则与我们的研究在相当程度上脱离实际有着很大关联。
以我以往在香港学习时所做的face recognition来说,这是一个应用性很强的topic,历史也不短,但在实际条件下的识别水平,做这个的朋友也心里明白。很多人在研究这个topic,发表的“新方法”也不少,在paper上识别正确率不达到90%是拿不出手的——可是在那几个标准库(即使是最新的FRGC)上做出的性能和实际的有多大的差距?很多工作assume头像区域都对齐良好,光照条件规则,在此条件下研究出来的算法即使能达到100%的识别性能,在环境极为复杂的条件下能真的应用么?直到今天,大批文章仍在乐此不疲地讨论各种subspace, kernel, svm, boosting的变化花样,却从不思考人脸识别的真正要素所在,难道不是舍本逐末之举。
与此同时,许多在实际工程实践中的trick,为性能提高立下汗马功劳,却因为没有“理论深度”,不登大雅之堂,即使见诸论文,也是在实验部分草略带过。然而,一个方法,无论其最初提出是否有理论依据,如果确实能解决问题,则必有其原因。若能静下心来,暂时忘记那些仅凭思辨就形成的所谓美妙理论,下功夫探究一些确实能解决问题的方法背后所原之学理,其意义不是更大么。也许每个这样的工作都很细小,真能积累下来,假以时日,在推动某个方面的应用上必有实实在在的进益。其中,也可能有机会总结出一些真正有价值的理论。
自诞生以来,Vision的发展已历数十年,不过和许多领域相比,仍处于初始阶段,根基尚显孱弱混乱。唯因如此,对身处其中的研究者,更具挑战意义,而每一个真正的贡献也显得特别有价值。治学之道,不在追逐潮流,而在深原其理。这是新学期新帐号第一次写blog,谨以此,和每一位热爱研究的朋友共勉。