哈尔滨工业大学计算机系(英才学院)大四老腊肉的大学生活科普(长文) (11)

网上有这么一个讨论,说现在科研论文的结构全都一个样子,连每一节要写什么都已经约定俗成了,跟以前的八股文也没什么两样,这会不会限制科研人员的发挥?有一个观点我比较赞同,他说科研论文作为一种让别人知道自己科研成果的媒介,主要是要满足两个要求,第一是能把自己的成果清楚明了地写出来,第二是能让别人很容易就能看懂,找到关键点。现在这种长得像八股文的论文格式其实很满足这两个要求:对于作者而言,我在每一节下描述清楚我做了什么就可以;对于读者而言,我想看原理就跳到第三节,想看实验结果就跳到第四节,甚至如果我熟悉里面的小节结构还可以更准确地去找到我想看的东西,条理清晰,找重点非常方便。归根结底,科研论文不是文学作品,它追求的不是美,而是井井有条、逻辑分明,所以写成八股文是很符合需要的。

实际科研的过程中,除了读别人的论文,还有一个很常见的需求是我想看一看或者跑一下别人写这篇论文所写的代码。并不是所有论文都会附上自己的代码,应该说很多论文都不会附代码上来,这就导致一个问题,就是你论文里的实验数据真的不是编的吗?实际上确实有少数这样造假的例子。另外我们读论文的时候有时看他句子说的不清楚,想看看他代码在这里到底是怎么写的,不附代码的话就什么都看不了,只能瞪着论文硬着头皮去猜。因为上面这两个问题,所以我们有句话说“写论文不给代码的都是耍流氓”。

论文要附代码一般是会上传到网上,比如github上开个仓库把代码存进去,然后把网址写在论文里。有少数人会把代码的下载链接放在自己或者自己学校自己单位的主页上。上传代码比起写论文而言真的不难,至于那些不附代码的论文为什么不附代码,我想可能有两种原因:一种是代码里包含或者用到了不能公开的代码;另一种是代码写得太难看了,别说让别人看,自己隔时间长了都看不懂,附上就等于公开处刑。当然如果要说还有第三种,那可能是实验数据掺杂了点水分。

就算别人给了代码,很多情况下也不是下载下来就能跑的,可能还需要安装各种各样的运行环境,把自己电脑先折腾掉一层皮才能跑起来。凡是跑过论文代码或者用过开源软件的人可能都碰见过类似的情况,这也是曾经搞科研的人最爱抱怨的问题之一,科研搞得久的人电脑上往往都装着一大堆环境。不过后来状况有所好转,有一些专门的技术可以解决这种环境配置的麻烦。比如docker,学一学总是没坏处的。

关于选题,其实搞科研时做的题目基本都不会是普通人日常会听到的大词汇(什么“图像识别”、“自动驾驶”之类的),而是一些很细小的点。比如随便看一篇顶会论文,它可能写的是某种语音识别架构中的几种基元对比;即便是其它学科也多半是什么人脑某种神经元在特定条件下的行为一类的题目。现在的科学已经不可能由一个人推动一整个领域发展了,现在的科学更像是一个皮球,有一群科研人员在皮球里冲着一个方向去努力地顶,每个人冲上来顶都会让皮球的这个方向鼓一点,顶的人多了,这个领域才能鼓起来;全世界所有科学家朝着皮球的各个方向上去顶,皮球才能逐渐变大。现在作为一个科学家,最好不要去希望自己能够做出多大的成就,只要把眼前的困难一点点往前突破就是最好的。可能一些科学家最终确实做出了世人惊叹的成就,但去看看这些论文,它们一定引用了很多前人的文章,而前人在做这些的时候,可能并不知道他们的工作最终能够引出如此巨大的成果,这正如吃了十个包子饱了不代表只有第十个包子才是有用的一样。

题目选好,数学推导,原理分析,实验搞搞。在工科学科里,实验结果说明一切,如果实验不出效果,理论再好也是扯淡。有一些工作是比较容易做实验得出结论的,比如设计了一个新的解方程算法,那实验肯定要做到两点:第一,解出来结果要正确;第二,速度要快。结果错误的话当然一般是发不了文章的,而文章发出来了,跟大家比的肯定是第二点,也就是速度。速度这个东西可以很直观地通过解方程需要的时间表现出来,是一个精确的数字。但另一些工作就不那么好评价了,比如机器翻译。翻译结果自然是有好有差的,但你的结果到底好不好,怎么跟其他人的结果对比呢?一般可能会想到找专家来打分,但专家打的分数一定是客观的吗?而且即使是同一个专家,他对同样质量的翻译打分也可能有上下浮动,终归不够准确。所以在科研中,对每个问题都设计一个所谓的“性能评价指标”是非常重要的。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzxdfp.html