谈谈创新与知识结构

(本文所有图片来源于网络)

ppap

“I have an apple, I have a pen… Ugh! Apple Pen!”

“I have a problem, I have an idea, (?), Innovation!”

创新到底是一个怎样的过程?

从发现一个问题,并想到用某种方法解决问题,到实际解决问题,中间实际上还隔着一层“窗户纸”。对于一个问题,能够想到某个想法的人很多,但这个想法通常不能直接简单地应用到问题上面;能够捅破这层“窗户纸”,让想法从不可用变成可用的人,其实是很少的。而所谓的创新,其实并不只是想到某个想法,更重要的是“捅破窗户纸”,让这个想法变得可用、成为现实。

innovation

以我最近正在研究的LambdaRank排序学习算法为例:我们想用机器学习来解决搜索引擎结果的排序问题,这是最初的idea,每个人都能想到。但问题是,我们在机器学习中经常用来逼近目标函数极值的“梯度下降法”,似乎并不适用于排序问题,因为排序结果的常用评价指标都是不平滑、不连续的,无法求梯度,也就无法充当梯度下降法的目标函数。大多数人到这一步可能就无能为力了,但创新正是从这里才开始。LambdaRank算法直接分析了排序问题中梯度的物理意义,根据物理意义直接定义了梯度的表达式,并且把评价指标设为表达式中的一个因子。这样定义的“Lambda梯度”同时考虑了实际意义和传统评价指标,效果非常明显。可见,想到用某种方法解决某个问题并不叫创新,只有“捅破窗户纸”,do the hard work,从“无法求梯度”到“定义Lambda梯度”,让“用梯度下降法优化排序问题”的想法得以实现,才是创新的关键步骤。

gradient_descent

最近我们常说,现在最需要的人才是“T”型人才,“─”代表知识的广度,“|”代表知识的深度。所谓的创新,我认为就是两个维度的共同作用。所有的创新,在我看来,都是基于人类现有知识的组合,也许你解决一个问题的办法十分新颖,但这个办法很可能在其他领域只是老生常谈、司空见惯的做法罢了。然而这正是你的可贵之处:你的每个步骤对于一部分人来说都是稀松平常的,但这些人的交集只包含一个人,就是你自己。所以就创新而言,我认为“T”中的纵向知识只是基本功,横向知识才是创新的源泉。

t-shape

这段时间聆听了很多场计算机不同领域的前沿讲座,我以为这些就是“T”中的“─”了,但实际上,跳出计算机学科,我才意识到,这些充其量只是一个“-”。我们现在的知识结构就像一个按比例缩小了很多倍的“T”,两个维度都需要扩展。下面分别谈谈我对两种扩展的看法。

master-2

纵向知识的扩展靠苦行,读博就是一种很好的手段。一段合格的博士经历,会让自己在一个小领域钻得足够深,并且有机会突破“|”的边界,创造新的知识。但是,读博不见得能将自己的横向知识范围扩展得足够广。而专门去学习非自己领域的知识,既无的放矢,又耗费大量时间,到头来可能还是限制在了某几个领域而看不到更大的世界,看起来也并不可行。

phd

那么应该如何横向扩展自己的“T”型知识框架呢?我认为,可以把这个问题类比为算法中的搜索问题。最低效的搜索算法是盲目的“暴力枚举”,当它不可行的时候,人们首先想到的是有策略的“启发式搜索”。对应到扩充知识上,应该就是联想和迁移的能力。也就是说,不是“图书馆式”的照单全收,而是渐进式、迭代式地丰富知识库,不停根据已获得的信息去决策自己下一步应该迁移到哪里。这样实际上是建立了庞大的知识网络,脑中储存的是大量的索引,当真正要用到某一方面的知识时,即可按图索骥,有针对地深入学习。

%e7%bb%99%e5%8a%9b

只有这点程度而已吗?如果是的话,那我也就没必要处心积虑地把知识的扩展方法类比到人工智能算法上去了。机器智能最近的突飞猛进得益于大数据驱动的机器学习,我认为,人类智能的进步同样要依靠“大数据”,这个“大数据”就是无数其他人的经验。单枪匹马的联想和迁移固然能够横向扩展知识结构,但站在巨人的肩膀上显然要容易得多。多与优秀博学的人交流、分享,了解他们是如何学习的,他们在什么样的情况下做出了什么样的选择,从前人走过的顺路和弯路中看到自己要走的路,才是人类智慧变化、进步和创新的根本途径吧。