怎样做研究 二

来源:互联网 发布:淘宝千里眼插件免费版 编辑:程序博客网 时间:2024/04/25 17:33

怎样做实验

技术科学是实验科学,一项技术提出来,到底好不好使,“实验是检验技术的唯一标准”。怎样用实验去验证一个想法是否正确呢?第一步是收集数据,第二步是根据你提出的算法编写程序,运行程序,获得实验结果,第三步是对实验结果进行分析,得出结论。

1、 收集数据

收集到的数据必须真实可信,数据就是“证据”,有的人专门搜集对自己有利的证据,比如你要做一个问答系统,需要收集一些问题,那么最好的做法是从某个实际运行的网站获得真实的用户提问,而不应该自己提一些问题。自己提问,因为研制者自己知道什么样的问题能够处理,什么样的问题处理不了,所以你以及你所在小组的同学们提的问题往往会容易一些,以至于不利于激活技术难点。

收集到的数据要有足够的规模,具有统计意义,有的学者用几十个句子做实验数据,在提倡大规模真实文本处理的今天,这样的玩具性实验是不被业界认可的。从研究到开发,到产品,再到市场,本来是一个漫长的过程,但是由于今天的NLP和IR学术界越来越重视大规模真实网络数据的使用,以及很多产品直接在互联网上提供服务,从互联网上来到互联网上去,从一开始实验环境就是真实的,就是大规模的,因此从研究到市场的距离被猛然拉近了。这是我们这个行当目前的一个突出优势,必须坚持。

如果你所从事的研究已经有现成的国际标准评测数据,那么就应该要用标准数据,以便和国际同行比较交流。如果你的研究领域比较新,没有标准数据,也没有关系,只要你自己采集的数据真实充分,同样可以说明问题。

2、 编写程序

编程是研究人员的基本功,研究人员不应该在编程上有什么障碍,应该能够做到有了想法就能够快速实现一套相应的程序代码。你写的程序是否与你设计的算法完全吻合,是一个需要探讨的问题,有时候你觉得你设计了一个天才的算法,一定能够获得10%以上的指标提升,但实验结果令你大失所望,这是你不要立即心灰意冷,首先要自己检查你的程序,没准是某一行代码出了问题呢。在编程代码方面,还应该注意的一个问题是积累工具。由于你可能长期在一个课题上开展工作,因此非常有必要积累一些常用的代码,比如对语料进行预处理的代码等,这样可以节约很多时间。

用于研究的程序不一定太追求可靠性和速度,因为它的核心目标是验证算法的合理性。但这并不意味着可以乱写程序,造成频繁出错,弄得自己心烦意乱,本来注意力在算法验证上,这样一来不得不把注意力放在调试程序上面。程序的速度也必须考虑,如果每运行一次都需要一天一宿,每当你有一个新的想法,即使是一个小小的改进,都等到第二天早晨才能看到结果,你的研究一定会被这蜗牛般的程序速度拖累得奄奄一息。

3、 分析结果

经过一番努力,你的程序调通了,实验结果出来了,你的伟大设计是否真的卓越无比呢?我敢说,10次有9次都会不如人意,怎么会这样?没办法,因为你在做创新性的工作,“你向前一小步,就是人类的一大步”,这注定是一件艰难的工作。

如果你的实验结果达到了预期的效果,说明你触摸到了真理,可喜可贺。但不能停留在实验验证上,要给出理论分析,为什么你的方法能够取得比别人更好的结果,说不出让人信服的道理来,仍会受到同行的质疑。实验结果再好,仍然达不到100%,做错了的都是哪些数据,具有什么样的特点,可以对这些数据进行细分类,分别找出解决办法,在以后的工作中继续改进。如果实验结果不佳也不用沮丧,因为你已经知道“研究中不如意事十之八九”,我就常常碰到这种情况,特别是我给研究生们出了新点子,他们按照我的想法作了实验,结果效果不佳,我多少会觉得有点尴尬。遇到这样的情况,说明这一仗没有打好,对敌情估计的不够充分,有点像“三打祝家庄”,头两会不了解祝家庄的机关埋伏,只好积累经验,第三回再打。有时,实验结果神奇地超出国际最好水平10%以上,遇到这种情况,几乎可以断言你的实验做错了,或者你的实验条件跟别人并不完全相同,切勿盲目乐观。

前面讲过,创新应该是在世界范围内取得最佳结果,因此你的实验结果要在同等条件下和国际上的最好水平进行比较,方能证明你的成功。很多刚开始搞研究的人,往往犯一个致命的错误,就是儿童式的直线思维,例如:<问题>有人求我画一辆汽车;<工具>我找了一支铅笔和一张打印纸;<结果>我画了一辆奔驰(完)。你为什么要用铅笔,而不用毛笔,不用油画笔,为什么不用宣纸,不用油画布?别人用的是什么工具,有没有人用过油画笔和油画布?如果有,他们的作品是否比你的好?你为什么画了一辆奔驰,而不画宝马?你怎么知道别人喜欢奔驰,不喜欢宝马?比较和思辨是科学的翅膀,没有翅膀,就只能在地上爬行。我找到了一支铅笔,因此我就用铅笔画了;我熟悉铅笔的运用;我看到我的一个同学画了一幅铅笔画很好看,因此我也用了铅笔,等等,这些都不是理由,你必须在比较中思辨,在思辨中给出令人信服的理由。

最后还要问问自己,根据你的实验是否具有可重复性,也就是说是否任何一个学者在地球的任何一个角落只要按照你的实验方法重新做一遍,就能够得到相同的结果。真理应该是放之四海而皆准的,如果你的实验不能被重复,它的价值就会被打上一个大大的问号。

怎样写论文

要写好论文,首先要对写论文的意义有足够的认识。不少工科大学的研究生对工程开发很有兴趣,对做实验也还可以,就是在写论文这个环节上打不起精神来,总是草草应付。其实,“立言”与“立功”同样重要,多年后你开发的软件早已被淘汰,但是你在论文中表述的思想精华,却能够持续地对业内同行产生影响。科学的大厦需要每个研究者添砖加瓦,而科学的砖瓦就是“学术论文”,你再才华横溢,再巧思独运,如果不能以学术论文的形式把你的成果展示给整个学术界,你的学术贡献仍然无从体现。一个工程项目可能殷泽一时一地,一个学术思想却能够影响深远。认为写论文是“虚”的,干项目,干产品是“实”的,这种想法是错误的。

认识到了发表论文的价值,就有助于激发撰写论文的激情。科学论文是严谨的,学理工的人也比学文科的人更显冷静,但是写学术论文和写小说一样需要热情。你做了两年的工作,面对难题,几番挫败,终于找到了一条解决之路,你的喜悦从内心深处涌起,快乐需要与知音分享,此时此刻,你的家人由于不懂你的专业,已经无法在深层次理解你的成功,何不拿起笔来,写一篇论文,把你的成果告诉全世界的同行。

写论文很象编程序,作者就是程序员,每个概念就是一个变量,每行语句都是一条代码,变量的定义要清楚,代码的可读性要强。自己写完了论文,最好请导师和同学帮助挑错,这是在做测试;根据大家的意见要反复修改,这就是在调程序,调程序要细工慢火,一点点地熬,不厌其烦。审稿人相当于软件认证机构,最终的运行是在每个读者的大脑中进行的。如果论文写得不好,审稿人和读者看到一半就无法跟上作者的思维了,这就属于死机了。如果我们拿出调程序的态度调文章,用软件工程的思想管理写文章的全过程,那论文的录取率一定会大幅度攀升。

我有一个学生,写一个摘要,总共四五个句子,他要闭门谢客,整整写一个下午,反复斟酌调整,下过这样的功夫,论文的命中率肯定高。一般人都缺乏耐心,论文写完了就想投出去,不愿意看第二遍。其实“反复修改”是决定论文质量的最关键的一环。我认识一个论文高手,他写完论文就放在抽屉里,过几周拿出来再看再改,如此反复多次再投出去,命中率很高。写论文细活,是妙龙绣凤,是雕梁画栋,不是挖煤打铁,不是担水挑粪,没有细密的心思,没有绝佳的耐力,没有创造艺术品的雅趣是做不好的。

编程序,脑子里要想着用户的需求,写文章,也不是内心独白,要始终在心里有一个读者模型。很多初学者喜欢自说自话,概念A不定义清楚,就开始用A描述别的事情,或者把在A的基础上才能够理解的概念B早早地抛了出来。你自己知道A是怎么回事,不能就认为读者们也会理解,作者要找到“导游”的感觉,始终想着读者走到了哪一步,如果觉得某个环节很重要,读者不一定能够完全明白,还有换一种说法再作解释,绝对不能自己连蹦带跳地往前跑,把读者扔在半路不管了。顾客是上帝,读者是我们的上帝。

不要认为自己以前没有写过学术论文就打怵,其实学术论文也是一种议论文,我们在中学里都学过议论文的写作,议论文要有“论点、论据、论证”三个要素。一篇学术论文的论点通常是:“我提出的方法M比现有的其它方法在问题Q上更有效”。为了证明你的论点,需要“摆事实,讲道理”,事实就是实验,光有事实没有理论分析也不行,难以让人信服,二者缺一不可。很多人说自己的英语不行,影响了论文的发表,其实英语不是最重要的问题,最重要的是论证行文的内在逻辑,论证要丝丝入扣,清澈见底,不能枝杈横生,云山雾罩。好的论文还能起承转合,层层深入,带领读者一起走过九曲回肠,直至柳暗花明,让同行们读罢拍案叫绝。

论文怎么才能越写越好呢,关键还是要多实践,在实践中不断总结经验。美国的孩子从小就自己去图书馆查资料,针对一个题目写长篇大论,长大了,他们写出的学术论文冗长,但的确逻辑清楚,文字干净。我们的同学有的语文没有学好,不但布局谋篇不擅长,语法也常有错误,特别是有的还把网络上的语言习惯搬了上来,别字很多,排版凌乱,让人一看就不舒服。耐着性子看看其中的内容吧,看了半天也发现不了论文的要点,论文没有经过精心的组织,简单把一些实验堆砌在一起,啰里啰唆,如同梦呓,这样的论文在审稿人那里,极可能在30秒之内被枪毙。审稿人往往都是业内专家,专家都非常忙,抽空审阅一下论文,如果你不能再论文的开头用最简洁清楚的话语描述清楚你的问题以及你的创新性的解法,就剩下在收到退稿信后大声疾呼:“(审稿人)根本就没读懂”。行有不中,反求诸己,抱怨没有用,还是在投稿前下足功夫吧。  

在事业上每10年就是一代人,我们这一代(70年前后出生)是承前启后的一代。我们读书的年代没有互联网,与国际的交往也非常少,听说过ACL/Coling就不错了,都没想过去参加。在这种相对封闭的条件下成长起来的人,要想在一个点上做出国际领先的成果,是非常困难的。博士毕业后,多数人都承接前辈,成为课题组的青年掌门,作为掌门,要管理团队,要跑项目,事务性的工作太多,在点上的钻研不够。台湾苏克毅对于大陆青年学者过多地陷入管理事务深表惋惜,但是国情如此,一时不容易改变。我想我们这一代的使命应该是在老一辈的基础上把国家的科研工作体系进一步完善起来,在“面”上把握住研究方向,带领80年前后出生的一代人走上国际舞台,在他们中间发现优秀的学术人才,为他们创造一切可能的条件,支持他们在“点”上真正做出世界水平的发明创造,成为世界级的优秀学者。

怎样成为优秀的学者

1、 基本功
无论干哪个行当,基本功都是至关重要的,任何令人眼花缭乱的高级技巧都无非是一些基本招式的组合及变型。基本功不扎实,就会常常感到捉襟见肘,按下葫芦起了瓢;相反,如果基本功扎实,则可以左右逢源,不受牵绊,日有所进。做研究的基本功包括数学基础、编程能力、专业基本知识、英文阅读、创新能力、写作能力、英文口头交流能力、组织能力和社会活动能力。我一口气列出了9项能力,而且基本上是按照一个学者成长过程在不同阶段能力需求的先后次序开列的。

刚入门时,有的同学由于是从外专业转到计算机专业来的,因此可以接着课程学习的时间补一补离散数学、概率论、线性代数等方面的数学基础。否则一旦进入了课题,发现有的公式看不懂,再回头看数学书,由于心情急迫,就直接翻到相关章节阅读,又看不懂,发现需要前导知识,于是下决心啃整本数学书,啃了头两张,又觉得进度太慢,心里发慌,如此反复,数学基础就越补越夹生了。因此,一定要在课程学习阶段把相关的数学基础打牢,并不需要记住每个公式,但是基本的概念和原理要非常清楚,进入课题后,如果遇到看不懂的公式,能够很快地查书解决即可。

编程能力必须尽快过关,否则影响科研速度。编程不能抱着一本编程的书,死学其中的样例,而应该积极地从老师或师兄那里领到很小的编程任务,比如文本的预处理,或者一个演示的界面等,有了实际任务,也就有了压力和动力,同时也便于融入研究小组,得到老师和师兄的指点,这样进步会很快。

导师会帮助你选一些对课题有帮助的研究生专业课,这些课程务必要认真学习。由于很多选修课没有考试的压力,我发现学生们学得不够认真,基础没有打牢,进入课题后很多概念不清楚,还需要再学习,耽误了时间。什么是功底,那就是对专业知识的一点一滴的积累,将来进入学术界,别的学者提到一些基本概念如果你都不知道,或者模模糊糊,就贻笑大方了。人生每个阶段应该完成的事尽量要在那个阶段完成,如果欠了账,将来想补,则要偿还三倍、五倍的利息,也未必能够补回来。人到中年,猛回头,发现自己的基础如同蜂窝,到处都是漏洞,这样的材料就注定无法做栋梁了,那时悔之晚矣。

每个人都有一定的英语阅读能力,但是阅读能力的强弱差别很大。阅读能力弱的人读英文好似雾里看花,总觉得隔了一层,似懂非懂,读得很慢,却仍然抓不住重点,读完了,一周不看就忘了,仿佛是没有读过的新文章。阅读能力弱的原因有两个,一个是语言问题,另一个是专业基础知识不足的问题,因此除了多读之外,专业知识的积累对阅读的深入和速度也会有帮助。

创新能力、写作能力,我在前面说的较多,不再赘述。在此谈谈英语口头交际能力。这个能力是在参加国际会议时才会深切地感到它的重要性的。在国际会议上,各个国家的学者操着不同的英语相互交流,你的听说能力更不上就成了一个聋哑人,异常尴尬。和“说”相比,更困难的是“听”,常常出现一个亚裔学生作完报告后听不懂听众提问的情况,我自己也是如此,印度英语、日本英语、爱尔兰英语,我的天,你必须竖起耳朵,运用你全部的语音信号处理能力和背景知识加推理能力才能够懂个大概。开国际会议,中国人常常聚堆,这更障碍了你提供英语能力的机会,应该主动找外国人攀谈,不要估计自己的面子,要不断地挑战自己,走向国际舞台,而不要退缩在一个角落里。现在的研究生比我们那时候得到了更好的英语训练,只要拿出自信来,即使第一次出国,不少学生就已经具备了和外国人直接交流的能力。实际上,外国人和你说上一两句,就能够判断你的英语水平,他们也会根据你的水平调整他的用词和语速,再加上你们的谈话一般限定在特定的技术话题,因此交流的难度已经大大降低了。更深层次的交流是能够了解外国人的文化,进而使谈话范围突破学术,和外国人交上朋友。

有了上面的能力,你可以成为一个合格的“学术单兵”。个人能力强,先做好一个单兵很重要,但随着经验的增长,你开始指导一些本科生或低年级的研究生开展工作了,两三个人就是一个团队,组织能力强的人可以把自己的团队带的生龙活虎,“嗷嗷叫”,反之则团队内产生摩擦,反而降低效率。高年级的研究生毕竟不是老师,没有老师的权威,也不能总通过“打小报告”对自己的“小弟”构成威慑,他应该通过自己的为人、才华吸引低年级的同学,首先得到他们发自内心的尊重,让他们意识到跟随自己能够学到知识,然后再用憧憬、鼓励、恳谈、告诫等管理方法激发他们的热情,带动他们跟随自己一道工作。根据他们的能力和时间合理地安排任务,随时给予指导,并从生活上对他们进行关心,和他们成为朋友。

要成为大学者,必须在学术界,以及相关的企业界、政界建立自己的人脉,从而有机会整合更大的资源,做出更大的事业,因此社会活动能力对于大学者是必不可少的。综合型的人才跨国个人学术原始积累阶段后,会成为学术组织者,此时他们的社交才能会得到充分的发挥。

2、 学术诚信

我个人是很赞成学术打假的,今天的学术界越来越受到商业的影响,虚的东西太多,需要有“方舟子”这样的人,震慑那些造假蒙事的所谓学者。

作为研究生,要严格避免做犯以下错误:抄袭(包括在文章中混淆自己和他人的工作);一稿多投(包括一篇文章略加修改就另投他刊);编数据,刻意裁减数据,或改数据。我的邻居原是一个学院的副院长,他在编教材时被指整页抄袭了别人的书,受到原著者的追究和学校领导的批评,书生心窄,很快得了肺癌去世了。还有一位同学,把一篇英文论文的主要内容翻译过来,作为其论文的部分内容投往了国内一家重要期刊,结果被该刊物认为是剽窃,申辩无效,她受到学校的通报批评。在治学问题上,不能存在丝毫的侥幸心理,否则后果非常严重,不但个人学术前程被阻断,也使导师和你所在的研究机构蒙羞。

也不要做自吹自擂,比如:在文章中说自己“第一个提出了某某方法”;不要打击同行,对同行的工作要客观而委婉地评价,绝不能不负责任地随意针砭;不要没参与工作,随便挂名。

3、学术勇气与耐力

年轻人一定要有学术勇气,敢想敢干,绝不能墨守成规,绝不能迷信权威。权威往往受到已有成见的束缚,他们忙于社会活动,不在研究第一线,他们的观点未必正确。因此,如果你得到了与权威不同的结论,并确信是正确的,要敢于坚持,当仁不让于师。

学术界有很强的马太效应,喜欢锦上添花,不喜欢雪中送炭。在你没有被业内认可以前,你的能力和成绩很可能会超过你获得的回报,在怀才不遇之际,个别学者会踏上脱离学术圈开展独立研究的道路,窃以为不可,要做大事,需要耐住寂寞,脚踏实地地工作,学会与人合作和交往,迟早破壳而出。

4、进入科学共同体
在你具备了一定的基础后,可以通过发表论文,参加会议的方式进入学术界(科学共同体),这叫做入行了,出道了。在会议上宣读论文,听完别人的报告后当众提问或提出建议,在会间休息时主动结识知名学者,多多结交同龄的研究生和青年学者等等,都是进入“圈子”的途径。在公众场合,既要虚心地向成了名的“剑客”“侠客”们请教,又不必卑躬屈膝,令人生厌。“弱国无外交”,提高自身的研究水平是本,学术交往是末,你自己的工作做得出色,别人也乐于和你交往,反之,自己的工作稀松平常,得不到专家们的认可,只知交往,适得其反。

5、满怀研究乐趣

世界上有一种职业,别人花钱让你做你喜欢的事情,那就是“研究”。经常有激动人心的发现,充分表现自我,其中的乐趣“如人饮水,冷暖自知”。

科学家静心从事研究工作时发出阿尔法脑电波,据说和僧人入静时发出的脑电波是一样的,对人的身心健康很有好处,因此很多学者非常长寿,中文信息学会的创始人钱伟长先生今年97岁,用他的名字设立的首届“钱伟长奖”颁给了92岁的“亚伟速录机”的发明人唐亚伟先生。

如果你喜欢旅游,那么更要从事科学研究了,学术会议常常在风景如画的地方举行,阳光沙滩海浪,学者们在阳伞下轻松交谈,没有政界的险恶,没有商场的喧嚣,何等惬意。学者自然不如企业家富有,失去一些财富,换来的是自由。

今天是初九了,我的春节假日彻底结束,啰里啰唆,匆匆忙忙地了这许多文字,能够读到此处的读者一定很辛苦了,希望其中的一两个观点能够对您有所帮助。 

 
原创粉丝点击