本文主要是介绍科研小白成长记40——第三个五年计划,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
小gap期间,拼命玩和拼命休息的同时,仔细思考了下我期望的五年之后的样子,gap结束,算是目标愈发清晰起来。曾经,读博的目标是成为一名independent researcher,并且具备发至少一篇顶会的能力。而现在,希望五年后的自己,成为一名good independent researcher。当然,这里的good,根据现阶段的科研榜样,已经有了具体的metrics。
首先是随时在线的深度理解能力。许是本能,许是自卑,遇到别人提到的新知识点或者新的论文时,总是会下意识拒绝,然后心里想着回去后自己慢慢消化。当然,这并没有不好,相反,对于我这个智商没有超高理解能力也没有从小的阅读提高的普通人来说,这已经是最稳妥的安全牌,既免了迅速理解新知识脑袋宕机的尴尬,又避免了在自己还不完全理解时和别人沟通的尴尬。但是这种方法有很多的弊端,比如“回去后再看”这个再就不一定会到来了;比如即使真的看了七七八八,能跟人讨论了,到时候别人那边已经不感兴趣了,错过了讨论的最佳时机;比如拖到以后占用了以后太多时间。观察了几位科研大神后发现,他们都是随时随地都能接收新知识,对新知识的接纳速度和程度,就好像完全没有自己的任何科研观价值观作为阻碍,直接当场就能吸收。当然,万事开头难。先养成当时事当时毕,实在看不完那就回去后补补,这样渐渐地,相信自己的在线理解能力也能提升。
再就是刨根究底的习惯。最开始做科研的时候,能把新的网络用好,稍作修改发发小会议就已经很开心了;后来,开始去理解各个模块的作用。而现在,希望慢慢养成死扣细节消化细节的习惯。这也是自己最近对那些网络结构算法啥的看法的改变:曾经的自己是从抽象的概念上去理解的,比如输入是图像,网络叫什么;后来更加具体了一点:输入是tensor,网络是一些不同功能的层,各个层大概负责什么;到现在,更加微观了,数据变成了一个个vector,网络变成了matrix;甚至慢慢开始从values和digits的角度去看待这所有的计算了。当然,这是自己肉眼可见的科研观的变化,往后,需要不仅从概念上刨根究底,还有implementation的细节,比如看Pytorch源码。很多东西的理解,不看源码,永远get不到它最大的优势。而一名good independent researcher对我来说,需要知道每一个细节。这就涉及到第三个目标。
编程能力。虽然喜欢编程,也早在曾经备考GRE的时候就学会了盲打,但是自己的编程水平一直都是吃着大一大二那唯二两节C++课的老本,科研时只觉得自己的编程能力能准确地implement自己想做的idea就万事大吉了。曾经还对找工作对leetcode的考核嗤之以鼻。大概是从前对于应试教育的惯性厌恶吧,以为编程能力这些可能也不重要。但是见到了几位科研大神之后,才知道什么叫漂亮又有逻辑的代码,这些都是看很多源码以及无数的练习实现的啊。脑子思考变快之后,手也得跟上来啊。
还有一些七七八八的能力,管理能力,包括自我管理和团队管理,养成服务意识,对自己,也对他人。争取独立发两篇ML的顶会。
目标具像化之后,就知道自己需要找的是什么样的工作了。当然,目前最符合自己的还是留在目前实习的科研单位,继续跟那几位大神导师学习,人一辈子,能遇到三观超级温和的导师不容易,尤其是一下子遇到4+位,我是上辈子拯救了银河系吧。
其它的碎碎念,开始祛媚了。曾经的自己心里一直会神化那些优秀的人,无限放大别人的优点以及自己的缺点,导致越来越自卑。而人啊,和世界上所有的群体分布规律都一样,绝大部分人都是均值水平,绝大部分人都是普通人,别人从来不会有我们想象的那么好,而自己,也绝对不是自己想象的那么糟,我们全都,大差不差。而区别,从来不是好坏,只是不同。
好像更加踏实和无畏了。在氛围无敌的波士顿图书馆,在晚霞醉人的查尔斯河畔,在随时都能去蹭课的MIT旁,这算是我一个普通人靠运气得到的最好的资源了吧。正好几位方向上的导师在MIT授课,那我就去听,一遍听不懂两遍,老师年年在,而我可以一直听,一年两年,总能听懂。这样,一位老师,两位老师……如果我能多学几位老师的知识,虽然思维方式知识水平不会达到他们的水平,至少自己拥有了那么多优质的知识吧,光想想就觉得已经足够幸福了。
这篇关于科研小白成长记40——第三个五年计划的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!