编辑:机器学习实验室
大学里面的老师尤为明显,类似于说:“深度学习很简单呀,一个月就可以成专家了呀。”
作者:圆珠笔
我觉得这些喜欢用纯数学来吹逼的可以来信道点对点通信编码这个学科里来被折磨一通:
点对点通信信道编码这个学科,绝大多数已有的编码方案,越是有严谨的代数,图论等数学模型为基础的编码方案,性能越糟糕(图论的会好些)。。偶尔会有几个亮点可以把整个学科的人打一针鸡血(如特斯法斯曼构造的代数几何码在超过49进制的符号中传输性能终于超过了GV bound理论下确界),但是基本都因复杂度过高而无法实用(光是构造这样的码就要超过15次幂的多项式复杂度)。而且认知到整个学科走在死胡同最终清醒过来,大约要晚到20世纪90年代初,因为90年代头几年依然还在给“几何代数码的译码算法” “非线性码的Z4群构造” 这些不断往让人望而生畏的数学领域深挖的论文发年度最佳论文奖。
终于90年代有turbo码(3G,4G的方案)的发现和ldpc码(5G的主要方案)的重新发现,大家开始重新认知到了:根据香农的通信领域创世论文,随机构造的通信方案中蕴藏着非常好的通信编码方案(在不考虑编译码复杂度的情况下(那个年代基本不敢对复杂度特别挑,n^2logn复杂度的方案也甘之如饴,宇宙深空通信你收到宇宙飞船的信号立方复杂度你就嫌复杂啦?赶紧用命去解码),随机构造出来的码的性能的期望大致和理论最佳方案的性能上界相差无几,你可以理解在通信的学科的某些问题里,随机乱走棋的alpha go在棋盘非常大时棋力和围棋之神相差无几。),所以大家开始使用一些有随机结构的方法来构造码,虽然这类方法没有什么特别让数学爱好者们心动的新算法或码结构出现(例如Guruswami-Sudan list decoding algorithm这种可以反哺其他诸如计算复杂度之类的学科的算法结果),但是工程界的结果一直在稳步朝香农当年所预言的性能指标迈进(05年ldpc已经有距离香农界0.01db以内的结果了)。
无数编码学家发现自己该失业了:过去为这个学科准备的数学知识都排不上用场了,工程师们都在玩随机交织之类的方案像玩玩具似的交织+打孔构造各种强力turbo码(非常类似于现在各种小学生用tensorflow各种调参训练各种模型一样),也构造用于存储的高码率ldpc或者低密度生成码,业界需要的只是调参工程师(当然也有像linshu这样的华人之光引入了代数ldpc码,打开了另外一扇窗口),直到极化码(polar码,5G控制信道中短码的一种可选方案)的出现,重新给了编码学者们一个新的数学玩具。他几乎不再需要调参,仅仅从理论上即可证明自己可以达到香农的性能,只是时延稍大(其实和他的竞争对手相比,蛮致命的),编译码复杂度都是nlogn(有一些变化方案复杂度会高些)。
数学性非常强,无需引入随机方法,但是性能分析和证明方面需要一些随机过程分析,鞅这类过去没有引入过这个学科的一些数学工具,已经基本看不到高等代数的身影。非常多的较为年轻的代数编码学者都转向了极化码:印度人(包括他们收的中国徒弟),俄罗斯人,也包括我师门内认识的国人,好多我过去看到的代数编码常客都蜂拥而至,给极化码带来一些新的视点和角度。华为2012我估计也是因为这一波大潮被极化码绑架的:毕竟极化码太容易出paper了(2013年信息论大会直接就让极化码作者的大学举办),那个时间点的研究员肯定会举手赞成all in 极化码。
说了那么多,我来给你说说我们这学科的鄙视链:
polar码->ldpc码(5G)->turbo码(3G,4G)(记得拉香农祖师来壮胆和群嘲,否则实在无法解释自己的牛逼,因为牛逼的太没数学道理了)->代数几何码和goppa码->硬盘光盘raid二维码用的reed-solomon码->闪存ecc以及对讲机用的bch码 越到后面就是被鄙视的来基本没有什么学术界的人去研究了。数学要求最高的代数几何码其实有段时间是被鄙视的最狠的:毕竟这个学科当年差点被人认为died了,就是因为太多主流研究方向都在沿着代数几何这类高深纯数学化发展,导致越来越少人投入精力到这个学科了。
十分悲伤的就是,笔者当年是反着这条鄙视链研究慢慢深入上去的(老师对我的培养比较正统化,基本沿着学科发展的时间顺序带我入门的),还好没有在代数几何那些代数曲线上花特别多功夫,在reed-solomon码上研究出来点结果成功毕业。毕业时最终大彻大悟就是答案:还是去当码农养家比较实在啊(不过这些年还是一直对polar,goppa,reed-solomon放不下,听到阿里出了个polardb就颇有好感)。
作者:一只小猫咪
https://www.zhihu.com/question/58992444/answer/1796198325
作为一个前数学系的学生,我对deep learning这个领域本身并没有什么成见——任何对人类发展有益的事物都有资格成为一个学科。而且老实说,我当年来cs的想法某种程度上就是因为alpha go击败李世石让我看到了cs的巨大潜力。李世石可是我幼年学棋时候的偶像。
我比较受不了的是现在这个领域里很多人的价值取向。
第一,虽然说我自己并不是很了解应用方面的工作,但我觉得(而且也有一些已经工作的学长证实)要想把一个实验室里的成果真正挪到现实生活中的话,奥卡姆剃刀、可解释性这些原则是至关重要的。我了解现在确实是有人在这方面做工作,但也是相对边缘——似乎整个领域的显学仍然是通过各种技巧(甭管说不说的通)将准确率稍微提高一些。
第二是关于理论部分的。我觉得理论工作者最基本的追求应该是去努力提取出清楚的框架,并对很多现象进行清楚的解释。即便清楚很难做到,但最起码应该作为一个追求。然而我接触的很多做ml theory的人也是把理论单纯当成一个从A推到B的游戏,丝毫不去考虑intuition,而且还经常加各种各样的assumption。我并不认为作为一个学科基石的理论应该这样去发展。
第三点就是节奏也太快了。能够多发成果自然不是坏事。但是节奏过快真的是很容易卷。而且这也直接导致大家也没有办法去静下心来思考问题,没有办法去好好地写paper。这一点我觉得对于一个领域长久发展真的不是一件好事。
最后,我觉得之前@黑暗里谁还不睡给我写的一个评论特别好,这里搬运一下子。
现在AI领域的现状就是这样,数学上的high level intuition和ml theory的一堆assumption是割裂的,based on ml theory的formulation和跑出来的玄学实验结果又是割裂的,在苛刻条件下的实验结果和现实中的task上的performance还是割裂的,仅有的几个performance比较好的任务和工业界要求的变现能力强的落地场景仍旧是割裂的,但凡有人可以补上这几环中的任何一环足以拯救这个行业,但现在来看,真的很难乐观
希望这个学科越来越好,而且我提出的一些问题能够随着时间一点点的根除。这是我一个局外人的简单的期望。
作者:李沐
学数学看不起深度学习太正常了,因为中间还差好几层。
完整点的鄙视链是:学数学的 —> 学统计的 —> 学机器学习的 —> 学深度学习的 —> 学cv/nlp/dm/...
而且就算是数学里面,也有一条很长的鄙视链。十多年前混了一阵子组合数学,发现地位比较低。后来学了学李代数,发现还是底层居民。后来安心在cs里,因为不怎么烧脑细胞。遇到上层居民都是敬仰的绕路走。
作者:田渊栋
DL的难度取决于看问题的角度。数学系的话应该往理论方向看。
DL用线性和非线性函数堆砌来构造函数,用随机梯度下降就可以训练,而且还有非常好的泛化能力,在我看来这样的东西居然没有原理这是完全不可想像的。但是DL很难,难到大家都不知道如何入手,用什么数学工具都不知道,所以说什么样的理论文章都有,凝聚态物理的(spin-glass),量子物理的(重整化群),ODE的(动力系统),各种优化理论(这个例子太多),各种复杂度理论,但还没看到真正提炼出本质的。数学这边那么多理论,但现在还没有哪个能搬到DL上而且能严丝合缝的,至于能进行有效预测的就更没有了。这就足够说明问题的复杂性,DL是没那么简单的。
要深入DL,各种基础知识是不可少的。但是基础知识并不是拿来炫耀的本钱,因为学了一大堆,可能一个都没用。比如说VC Dimension或者Rademacher Complexity对DL有没有用?它们本身都很漂亮,但可能假设太强得到的结论和现实差很远,或者假设太宽泛得到的结论太弱,都不在DL的工作区间。所以做理论的人,不得不一个个学过来,想过了,试过了,然后放掉,下一个。解决问题是最终的目标,而不是学得比人多些,然后坐在原地不动夸耀自己厉害。耍弄十八般武艺,比不过高手一招制敌。至于这一招怎么找到,或者从理论分析这边入手,或者从实验入手,都是一样有价值,都是平等的,不存在谁鄙视谁的问题。鄙视就意味着有不合理的预设立场,忽视另一种思路的作用,对解决问题是不利的。
学数学的时候,我的感觉像是走进了琳琅满目的艺术博物馆,在整洁的环境中欣赏各种精巧的美。DL相比之下就像是锅炉房里堆叠着一坨污七八糟的机器,工程师们东敲西打让它工作,虽然脏乱,确实有效。大部分人可以沿着前人铺好的锦绣路上再添砖加瓦,但是真正厉害的,是不顾脏乱跑到锅炉房里把机器拆开,化腐朽为神奇,找到最重要原理的那些人。开创比修补难,与其抱怨DL没有高深数学做框架,不如自己试试看,能不能做些有趣的东西出来。现在那么大的金矿放在那里,大家应该好好合作使劲挖矿才是啊。小波是很美,但问题是它的基函数是固定形式的,不能适应具体问题,而且还需要数学家搞一辈子才能搞出来。与之相比,深度模型训练几天就能跑出来,而且针对具体问题(比如说图像分类)效果还更好,你会选哪个?所以说现在思路要转变,一个一个地研究模型太没效率了,做一个对数据自动建模的模型,是不是在战略上会更有趣一点呢?
我和我一个同学聊过,他现在是统计系的终身教授,列举了几个非常牛的数学家,问我AI再牛牛得过他们么?我没有正面回答,我在想人类看蚂蚁的时候会思考普通蚂蚁和聪明一点的蚂蚁之间的区别么?我这里并没有贬低数学家的意思,因为人类都是一样的,我也是微不足道的普通蚂蚁而已——相比耗能堪比一座小城市并且每几个月就更新换代的集群,人脑仅仅几十瓦的功率,神经元间慢达毫秒级的传输速度,败下阵来只是时间问题。而现在的人脑处理大部分任务甚至还远胜集群,可见人工智能潜力之大。我有时候觉得我们看到几颗星辰就以为是大突破了,其实我们还在漫漫长夜里瞎摸,太阳还没有露头呢。
另外说一下门槛低的问题。几百年前,微积分出来之后,一大类问题都可以用统一的方法解决,让技术进步的门槛降低了,本来高高在上的各种技巧平民化了,马上就带动了相关领域的巨大进展。这个历史进程和我们现在看到深度学习的进程一模一样,开源了,大家都用了,对整个人类而言进步就快了。到了这个时候,单枪匹马干不了什么事,人民群众才是技术进步的原动力。
面对时代的洪流,相比嘲弄别人随波逐流,思考应该如何顺势而为,或许是更有建设性的吧。
作者:Real Eldorado
我之前就是学数学的,现在在做deep learning.应该有些发言权.
我的硕士论文导师Cedric Villani是菲尔兹奖获得者, PDE, 数学物理 和度量几何的世界级专家. 他对deep learning 和AI非常感兴趣. 每次Yann Lecun来巴黎做lecture, Cedric都会去听,并且两个人实际上是好朋友.
他energy非常旺盛,关注颇多. 作为欧洲科学委员会主席(大概是这么个职位), 对欧洲的中小学教学革新也非常感兴趣. 他提的一个重要的革新方向,就是更多地把计算机算法,编程 甚至AI的初步知识, 在中学阶段传授给学生. 让他们更早适应新时代的数学和工程学发展.
他对我的科研也非常关心,偶尔和我聊我科研上的事情. 之前在Wasserstein GAN出来之前, 因为他是optimal transport的世界级专家,我的optimal transport的知识就是他教的,我也想跟他合作过一样的idea.只可惜我们比Martin Arjosky确实晚了一步.
我觉得真正聪明的数学家由于职业天性, 只会被deep learning的神奇效果吸引,并且产生强烈的好奇心. 对一个蓬勃发展且具有改变人类生产方式的新型学科产生"鄙视", 我不否认有这样的人(比如Grothendieck如果还在世,可能会觉得AI有军事用途而抵制),但应该也不会是主流.
作者:谢流远
搞数学的一般鄙视没有理论基础的东西。
现在深度学习非常火,因为效果非常好,但是理论解释几乎不存在。
现有数学对于凸问题有一套很漂亮的理论。以前机器学习的主流是线性回归、SVM,都是凸问题。那时候每个算法都有定性定量的分析,大家都很开心,就是实际能解决的问题很有限。
然而深度学习的精髓是怎么非凸怎么来,非凸函数套非凸函数,一套几十层,所以没人知道怎么理论分析。根本原因还是因为现有数学工具太弱了,研究不了这种非凸问题。想搞深度学习理论研究,先要有基础数学上的突破。
现在的数学研究是什么状态?像欧拉、高斯那样著作等身,每页都是大定理的时代已经远去。一个人牛人研究一个问题四、五年,搞出一个上百页的证明,然后要十几个牛人花几个月的时间仔细推敲,才能判断它对不对。而且这个趋势在不断恶化。
这种研究已经逼近人类极限了。
培养一个本科生要二十几年,而在数学这种极度烧脑细胞的领域,四十岁已经是大龄了。一个数学家的黄金时间也就十几年。
同时数学水平是无法复制的,一个天才不可能在短时间内把“内功”传给另一个天才。很多东西只可意会,不可言传,需要长时间练习、积累。
这么算下来一个天才一辈子能突破一两个定理就不错了。在不远的未来,证明一个定理的周期可能超过十年,二十年。到时候只有天降伟人才能推动数学前进一小步。
也许人类太傲慢了,像深度神经网络这种鬼东西,以人类的智力水平本来就不能精确理解。
如此说来人工智能就没有希望了么?我觉得不是的。
自然选择创造了人类,它只有两条规则,随机变异,适者生存,连“智能”这个目标都没有。这证明理论基础并不是创造智能的必要条件。
调参工程师的水平怎么也比自然选择高,实验一次的周期也比自然短。几十年前人工智能连苍蝇都不如,现在已经差不多有青蛙的水平了(青蛙有16,000,000个神经元)。
也许靠硬件发展和黑盒调参,就能实现超越人类的人工智能呢?
也许对人类来说,创造智能比从理论上理解智能要容易呢?
比起研究深度学习理论,也许记录细节、开源代码更关键。
只要迭代和传承的效率够高,也许我们有生之年就可以搞出人工智能,到时候再问它怎么解释自己就好了。