转自《知乎》如何写好一篇高质量的IEEE/ACM Transaction级别的计算机科学论文? 
问题: 
作为一个博士生,一直为写论文头疼,读过很多高质量论文,觉得写的真好,但是轮到自己写总是力不从心。 最讨厌的是活生生的把一个A级别的idea写成C质量的论文…..

在这里的高质量限于IEEE/ACM Transaction级别,或者同等级别的Conference, 例如SIGKDD,CVPR,STOC,CCS之类

看过很多如何写论文的文章或者视频, 但都面向的是如何写论文, 而不是如何写Transaction级别的论文, 希望得到一些指点

回答: 
作者:Terafer 
链接:https://www.zhihu.com/question/22790506/answer/81787300 
来源:知乎 
著作权归作者所有,转载请联系作者获得授权。

恭喜你已经有了一个A类别的idea和相应的实现以及数据,那么接下来就是写文章的问题了。计算机论文写作还是有一定的规律可以遵循的。

首先,你需要判断自己的文章是投往哪个A类期刊或者会议,是IEEE的还是ACM的。通常IEEE会议的格式和ACM会议的文章格式要求有所不同,我建议你在投论文之前先把该会议的Call For Papers好好研读一番,弄清楚文章长度,需要使用的Latex或者Word模板以及匿名方式等一系列非技术性问题,然后再开始写作。

在写作之前,先问问自己如果这篇文章写好以后给整个领域(community)的贡献是什么,这实际上是整个文章的灵魂,也就是你解决某个问题(problem)的方案(idea)。想清楚以后把它(们)按照重要性顺序写下来,这些就是你在Introduction里面告诉读者包括审稿人的contributions。贡献可能是新算法,新架构,新实现或者是前人没有的insights。你在写contributions的时候面向的读者很有可能是自己,所以可能忽略了problem背景和定义,这些就可以慢慢在Introduction里面填充。

这样Introduction就写好了,比如说:某某问题是实际中存在的一个问题,这个问题重要性是blah,blah,blah。之前发表的论文针对这个问题提出了三个有代表性的解决方案(此处引用可能至少三篇论文)。第一个解决方案甲大概做了一二三,但是没做四;第二个解决方案乙做了一四,但是没做二三;第三个解决方案丙做了一二三四,但是性能比较差。在这篇文章中,我们提出一个性能比较好并且同时做一二三四的解决方案。接下来写我们这个解决方案是如何实现同时支持一二三四的情况下提升性能的。比如说用了新算法,新架构或者新的实现,都可以。讲完基本技术创新点以后就是contributions,把之前想好的贴上去就可以了。最后在Intro里面加上后续内容组织,比如说第二章是相关工作,第三章是综述,。。。

一般来说Intro写完以后会写一章相关工作(Related Work)。从最Related的论文开始写起,比如说以上提到的三篇。这里需要着重讲的是,Related Work不是记流水账(e.g.,甲用了idea A,乙用了idea B,丙用了idea C),而是要比较这些论文,阐述她们各自的优缺点。

Related Work写完后,你需要写一个Overview来总括你的问题和解决方案。我的经验是最好想一个最最简单的例子(Running Example),然后使用这个例子引出你要解决的问题。接着再把之前在Intro中提到的现有解决方案挨个说一遍,并且用那个案例表明三个解决方案的不足(这里最好用实际数据)。最后把你的解决方案介绍一下,重点是与前人做的相比较。如果你用了一种新的算法,你可以大概提一下这个算法的思路以及实验数据;如果是新架构,最好放一张架构图上去,然后阐述一下新架构的优势(以及劣势)。在这一章介绍自己的idea的时候,你只需要概略描述即可,凡是涉及到技术细节的东西均可以引用后面的章节来节省页面空间。

后面这一章就完全是技术细节了。如果是自己做的的话,这一章是最好写的,因为你只需要把code/算法/架构在纸上还原出来即可。注意由于页面限制,一般来说这一章不可能包括所有细节,按重要性取舍吧。注意有些corner cases,如果很重要的话,千万别省略。

技术细节讲完了,如果页面允许,你还可以大致讲一讲你的实现情况。比如说新的系统是在Linux上实现的,新加了20000行C代码,1500行Python以及300行Bash script。C代码主要干什么,Python主要干什么以及Bash script干什么,最好能与技术细节里面所讲的呼应。

自然地,技术细节和实现讲完了就该讲你是如何用实验验证你的解决方案支持你的contributions啦。根据上面的例子,你需要写的是如何从实验数据中展示你的解决方案支持一二三四并且性能不错。支持一二三四这种是或否的问题比较容易说,但是性能不错就需要和前人作品做大量比较了。柱状图,折线图,表格等等数据展示手段,只要能说明问题都可以采用。这里需要注意的是,只要你写在论文里面的文字或者是图表,你都要想清楚背后的原因,最好能在论文里做充分的解释。比方说,你采用了新的算法,性能见表1,原因是复杂度降低了;你采用了新架构,性能提升见图3,原因是新架构节省了内存拷贝。通常来说,新算法或者架构会总体上提升性能,但也可能会有异常情况,即新方案比不过老方案的地方。这时需要格外注意,因为这是你的weaknesses,你需要用令人信服的说法向读者展示这些异常情况存在的可能性较低,或者可以通过某种简单方式避免。

如果写到这里你还有充足页面可用,你可以试图写一个discussion章节来讨论你的方案的缺点,以及未来有可能的改进情况。不要怕展示缺点,你越诚恳审稿人对你印象越好。如果你是故意遗漏新方法的一个很显然的缺点,这会给审稿人非常不好的印象。你也可以提一些你的方案的其他应用等等。

最后就是结论啦,用一两个段落概括一下解决的问题,解决思路以及贡献就可以了,比较好写。

如果你需要写一些附录,比如说文章里有几个定理没有给出证明,那可以在后面的Appendix章节中加入。通常Appendix审稿人不太会读。

我还有一些小建议,希望能对你有所帮助:

  1. 找到会议程序委员会(Program Committee,也就是审稿人)的页面,然后看看哪些审稿人做得和你做的相关。如果有的话你应该在Related Work中引用他们的作品,因为大家都希望自己的论文被别人引用。不要怕有礼貌得指出他们的论文缺点,如果你说得对,审稿人看到会很高兴的。

  2. 论文提交前用你能找到的任何有效的书写检查软件检查一下拼写错误或者简单的语法错误,我知道有些审稿人会对这种小问题过敏,如果一篇论文中此类错误过多可能会导致直接悲剧。有条件的话,找一个英语为母语的人帮你最后把把关。这里我推荐你如果可能的话找一个美国教授合作写论文,可以节省很多时间。

  3. 如果你之前没中过2-tier或者3-tier的期刊或者会议,那么可以先从这些着手,慢慢锻炼。

祝你好运!

利益相关:计算机博士刚毕业,期间3篇CCS一作,1篇PLDI一作。

转载于:https://www.cnblogs.com/gejuncheng/p/10391497.html

如何写好一篇高质量的IEEE/ACM Transaction级别的计算机科学论文?相关推荐

  1. 如何写好一篇高质量的IEEE/ACM Transaction级别的计算机科学论文?——顶刊与顶会的区别...

    作者:Bihan Wen 我这里再补充几点我的体会,可以说是一些写作之"术".虽然说只是一些技巧,但亲测是对最后文章中与不中密切相关.在首先掌握了正确的"道"以 ...

  2. 【IEEE/ACM专区】一篇高质量的IEEE/ACM Transaction论文是如何顺利发表的?

    对于国内计算机领域的专业人士来说,CCF期刊当然是投稿首选,因为CCF(中国计算机学会)在国内的整体影响力和渗透力毋庸置疑.但就国际学术影响力而言,CCF与美国计算机协会(ACM).电气和电子工程师协 ...

  3. 论如何写出一篇高质量的英文论文

    论如何写出一篇高质量的英文论文 研究生期间,不可避免的需要完成至少一篇小论文.根据以往经验,小论文往往还是英文的.今天就谈一下如何写出一篇高质量的英文小论文.以下内容以截取图片的形式展现.       ...

  4. 如何写好一篇高质量计算机科学论文?

    话说上世纪五六十年代,出了一门贼高级的学科,它就是计算机.它短短几十年的时间,就让阿尔法狗打败了柯洁.包括跳棋.象棋.五子棋和围棋,人类也都让计算机虐的没脾气. 计算机能实现的东西如此厉害,但是目前的 ...

  5. 如何写好一篇高质量的paper

    http://blog.csdn.net/tiandijun/article/details/41775223 这篇文章来源于中科院Zhouchen Lin 教授的report,有幸读到,和大家分享一 ...

  6. 【AI智能写作】怎样写一篇高质量热门火爆的技术文章?

    目录 怎样写出一篇高质量的文章? How can I make sure my article is engaging?如何确保我的文章具有吸引力? 5步教你

  7. SEO网站站长如何写一篇高质量的软文

    大部分做SEO的站长不知道如何去写一篇高质量的软文!其实掌握了这些技巧,写高质量软文很简单,也能让网站优化做起来更加的容易. 1.标题选择 在这个行业永远是初级用户看文章的比较多,而有一定经验的SEO ...

  8. 2分钟用ChatGPT写一篇高质量文章文案,让它告诉你:如何靠短视频赚钱?

    如何利用 ChatGPT 快速编写一篇高质量的文章 一.文章结构剖析 如果我们经常去写文章或者是去看别人的文章,你会发现文章分为以下几部分: 标题 大纲 前言/导语 正文(不同的结构) 结尾 呼吁 当 ...

  9. 收藏篇:请学习本文的排名靠前大法,如何编写一篇高质量的技术博文

    如何编写一篇高质量的技术博文? 文章目录 如何编写一篇高质量的技术博文? 否写过博文或对自己博文不满意 摘要的重要性 关键字 标题.摘要.关键字的结合效果 内容选定后怎么抒写 内容优化 优化排版 同样 ...

最新文章

  1. 那些年值得铭记的时刻
  2. Hyperledger Fabric 1.0 实战开发系列 第三课 chaincode开发
  3. .Net(c#)加密解密之Aes和Des
  4. Eclipse多行注释方法
  5. POJ 2018 Best Cow Fences (二分答案构造新权值 or 斜率优化)
  6. python汉字长度_行中字符串的长度(Python)
  7. linux wait 子孙进程,Linux-进程基础
  8. 仿造小红书页面代码html,jQuery仿小红书登录页,背景图垂直循环滚动登录页,向上循环滚动的动画,实现一张背景图片的无缝向上循环js滚动...
  9. 华为广域网帧中继(背靠背)配置
  10. html显示python执行的结果_批量执行用例,且结果显示在html中,python控制台也会显示运行过程...
  11. java 并发多线程显式锁概念简介 什么是显式锁 多线程下篇(一)
  12. 大数据奏鸣曲,听出了什么?
  13. 机器学习大部分是用Python去实现,是否可以用Matlab去做机器学习呢?
  14. 遥感原理与应用——遥感影像及其特征、遥感图像处理
  15. 架构师的主要职责是什么?
  16. Tecplot 自定义色谱颜色
  17. C语言程序怎么解决数独,数独解法解决方法
  18. 7.3万字肝爆Java8新特性,我不信你能看完!(建议收藏)
  19. 计算机专业应届研究生面试自我介绍,计算机专业研究生面试自我介绍
  20. 咋样回复计算机桌面删除的东西,电脑桌面上的便签怎么删除及桌面便签删除后还能恢复吗...

热门文章

  1. 《UNIXLinux程序设计教程》一3.7 非阻塞I/O
  2. Linux下运行C语言程序
  3. python系列------计算机运算过程
  4. forfiles命令批量删除N天前文件
  5. Xeno Tactic 2
  6. MySQL中的锁(表锁、行锁)
  7. [Android Studio] Android Studio常用快捷键
  8. 【转】WINDOWS消息响应,以及处理分派机制
  9. android第九步文件的保存和读取
  10. Handler消息机制(九):IntentService源码解析