CS类AI大一进组科研,如何入门学习机器学习及其相关基础?
CPAPCF什么年代还搞刻舟求剑缘木求鱼照本宣科啊?
我发第一篇oral时什么瓜书都没看(他们还没写),更没去学什么吴恩达王恩达李恩达王宏毅张宏毅,且现在都没看。
就俩字:没用。要做项目直接做,要发paper找问题找项目干,炼丹不是看书学来的。
问个最简单的:batchnorm和layernorm为什么有性能区别,什么情景有区别,现在常用哪个,你觉得跟现在feature/embedding dimension激增有关系吗为什么?不要照本宣科的背段子,你能指着他们表达式里求和的部分给出justification吗?给你几个现场模型和情景你能验证刚刚的justification吗?更进一步,他们跟以前的L2 normalization什么区别(尤其layernorm)?
这些你就算翻遍东西南北瓜书都不会有,所以,横竖没卵用。还是那句话,炼丹是个手艺活,讲究的是选料上炉出丹吹逼的手头功夫,这行里教条主义的骨灰都给吹没了。再说,那些书里讲diffusion吗?你要现在发paper最方便的做法之一就是魔改diffusion。等你看完那些书,说不定咱下一代Fokker-Planck模型又双叒叕出来了,万一那时的研究热点是魔改Fokker-Planck的边界条件你咋办?哪个恩达或者哪个宏毅又制作了课程让你跟着学?(我倒是17年就开始捣鼓Fokker-Planck了,去年开始直接跟物理系搞统计力学的玩attractor那些,要整出来了就直接开车。你想找现成方正的教学体系,跟着一格格慢慢爬,那我们早把问题做完去下下个坑了)
所以不要怕,要干什么撸起袖子直接干。搞清楚你的目标,先上车再买票,一边产出一边学习不矛盾。没有事是完美的,不断迭代就是了,头几篇paper稚嫩点无所谓,以后你有的是几十年的职业生涯来不断磨。重要的是先上手,你才知道自己真正缺什么,孰轻孰重。再说你不还有导师和学长指导吗,时不时找他们问点经验教训避免走入歧途,不要一个人自己想一口吃个大胖子。学无止境不光是鼓励,也是警醒:你永远都要学你也永远学不完,但该干活儿时就要去干。
更别觉得搞数学的就得一本本书教条主义,跟背四书五经一样。咱搞数学更是同理,我那会儿刚学表示论说我想从拓卜群开始推。我导直接说,滚几把蛋,老娘来给你把这几个tensor/CG-module的东西和这几个thm讲了,你回去自己算这几个character table,下周回来对好答案我们就直接开干,你那么搞鬼知道几个学期才能进到本番。不管什么学科什么领域Get your hands dirty一定是最重要的,先进去搞了再说。有人推荐boyd那本书,实际等你学过真正的线代(数学系的学法)后,你就会觉得,啊就是有限维的线代基本性质,trivial的嘛,画两个星期自己动手跟做一遍就行了。至于真正juicy的无限维变分?不好意思boyd没讲,终归还是trivial。所以很多事没那么多必须先怎么,一定怎么样才要推动,你自己做进去才会知道其中关窍的。
你可能觉得矛盾,科学本身很结构化讲求循序渐进,但为什么到做研究就这么黑猫白猫抓到老鼠就是好猫?这确实是个根本矛盾,产出的科学内容是结构化可推广的,但产出科学的过程是门case-by-case的手艺活。手艺活没有标准,每人都有自己特色。手艺活儿怎么学?一边做一边练,而且至今这门手艺还得靠旧社会的师徒关系手把手的带。如果你要进入这门手艺活儿,那就得摒弃之前循规蹈矩爬格子的mindset,及早进入学徒工模式。
同时作为带学生的一方,也要对学生的成长过程有充分认识,只要有merits就要加以发展然后想办法去修正不足。那些刁钻学生不成熟地方甚至人格侮辱学生的人,纯属低劣。