My-thoughts-zhenghua
我的一些感触和思考
我喜欢的几个观点
- Big things have small beginings. 出自《异形前传:普罗米修斯》. 我的解读是:任何伟大的发明、创举,都是从一些小的idea开始的。永远不要小瞧自己,总是相信自己。
- 科研上的重大突破,一定是多年思考、积累的结果,有时候孤独也是必须经历的状态。
- 开心的工作,充满热情,多关注事情积极的一面。
- 做一个有趣的人。
- 尊重别人和自己的不同,一个人永远无法设身处地的为另一个人着想,不要把自己的意愿(即使再善意)强加到别人身上。
关于读书的一些观点或思考(2020.9.3)
- 读书不是为了改变自己,而是为了让自己对世界、对周围了解得更多,减少无知导致的愚昧。从这一点上讲,读书和教育的作用很相似。
- 选择读书,而不是读新闻、看朋友圈、刷微博,是因为”不希望自己的生命被很多随机事件浪费“。引号中这句话是从哪看到的、听到的?具体记不清楚了,是《个体社会》中一个老人说的,还是毛姆短篇小说选中的一句话?感觉说的很妙。。
- 读书最幸福的几个方面:有无穷的书供你看;有的书值得看很多遍,不同年龄阶段看感受不同,等快遗忘的时候重读一本书感觉很棒,就像和一个老朋友见面;一本书可以看很久,因此幸福感也可以持续很久(相对于电影);不喜欢的、三观不合的书,丢到一边就好;可以跳着看,想怎么看怎么看;...
- 读书的几个误区:拿起一本书,必须从头到尾看完,否则就说明自己没毅力(BTW,不要轻易买书,只有值得读第2遍、第3遍的书才值得买);如果一本著名的书自己不喜欢看,就说明自己不行
- 我最近发现同时看几本书的感觉很棒,一个作者说话听累了、烦了,就换一本。这样也可以留给自己思考的时间。
- 法国人Charles Dantzig专门写了一本《为什么读书》,挺有趣的。
严格要求,把握底线 (2020.9.12)
我觉得人的个性、自由自主意识对于创新非常重要。因此制定规则的时候,我强调可以根据个人的需求,定制规则。但是最近的一些经历、读的书、看的电影(卡特教练)让我有了不同的想法。严格要求,把握底线。
我的2点底线
- 日志、周志、月报要认真写。写不好就重写。如果重写还写不好,就算缺日志,然后按照规则处理。
- 保证工作进度(实验、论文写作、项目)。如果进度缓慢,又不思进取,还搞什么?如果对idea不感兴趣,早点说,早点换;如果对课题不感兴趣,早点说,早点换;再不行,换导师,别耗着,我受不了。
- 上述两点如果做不到,趁早换导师。我的性格不允许我把学生放羊,因为每一个学生背后都是一个家庭。作为我的学生,就一定要达到我的底线。
- 签到制度,如果你能保证实验、论文、项目进度,可以灵活一些,定制规则。比如有些同学工作比较晚,可以适当推迟签到时间(例如统一调后半小时)。
- 进度慢的同学,反而要更严格要求,要减少请假、双休的次数,具体情况具体定。
老师的职责(更详细的讨论请看我的个人主页中的学生规则)
- 导师的主要职责是根据自己的经验、知识去指导你做工作。
- 老师不一定清楚细节,也没有义务帮你想解决方案,这些都是你的事情。否则,还不如老师自己做算了(哪有那么多精力)。
- 硕士研究生阶段,老师最基本的职责:根据项目、学术研究的情况,确定一个合适的题目,平时跟你讨论如何解题、带你入门、在你遇到问题的时候和你讨论(前提是你得讲清楚)、你把论文写好从审稿人角度给你提意见、等等。
学生的职责
- 全力以赴做工作。时间久了是能感觉到的:哪些同学是120%工作,哪些是100%,哪些是80%。有些同学50%的精力投入都达不到。
- 老师给的idea,抓紧做出来,无论成功与否。谁能保证idea就一定好使呢?科研本来就存在很多的不确定性。越有挑战的idea,失败的几率越大。不努力,不前紧后松,行吗?一个idea做个一年,失败了怎么毕业?fast fail,再好的idea,也应该在3个月(最好是1个月)之内看到初步结果,明确是否有效。
- 把事情讲清楚,遇到问题自己尝试解决,实在解决不了,给出一些方案,讲给老师,老师帮着分析
- 绝对不是把问题抛出来,让老师帮你想办法。老师可以偶尔为之,但这绝不应该是老师的职责。老师如果总是这么做,对于学生的独立性培养也不好
怎么读研究生 (2020.9.4)
- 硕士生3年,1年上课(算半年);1年找工作、写毕业论文(基本做不了啥了);实际专注课题的时间很少。可以自己算一下。
- 研究型硕士生只要能做好一个idea,做透,就可以了。
- 工程型硕士生只要能做好一个任务,把系统做好,就可以了。
- 要做好一个idea或者任务,都需要花大量的精力去调研、思考、实验、分析、总结、写作、交流等等。
- 但是,如果研究生期间只做一个idea或任务,显然太亏了。毕业的时候会发现视野太窄、了解的东西太少。那么怎么做呢?
- 最有效的办法是:多关注身边人的工作,主动去了解,扩大知识面。最起码应该知道问题的定义是什么,输入输出是什么,基本的解决方法是什么。看书、看论文,有些东西很难搞清楚。身边人的工作,就不一样了,肯定能问清楚。还有一点,身边人能做出来的东西,给足够的时间,自己也一定能(或者应该)做出来。大家在知识基础、编码方面差距不会很大,如果确实搞不清楚,可能是身边人自己对自己的工作理解不深入,或者讲不清楚,另一个可能就是自己不够努力,或者还没找到窍门(悟)。
- 参与到身边人的工作中,即使论文不挂名也值。
- 如果特别有兴趣,也有余力,可以深入理解、重现身边人的工作。身边人的大部分工作,只要了解基本的东西就够了。
- fast fail原则
- 我读博的时候看到这个原则,十多年了,仍然很认同
- 10个idea,好使的可能只有1个,甚至没有。要尽可能尽快验证idea。
- 不要太关注细枝末节。
- 快速做出baseline,用别人的代码是最好的。要和state-of-the-art结果比较。baseline不一定要达到sota,但是和别人论文中的可以公平比较的方法(比如都不用词典、不同无标注数据)相比,不能太弱。
- 用最简单、最笨的办法实现自己的想法(代码效率、代码的优美等无安全可以不考虑)
- 写任何代码,都要尽力尝试验证正确性。
- 果断放弃不好的idea。有些idea不需要进入验证阶段,在讨论、思考阶段就可以放弃了。不要盲目维护自己的idea,认真思考其不work的原因。
- 花很久时间做一个鸡肋idea,就是浪费生命。我读博期间,曾经花了1年半做一个鸡肋idea。
- 当编码能力到一定程度后,表达能力就至关重要。如何提高表达能力呢,即如何把事情给别人讲清楚呢?要做到1分钟能讲;5分钟也能讲;30分钟也可以讲。
- 多给别人讲,珍惜每一次机会,尤其是做报告的机会。
- 好好总结。写好每一次日志、周志、月报。肯花时间去总结
- 珍惜每一次写论文的机会,一遍一遍的改
- 独立思考和想idea的能力
- 只有一个办法:多思考
- 要严谨,不断锤炼。
- 表达能力和独立思考能力是紧密相关的。表达不清楚,通常也是因为思考不到位。