着急吃不着热豆腐!这是我奶奶告诉我滴,这一次不能盲目,不要盲目!
第一步. 调研、入门1. 确定一个感兴趣的大领域,比如分布式系统或者机器学习,或者深度神经网络。读这个领域经典算法和技术,也可以是几本比较好的书,读完然后再实践实践,动手加深理解。这个过程做完就算是初步入门了。2. 找该领域的顶级会议,比如系统领域的有OSDI、SOSP,机器学习的领域有ICML、CVPR,深度学习的有NIPS、ICLR等等,可以搜CCF会议推荐列表看各领域的顶会列表。然后看近几年这些顶会的论文,因为这代表了最新的研究热点,咱不是说一味的追热点啊,毕竟对于初学者没有足够的领域专业背景,追热点是最快的方法。因为热点往往是该领域最亟待解决的问题,往往是发展最快的小方向,也最容易产生新成果。如果是老问题,人家都研究十几年了,给你留下的待解决的问题就很少或者不是很重要。当然如果是有几十年经验的研究者就不必追热点,他们知道该领域哪些是fundamental的问题,哪些是最值得研究的问题。3. 读了这些前沿论文后,确定一个小方向,比如分布式系统是个大方向,小方向可能是机器学习分布式训练;大方向是深度学习,小方向可能就是graph embedding;大方向是机器学习,小方向可能是半监督学习等等。确定小方向的过程是个知识不断积累的过程,非常重要,这需要你对大方向有很多了解,对小方向有更深入更全面的理解,需要读好至少100篇以上论文,需要你知道该小方向的研究进展历史,这需要你知道该小方向别人都在哪方面做工作,做该小方向的顶级研究组都有哪些,他们正在干什么。第二步. 发现问题这步超级难,如果发现了个好问题,那就是成功的一半。这个问题最好是重要的、本质的、没有直观解决方法的。4. 确定小方向后,你需要阅读大量的这个小方向的论文和了解开源项目,再不断聚焦,再确定一个要改进和优化的小小方向,这个可能就是论文的主题。小小方向可能是机器学习分布式系统中的parameter server通信模型,可能是dynamic graph embedding等。然后就要更聚焦地读这方面的相关论文,这时候论文就比较少了,几篇到几十篇到几百篇都有可能,这些论文要精读,花几个月时间研究一篇论文也不为过。5. 挑几个重要的论文工作实现,也可以找开源的运行跑一跑试一试,idea往往从实际运行中来,光靠读是不行的。这个跑一跑可能需要你尝试不同的运行环境,不同的workload数据集,不同的应用场景等。比如,parameter server(PS)模型在本地集群上跑是不是和paper声明的一样、在异构的动态性极强的集群环境下效果怎么样、除了paper提到的算法处理其他算法的时候效果怎么样、除了paper提到的数据集换另外一类数据集怎么样;graph embedding方法处理密集图和稀疏图都怎么样,处理动态变化的图怎么样,等等吧。你要发现X方法仅在a环境下好用,在b环境不好用。这个就是发现问题的过程。当然,没经验的研究者可能很难想到多种环境、多种workload、多种应用场景,这就需要积累。另外一个发现问题的方法是从实际生产中来,这个当然是最好的,但是往往是大企业环境下才有这个条件。6. 确定你发现的问题还没有被解决。这又需要广泛的阅读和调研,但是问题已经很聚焦了,搜索也会很容易,用你特定问题的关键字在google 搜索(这里强烈建议用google,其他搜索引擎基本搜不到),找到解决相关问题的论文。看看这些论文是不是已经解决了该问题,如果解决了,你有两种方案:第一,该问题已经解决的非常好了,放弃解决该问题。第二,该问题的解决方案还有问题,我还有更好的办法。我建议后者,最起码尽量尝试尝试。5和6步是个迭代的过程…第三步. 分析问题7. 分析问题产生的本质原因。这个往往和第5步发现问题同时进行。这一步靠的是功底和积累,靠的是对问题的理解程度。理解的越深刻,分析的越透测,你之后产生的解决思路就越有可能正确和有效。比如分布式机器学习的PS模型在异构环境下、和在处理数据不均匀的情况下就不好,本质原因是其同步的集中式通信模型,造成PS集中服务器往往需要等待。传统graph embedding方法采用批处理模式,需要graph的全局信息做embedding,当然无法应付动态性非常强的局部更新情况。8. 基于分析,就是对该问题的深刻理解,产生改进的idea。这个可能很难,可能靠运气,但我觉得更多的是靠对问题的理解程度,理解的越深刻,本质原因抓的越准,就越可能产生创新idea。读过一本介绍google企业文化的书,google产品的成功,既不是靠技术能力,也不是靠用户需求,而是靠技术洞见(insight),这就是对问题本质的深刻理解。比如,PS模型在某环境下问题的本质原因是集中式的同步模型,那么我们就可以提出尝试异步通信的模型的idea。分析能力跟个人的批判性思维、独立思考能力都有关,而这正是中国人欠缺的,可以通过读有深刻见地的书籍文章、经常提问来锻炼。第四步. 解决问题9. 实现你的idea,做大量实验验证。这需要动手能力,需要编程能力,需要坐得住。10. 验证你的解决方案,根据实验分析不断优化你的方法。做了大量试验后,得到了若干结果,可能是不好的结果,但是不要一下子否定自己的解决方案,这不能说明你的idea不好用。一个好的方法往往经过千锤百炼,同样,你的idea通常不会一下子就成功。需要你根据实验结果分析不好的原因,然后基于你的理解改进方法,这是一个反复不断迭代的过程。比如,你发现异步PS模型效果还不如原来的呢。那么关键的是,你要问自己为什么?为什么理应提升的却没有提升?你要看实验运行的日志,看看是哪里慢了,差在哪里,最后你经过不断的实验、分析、思考,你发现了,你提出的异步PS模型虽然没有了等待开销,但是计算的有效性却降低了,结果整体性能反而下降了。那么你下一次迭代就要想怎么把这个计算有效性提上来。我又有了个方法,可以评估每次计算的有效性,然后把计算资源都投到有效性高的计算上。OK,idea不错,那么怎么评估有效性呢?不能开销太大,否则又得不偿失了,你可能想到了一种近似地评估方法。重新实现后,发现效果还不错。OK,恭喜你!你可以准备发论文了!整个研究过程,导师将起到关键的作用。导师可能会给你个问题,这是难能可贵的,基本帮你做了一半的事了,否则你可能需要花上一年时间找问题。然后整个研究过程,都是在导师的引导下进行,需要定期向导师汇报,与导师讨论idea和请导师分析实验结果。最好自己也要经常找同门讨论,而不是闭门造车。第五步. 撰写论文11. 设计你的论文,草拟论文的骨架。每一章都写啥,每一段都写啥,实验都做啥。论文的逻辑往往比语言重要的多,逻辑合理的论文更易读懂,即使咱华人有天生的英语语言缺陷,但是好的逻辑就可以弥补这个不足。写论文就和讲故事一样,怎么能把一个事说明白,不那么简单,甚至说很难,需要不断锻炼。写完给老师看,老师同意后进行下一步12. 写作论文。这个就是根据骨架填肉的过程,但是这一步也不简单,特别对于英语不好的同学,写出来的东西简直是不忍直视、不堪入目、毁人三观。最近上海某高校老师辱骂学生这事就是因为这个,我可以说,我每次看到学生论文也都是这个心情,给学生通宵改论文在家里一边改一边骂,但是当面对学生还是要以鼓励为主,要耐心,要耐心,要耐心,尽力压制自己的怒火,以平和的心态帮助学生提高,期望他下次能给个更好的版本。但是往往事与愿违,看淡点吧,仅求写作态度好点就行了,毕竟这不是一朝一夕能提高的,需要你不断积累。有几个写作的方法吧。第一,不要自己想当然,对于不确定的句型,用“”扩上上google搜,看看你这句型有多少人用过,如果没有几个人用,那就别用,换个写法。第二,读别人论文时,遇到好的句型就记下来,不断积累才能提高。第三,避免一切语法错误,我觉得这个是可以做到的,现在网上那么多工具都可以用。语法错误都避免不了那基本就是态度问题。遗憾的是,我很少遇到能避免语法错误的学生,我生气往往是因为态度问题,而不是能力问题。第四,尽量用短句用简单句子,别用长句。你写论文是为了让别人理解你的方法,不是写文艺作品,能说明白就行。13. 提炼总结,改进方法。写作的过程也是屡顺自己思路的过程,写作的过程中往往也能发现自己方法的漏洞,那么就要继续回到8,重新思考解决方案,又或者你发现需要补实验来支撑你的论点,那么就继续实现系统做实验,得到实验结果。14. 关于实验。怎么做实验是学生总问的问题,怎么做科学实验也是一个很重要的问题,有对照组、无偏的、定量的,这些都是科学实验的重要要素。如果有解决该问题的其他方法你首先要说明你的方法更好,至少在某一方面更好,这其中可能要涉及到不同的执行环境,或不同的算法数据集。然后设计实验说明你的方法好在哪里,用实验数据说明,比如异步PS和同步PS对比。然后你要进一步用实验数据说明,异步PS的有效性也提高了,如果不考虑有效性的话那么结果就不好。然后你的方法是否有些重要的超参数,试试variation导致各种结果。在实验结果展示方面,要学会用各种工具画各种图,把重要的因素用可视化方式体现出来。第六步. 投稿和看待审稿意见15. 接下来就是投稿。选一个合适的会议或期刊投稿,这个可以听老师的,老师基本有这方面的常识,根据你工作的方向和档次选择合适的去处。确定好了哪个会议期刊后,就需要按照会议期刊要求来整理论文格式,latex是必会的工具了。之后赶在deadline之前提交论文,这个最后的几天可能很痛苦,因为你的论文和方法总有改进的地方,老师的要求会让你最后几天是最忙的几天。但是需要认识到,凡事无完美,你总也改不到完美,你需要一个deadline来督促你完成一个milestone。开始进一步工作或下一个工作。16. 看待评审意见。接下来是漫长的等待,会议一般是2-3个月的时间,结果可能是接收也可能是拒掉,相比于结果,更应该看评审意见,看看这些意见是否合理,是否能解决,无论是接收还是拒绝,然后接下来就再次回到解决问题的部分,再次开始优化方法的过程。如果是接收了,那就可以准备订机票开会旅游去了。如果是拒掉那一般是有比较大的问题,那就再仔细深思下一下你的方法。继续优化,还是降低档次投个差点的会,就看你导师的了。第七步. 后续17. 宣传你的工作,扩大影响力。首先你可能是要去参加会议,做个漂亮的ppt,反复演练,争取有比较好的演讲效果。有时你导师有机会去一些地方做报告,把这个工作介绍一下,都是扩大影响力的方法。18. 开放源码。还有是尽量把自己工作的代码和数据开放,挂到网上,让别人来使用,接受别人的改进意见或者是简单的debug。咱不是专业的工程人员,也不用指望你的成果可以马上用于生产,个人觉得开放代码主要是为了让别人更好滴了解你的方法,这有助于扩大影响力,产生后续研究工作。如果有人引用你的论文、或咨询论文内容、又或是使用了你的代码和数据,这也算是你对整个科研事业有那么一丁点的贡献了,这比水论文有意义多了。整体来说,发表论文需要你有:批判思维能力,动手能力,知识面,写作能力,表达能力,英语,韧劲(抗打击能力)等等一系列能力,如果在研究生期间真能发表一篇论文,经历了以上这么多磨难和锻炼,我想你的能力也是不知不觉提高了很多,成为了该小小方向的一个小小的专家了。这对你来说,是最最重要的。这里我提到了韧劲,就是说,在解决问题过程中,你会受到不断的打击,包括来自导师的、来自自己的实验结果方面的、来自评审意见的,但是你要做的就是,站起来,继续凿,直到导师满意,知道reviewer满意,直到大家满意。别把这事想简单了,当你想象一下周围好多人都发好多sci了,而你还在为这么一篇完全未知结果的论文而这么努力的时候,我觉得大部分人可能就是缺少这个韧劲才最终以失败告终的…最后,我想再强调一下,发论文不是简单地发论文,而是通过发论文宣传你的工作,以便对某技术或人有那么一丁点影响。无论你发哪个档次的论文,只要目标正确,我觉得你都会有收获和有贡献的。相比较于为了发论文而发论文,你会觉得你是那么地高尚和高大,他们只是造废纸,而你已经对社会有贡献了…(以上内容来源于学术堂)
1、论文题目:要求准确、简练、醒目、新颖。2、目录:目录是论文中主要段落的简表。(短篇论文不必列目录)3、提要:是文章主要内容的摘录,要求短、精、完整。字数少可几十字,多不超过三百字为宜。4、关键词或主题词:关键词是从论文的题名、提要和正文中选取出来的,是对表述论文的中心内容有实质意义的词汇。关键词是用作机系统标引论文内容特征的词语,便于信息系统汇集,以供读者检索。 每篇论文一般选取3-8个词汇作为关键词,另起一行,排在“提要”的左下方。主题词是经过规范化的词,在确定主题词时,要对论文进行主题,依照标引和组配规则转换成主题词表中的规范词语。5、论文正文:(1)引言:引言又称前言、序言和导言,用在论文的开头。 引言一般要概括地写出作者意图,说明选题的目的和意义, 并指出论文写作的范围。引言要短小精悍、紧扣主题。〈2)论文正文:正文是论文的主体,正文应包括论点、论据、 论证过程和结论。主体部分包括以下内容:a.提出-论点;b.分析问题-论据和论证;c.解决问题-论证与步骤;d.结论。6、一篇论文的参考文献是将论文在和写作中可参考或引证的主要文献资料,列于论文的末尾。参考文献应另起一页,标注方式按《GB7714-87文后参考文献著录规则》进行。中文:标题--作者--出版物信息(版地、版者、版期):作者--标题--出版物信息所列参考文献的要求是:(1)所列参考文献应是正式出版物,以便读者考证。(2)所列举的参考文献要标明序号、著作或文章的标题、作者、出版物信息。
因为计算机领域是一个发展很快的领域,新技术,新idea层出不穷,而journal的更新周期较长,不如conference迅速。所以最新最有影响力的成果都会先出现在conference上。
投稿到会议网站,然后审稿后交费就可以了
你在中国比较权威的杂志发表 最好在教育报什么 的 这些都是教育部的杂志期刊什么 的 或者在什么教师杂志发表
着急吃不着热豆腐!这是我奶奶告诉我滴,这一次不能盲目,不要盲目!
第一步. 调研、入门1. 确定一个感兴趣的大领域,比如分布式系统或者机器学习,或者深度神经网络。读这个领域经典算法和技术,也可以是几本比较好的书,读完然后再实践实践,动手加深理解。这个过程做完就算是初步入门了。2. 找该领域的顶级会议,比如系统领域的有OSDI、SOSP,机器学习的领域有ICML、CVPR,深度学习的有NIPS、ICLR等等,可以搜CCF会议推荐列表看各领域的顶会列表。然后看近几年这些顶会的论文,因为这代表了最新的研究热点,咱不是说一味的追热点啊,毕竟对于初学者没有足够的领域专业背景,追热点是最快的方法。因为热点往往是该领域最亟待解决的问题,往往是发展最快的小方向,也最容易产生新成果。如果是老问题,人家都研究十几年了,给你留下的待解决的问题就很少或者不是很重要。当然如果是有几十年经验的研究者就不必追热点,他们知道该领域哪些是fundamental的问题,哪些是最值得研究的问题。3. 读了这些前沿论文后,确定一个小方向,比如分布式系统是个大方向,小方向可能是机器学习分布式训练;大方向是深度学习,小方向可能就是graph embedding;大方向是机器学习,小方向可能是半监督学习等等。确定小方向的过程是个知识不断积累的过程,非常重要,这需要你对大方向有很多了解,对小方向有更深入更全面的理解,需要读好至少100篇以上论文,需要你知道该小方向的研究进展历史,这需要你知道该小方向别人都在哪方面做工作,做该小方向的顶级研究组都有哪些,他们正在干什么。第二步. 发现问题这步超级难,如果发现了个好问题,那就是成功的一半。这个问题最好是重要的、本质的、没有直观解决方法的。4. 确定小方向后,你需要阅读大量的这个小方向的论文和了解开源项目,再不断聚焦,再确定一个要改进和优化的小小方向,这个可能就是论文的主题。小小方向可能是机器学习分布式系统中的parameter server通信模型,可能是dynamic graph embedding等。然后就要更聚焦地读这方面的相关论文,这时候论文就比较少了,几篇到几十篇到几百篇都有可能,这些论文要精读,花几个月时间研究一篇论文也不为过。5. 挑几个重要的论文工作实现,也可以找开源的运行跑一跑试一试,idea往往从实际运行中来,光靠读是不行的。这个跑一跑可能需要你尝试不同的运行环境,不同的workload数据集,不同的应用场景等。比如,parameter server(PS)模型在本地集群上跑是不是和paper声明的一样、在异构的动态性极强的集群环境下效果怎么样、除了paper提到的算法处理其他算法的时候效果怎么样、除了paper提到的数据集换另外一类数据集怎么样;graph embedding方法处理密集图和稀疏图都怎么样,处理动态变化的图怎么样,等等吧。你要发现X方法仅在a环境下好用,在b环境不好用。这个就是发现问题的过程。当然,没经验的研究者可能很难想到多种环境、多种workload、多种应用场景,这就需要积累。另外一个发现问题的方法是从实际生产中来,这个当然是最好的,但是往往是大企业环境下才有这个条件。6. 确定你发现的问题还没有被解决。这又需要广泛的阅读和调研,但是问题已经很聚焦了,搜索也会很容易,用你特定问题的关键字在google 搜索(这里强烈建议用google,其他搜索引擎基本搜不到),找到解决相关问题的论文。看看这些论文是不是已经解决了该问题,如果解决了,你有两种方案:第一,该问题已经解决的非常好了,放弃解决该问题。第二,该问题的解决方案还有问题,我还有更好的办法。我建议后者,最起码尽量尝试尝试。5和6步是个迭代的过程…第三步. 分析问题7. 分析问题产生的本质原因。这个往往和第5步发现问题同时进行。这一步靠的是功底和积累,靠的是对问题的理解程度。理解的越深刻,分析的越透测,你之后产生的解决思路就越有可能正确和有效。比如分布式机器学习的PS模型在异构环境下、和在处理数据不均匀的情况下就不好,本质原因是其同步的集中式通信模型,造成PS集中服务器往往需要等待。传统graph embedding方法采用批处理模式,需要graph的全局信息做embedding,当然无法应付动态性非常强的局部更新情况。8. 基于分析,就是对该问题的深刻理解,产生改进的idea。这个可能很难,可能靠运气,但我觉得更多的是靠对问题的理解程度,理解的越深刻,本质原因抓的越准,就越可能产生创新idea。读过一本介绍google企业文化的书,google产品的成功,既不是靠技术能力,也不是靠用户需求,而是靠技术洞见(insight),这就是对问题本质的深刻理解。比如,PS模型在某环境下问题的本质原因是集中式的同步模型,那么我们就可以提出尝试异步通信的模型的idea。分析能力跟个人的批判性思维、独立思考能力都有关,而这正是中国人欠缺的,可以通过读有深刻见地的书籍文章、经常提问来锻炼。第四步. 解决问题9. 实现你的idea,做大量实验验证。这需要动手能力,需要编程能力,需要坐得住。10. 验证你的解决方案,根据实验分析不断优化你的方法。做了大量试验后,得到了若干结果,可能是不好的结果,但是不要一下子否定自己的解决方案,这不能说明你的idea不好用。一个好的方法往往经过千锤百炼,同样,你的idea通常不会一下子就成功。需要你根据实验结果分析不好的原因,然后基于你的理解改进方法,这是一个反复不断迭代的过程。比如,你发现异步PS模型效果还不如原来的呢。那么关键的是,你要问自己为什么?为什么理应提升的却没有提升?你要看实验运行的日志,看看是哪里慢了,差在哪里,最后你经过不断的实验、分析、思考,你发现了,你提出的异步PS模型虽然没有了等待开销,但是计算的有效性却降低了,结果整体性能反而下降了。那么你下一次迭代就要想怎么把这个计算有效性提上来。我又有了个方法,可以评估每次计算的有效性,然后把计算资源都投到有效性高的计算上。OK,idea不错,那么怎么评估有效性呢?不能开销太大,否则又得不偿失了,你可能想到了一种近似地评估方法。重新实现后,发现效果还不错。OK,恭喜你!你可以准备发论文了!整个研究过程,导师将起到关键的作用。导师可能会给你个问题,这是难能可贵的,基本帮你做了一半的事了,否则你可能需要花上一年时间找问题。然后整个研究过程,都是在导师的引导下进行,需要定期向导师汇报,与导师讨论idea和请导师分析实验结果。最好自己也要经常找同门讨论,而不是闭门造车。第五步. 撰写论文11. 设计你的论文,草拟论文的骨架。每一章都写啥,每一段都写啥,实验都做啥。论文的逻辑往往比语言重要的多,逻辑合理的论文更易读懂,即使咱华人有天生的英语语言缺陷,但是好的逻辑就可以弥补这个不足。写论文就和讲故事一样,怎么能把一个事说明白,不那么简单,甚至说很难,需要不断锻炼。写完给老师看,老师同意后进行下一步12. 写作论文。这个就是根据骨架填肉的过程,但是这一步也不简单,特别对于英语不好的同学,写出来的东西简直是不忍直视、不堪入目、毁人三观。最近上海某高校老师辱骂学生这事就是因为这个,我可以说,我每次看到学生论文也都是这个心情,给学生通宵改论文在家里一边改一边骂,但是当面对学生还是要以鼓励为主,要耐心,要耐心,要耐心,尽力压制自己的怒火,以平和的心态帮助学生提高,期望他下次能给个更好的版本。但是往往事与愿违,看淡点吧,仅求写作态度好点就行了,毕竟这不是一朝一夕能提高的,需要你不断积累。有几个写作的方法吧。第一,不要自己想当然,对于不确定的句型,用“”扩上上google搜,看看你这句型有多少人用过,如果没有几个人用,那就别用,换个写法。第二,读别人论文时,遇到好的句型就记下来,不断积累才能提高。第三,避免一切语法错误,我觉得这个是可以做到的,现在网上那么多工具都可以用。语法错误都避免不了那基本就是态度问题。遗憾的是,我很少遇到能避免语法错误的学生,我生气往往是因为态度问题,而不是能力问题。第四,尽量用短句用简单句子,别用长句。你写论文是为了让别人理解你的方法,不是写文艺作品,能说明白就行。13. 提炼总结,改进方法。写作的过程也是屡顺自己思路的过程,写作的过程中往往也能发现自己方法的漏洞,那么就要继续回到8,重新思考解决方案,又或者你发现需要补实验来支撑你的论点,那么就继续实现系统做实验,得到实验结果。14. 关于实验。怎么做实验是学生总问的问题,怎么做科学实验也是一个很重要的问题,有对照组、无偏的、定量的,这些都是科学实验的重要要素。如果有解决该问题的其他方法你首先要说明你的方法更好,至少在某一方面更好,这其中可能要涉及到不同的执行环境,或不同的算法数据集。然后设计实验说明你的方法好在哪里,用实验数据说明,比如异步PS和同步PS对比。然后你要进一步用实验数据说明,异步PS的有效性也提高了,如果不考虑有效性的话那么结果就不好。然后你的方法是否有些重要的超参数,试试variation导致各种结果。在实验结果展示方面,要学会用各种工具画各种图,把重要的因素用可视化方式体现出来。第六步. 投稿和看待审稿意见15. 接下来就是投稿。选一个合适的会议或期刊投稿,这个可以听老师的,老师基本有这方面的常识,根据你工作的方向和档次选择合适的去处。确定好了哪个会议期刊后,就需要按照会议期刊要求来整理论文格式,latex是必会的工具了。之后赶在deadline之前提交论文,这个最后的几天可能很痛苦,因为你的论文和方法总有改进的地方,老师的要求会让你最后几天是最忙的几天。但是需要认识到,凡事无完美,你总也改不到完美,你需要一个deadline来督促你完成一个milestone。开始进一步工作或下一个工作。16. 看待评审意见。接下来是漫长的等待,会议一般是2-3个月的时间,结果可能是接收也可能是拒掉,相比于结果,更应该看评审意见,看看这些意见是否合理,是否能解决,无论是接收还是拒绝,然后接下来就再次回到解决问题的部分,再次开始优化方法的过程。如果是接收了,那就可以准备订机票开会旅游去了。如果是拒掉那一般是有比较大的问题,那就再仔细深思下一下你的方法。继续优化,还是降低档次投个差点的会,就看你导师的了。第七步. 后续17. 宣传你的工作,扩大影响力。首先你可能是要去参加会议,做个漂亮的ppt,反复演练,争取有比较好的演讲效果。有时你导师有机会去一些地方做报告,把这个工作介绍一下,都是扩大影响力的方法。18. 开放源码。还有是尽量把自己工作的代码和数据开放,挂到网上,让别人来使用,接受别人的改进意见或者是简单的debug。咱不是专业的工程人员,也不用指望你的成果可以马上用于生产,个人觉得开放代码主要是为了让别人更好滴了解你的方法,这有助于扩大影响力,产生后续研究工作。如果有人引用你的论文、或咨询论文内容、又或是使用了你的代码和数据,这也算是你对整个科研事业有那么一丁点的贡献了,这比水论文有意义多了。整体来说,发表论文需要你有:批判思维能力,动手能力,知识面,写作能力,表达能力,英语,韧劲(抗打击能力)等等一系列能力,如果在研究生期间真能发表一篇论文,经历了以上这么多磨难和锻炼,我想你的能力也是不知不觉提高了很多,成为了该小小方向的一个小小的专家了。这对你来说,是最最重要的。这里我提到了韧劲,就是说,在解决问题过程中,你会受到不断的打击,包括来自导师的、来自自己的实验结果方面的、来自评审意见的,但是你要做的就是,站起来,继续凿,直到导师满意,知道reviewer满意,直到大家满意。别把这事想简单了,当你想象一下周围好多人都发好多sci了,而你还在为这么一篇完全未知结果的论文而这么努力的时候,我觉得大部分人可能就是缺少这个韧劲才最终以失败告终的…最后,我想再强调一下,发论文不是简单地发论文,而是通过发论文宣传你的工作,以便对某技术或人有那么一丁点影响。无论你发哪个档次的论文,只要目标正确,我觉得你都会有收获和有贡献的。相比较于为了发论文而发论文,你会觉得你是那么地高尚和高大,他们只是造废纸,而你已经对社会有贡献了…(以上内容来源于学术堂)
投稿到会议网站,然后审稿后交费就可以了
是一样的,只是有时候是全文收录(或检索),有时候是摘要收录(或检索),但是国家图书馆等出具的检索证明都是一样的--也就是说官方承认的。
你在中国比较权威的杂志发表 最好在教育报什么 的 这些都是教育部的杂志期刊什么 的 或者在什么教师杂志发表
着急吃不着热豆腐!这是我奶奶告诉我滴,这一次不能盲目,不要盲目!
找刊物,有投稿邮箱。投稿、等待通知、缴费、等待发表、发表
1、aaai是中国计算机学会CCF的A类国际学术会议,属于世界顶级会议论文!该会录用论文的水平相当于SCI二区,在人工智能领域享有盛誉。aaai的英文全称是 the Association for the Advance of Artificial Intelligence,中文意思是美国人工智能协会。 2、一般分为5个级别,分别是论文发表等级第二级-A类、论文发表等级第三级-B类、论文发表等级第四级-C类、论文发表等级第五级-D类、论文发表等级第六级-E类。
你是需要发表哪一类文章的?一般的话省级的期刊就可以啦。
第一步. 调研、入门1. 确定一个感兴趣的大领域,比如分布式系统或者机器学习,或者深度神经网络。读这个领域经典算法和技术,也可以是几本比较好的书,读完然后再实践实践,动手加深理解。这个过程做完就算是初步入门了。2. 找该领域的顶级会议,比如系统领域的有OSDI、SOSP,机器学习的领域有ICML、CVPR,深度学习的有NIPS、ICLR等等,可以搜CCF会议推荐列表看各领域的顶会列表。然后看近几年这些顶会的论文,因为这代表了最新的研究热点,咱不是说一味的追热点啊,毕竟对于初学者没有足够的领域专业背景,追热点是最快的方法。因为热点往往是该领域最亟待解决的问题,往往是发展最快的小方向,也最容易产生新成果。如果是老问题,人家都研究十几年了,给你留下的待解决的问题就很少或者不是很重要。当然如果是有几十年经验的研究者就不必追热点,他们知道该领域哪些是fundamental的问题,哪些是最值得研究的问题。3. 读了这些前沿论文后,确定一个小方向,比如分布式系统是个大方向,小方向可能是机器学习分布式训练;大方向是深度学习,小方向可能就是graph embedding;大方向是机器学习,小方向可能是半监督学习等等。确定小方向的过程是个知识不断积累的过程,非常重要,这需要你对大方向有很多了解,对小方向有更深入更全面的理解,需要读好至少100篇以上论文,需要你知道该小方向的研究进展历史,这需要你知道该小方向别人都在哪方面做工作,做该小方向的顶级研究组都有哪些,他们正在干什么。第二步. 发现问题这步超级难,如果发现了个好问题,那就是成功的一半。这个问题最好是重要的、本质的、没有直观解决方法的。4. 确定小方向后,你需要阅读大量的这个小方向的论文和了解开源项目,再不断聚焦,再确定一个要改进和优化的小小方向,这个可能就是论文的主题。小小方向可能是机器学习分布式系统中的parameter server通信模型,可能是dynamic graph embedding等。然后就要更聚焦地读这方面的相关论文,这时候论文就比较少了,几篇到几十篇到几百篇都有可能,这些论文要精读,花几个月时间研究一篇论文也不为过。5. 挑几个重要的论文工作实现,也可以找开源的运行跑一跑试一试,idea往往从实际运行中来,光靠读是不行的。这个跑一跑可能需要你尝试不同的运行环境,不同的workload数据集,不同的应用场景等。比如,parameter server(PS)模型在本地集群上跑是不是和paper声明的一样、在异构的动态性极强的集群环境下效果怎么样、除了paper提到的算法处理其他算法的时候效果怎么样、除了paper提到的数据集换另外一类数据集怎么样;graph embedding方法处理密集图和稀疏图都怎么样,处理动态变化的图怎么样,等等吧。你要发现X方法仅在a环境下好用,在b环境不好用。这个就是发现问题的过程。当然,没经验的研究者可能很难想到多种环境、多种workload、多种应用场景,这就需要积累。另外一个发现问题的方法是从实际生产中来,这个当然是最好的,但是往往是大企业环境下才有这个条件。6. 确定你发现的问题还没有被解决。这又需要广泛的阅读和调研,但是问题已经很聚焦了,搜索也会很容易,用你特定问题的关键字在google 搜索(这里强烈建议用google,其他搜索引擎基本搜不到),找到解决相关问题的论文。看看这些论文是不是已经解决了该问题,如果解决了,你有两种方案:第一,该问题已经解决的非常好了,放弃解决该问题。第二,该问题的解决方案还有问题,我还有更好的办法。我建议后者,最起码尽量尝试尝试。5和6步是个迭代的过程…第三步. 分析问题7. 分析问题产生的本质原因。这个往往和第5步发现问题同时进行。这一步靠的是功底和积累,靠的是对问题的理解程度。理解的越深刻,分析的越透测,你之后产生的解决思路就越有可能正确和有效。比如分布式机器学习的PS模型在异构环境下、和在处理数据不均匀的情况下就不好,本质原因是其同步的集中式通信模型,造成PS集中服务器往往需要等待。传统graph embedding方法采用批处理模式,需要graph的全局信息做embedding,当然无法应付动态性非常强的局部更新情况。8. 基于分析,就是对该问题的深刻理解,产生改进的idea。这个可能很难,可能靠运气,但我觉得更多的是靠对问题的理解程度,理解的越深刻,本质原因抓的越准,就越可能产生创新idea。读过一本介绍google企业文化的书,google产品的成功,既不是靠技术能力,也不是靠用户需求,而是靠技术洞见(insight),这就是对问题本质的深刻理解。比如,PS模型在某环境下问题的本质原因是集中式的同步模型,那么我们就可以提出尝试异步通信的模型的idea。分析能力跟个人的批判性思维、独立思考能力都有关,而这正是中国人欠缺的,可以通过读有深刻见地的书籍文章、经常提问来锻炼。第四步. 解决问题9. 实现你的idea,做大量实验验证。这需要动手能力,需要编程能力,需要坐得住。10. 验证你的解决方案,根据实验分析不断优化你的方法。做了大量试验后,得到了若干结果,可能是不好的结果,但是不要一下子否定自己的解决方案,这不能说明你的idea不好用。一个好的方法往往经过千锤百炼,同样,你的idea通常不会一下子就成功。需要你根据实验结果分析不好的原因,然后基于你的理解改进方法,这是一个反复不断迭代的过程。比如,你发现异步PS模型效果还不如原来的呢。那么关键的是,你要问自己为什么?为什么理应提升的却没有提升?你要看实验运行的日志,看看是哪里慢了,差在哪里,最后你经过不断的实验、分析、思考,你发现了,你提出的异步PS模型虽然没有了等待开销,但是计算的有效性却降低了,结果整体性能反而下降了。那么你下一次迭代就要想怎么把这个计算有效性提上来。我又有了个方法,可以评估每次计算的有效性,然后把计算资源都投到有效性高的计算上。OK,idea不错,那么怎么评估有效性呢?不能开销太大,否则又得不偿失了,你可能想到了一种近似地评估方法。重新实现后,发现效果还不错。OK,恭喜你!你可以准备发论文了!整个研究过程,导师将起到关键的作用。导师可能会给你个问题,这是难能可贵的,基本帮你做了一半的事了,否则你可能需要花上一年时间找问题。然后整个研究过程,都是在导师的引导下进行,需要定期向导师汇报,与导师讨论idea和请导师分析实验结果。最好自己也要经常找同门讨论,而不是闭门造车。第五步. 撰写论文11. 设计你的论文,草拟论文的骨架。每一章都写啥,每一段都写啥,实验都做啥。论文的逻辑往往比语言重要的多,逻辑合理的论文更易读懂,即使咱华人有天生的英语语言缺陷,但是好的逻辑就可以弥补这个不足。写论文就和讲故事一样,怎么能把一个事说明白,不那么简单,甚至说很难,需要不断锻炼。写完给老师看,老师同意后进行下一步12. 写作论文。这个就是根据骨架填肉的过程,但是这一步也不简单,特别对于英语不好的同学,写出来的东西简直是不忍直视、不堪入目、毁人三观。最近上海某高校老师辱骂学生这事就是因为这个,我可以说,我每次看到学生论文也都是这个心情,给学生通宵改论文在家里一边改一边骂,但是当面对学生还是要以鼓励为主,要耐心,要耐心,要耐心,尽力压制自己的怒火,以平和的心态帮助学生提高,期望他下次能给个更好的版本。但是往往事与愿违,看淡点吧,仅求写作态度好点就行了,毕竟这不是一朝一夕能提高的,需要你不断积累。有几个写作的方法吧。第一,不要自己想当然,对于不确定的句型,用“”扩上上google搜,看看你这句型有多少人用过,如果没有几个人用,那就别用,换个写法。第二,读别人论文时,遇到好的句型就记下来,不断积累才能提高。第三,避免一切语法错误,我觉得这个是可以做到的,现在网上那么多工具都可以用。语法错误都避免不了那基本就是态度问题。遗憾的是,我很少遇到能避免语法错误的学生,我生气往往是因为态度问题,而不是能力问题。第四,尽量用短句用简单句子,别用长句。你写论文是为了让别人理解你的方法,不是写文艺作品,能说明白就行。13. 提炼总结,改进方法。写作的过程也是屡顺自己思路的过程,写作的过程中往往也能发现自己方法的漏洞,那么就要继续回到8,重新思考解决方案,又或者你发现需要补实验来支撑你的论点,那么就继续实现系统做实验,得到实验结果。14. 关于实验。怎么做实验是学生总问的问题,怎么做科学实验也是一个很重要的问题,有对照组、无偏的、定量的,这些都是科学实验的重要要素。如果有解决该问题的其他方法你首先要说明你的方法更好,至少在某一方面更好,这其中可能要涉及到不同的执行环境,或不同的算法数据集。然后设计实验说明你的方法好在哪里,用实验数据说明,比如异步PS和同步PS对比。然后你要进一步用实验数据说明,异步PS的有效性也提高了,如果不考虑有效性的话那么结果就不好。然后你的方法是否有些重要的超参数,试试variation导致各种结果。在实验结果展示方面,要学会用各种工具画各种图,把重要的因素用可视化方式体现出来。第六步. 投稿和看待审稿意见15. 接下来就是投稿。选一个合适的会议或期刊投稿,这个可以听老师的,老师基本有这方面的常识,根据你工作的方向和档次选择合适的去处。确定好了哪个会议期刊后,就需要按照会议期刊要求来整理论文格式,latex是必会的工具了。之后赶在deadline之前提交论文,这个最后的几天可能很痛苦,因为你的论文和方法总有改进的地方,老师的要求会让你最后几天是最忙的几天。但是需要认识到,凡事无完美,你总也改不到完美,你需要一个deadline来督促你完成一个milestone。开始进一步工作或下一个工作。16. 看待评审意见。接下来是漫长的等待,会议一般是2-3个月的时间,结果可能是接收也可能是拒掉,相比于结果,更应该看评审意见,看看这些意见是否合理,是否能解决,无论是接收还是拒绝,然后接下来就再次回到解决问题的部分,再次开始优化方法的过程。如果是接收了,那就可以准备订机票开会旅游去了。如果是拒掉那一般是有比较大的问题,那就再仔细深思下一下你的方法。继续优化,还是降低档次投个差点的会,就看你导师的了。第七步. 后续17. 宣传你的工作,扩大影响力。首先你可能是要去参加会议,做个漂亮的ppt,反复演练,争取有比较好的演讲效果。有时你导师有机会去一些地方做报告,把这个工作介绍一下,都是扩大影响力的方法。18. 开放源码。还有是尽量把自己工作的代码和数据开放,挂到网上,让别人来使用,接受别人的改进意见或者是简单的debug。咱不是专业的工程人员,也不用指望你的成果可以马上用于生产,个人觉得开放代码主要是为了让别人更好滴了解你的方法,这有助于扩大影响力,产生后续研究工作。如果有人引用你的论文、或咨询论文内容、又或是使用了你的代码和数据,这也算是你对整个科研事业有那么一丁点的贡献了,这比水论文有意义多了。整体来说,发表论文需要你有:批判思维能力,动手能力,知识面,写作能力,表达能力,英语,韧劲(抗打击能力)等等一系列能力,如果在研究生期间真能发表一篇论文,经历了以上这么多磨难和锻炼,我想你的能力也是不知不觉提高了很多,成为了该小小方向的一个小小的专家了。这对你来说,是最最重要的。这里我提到了韧劲,就是说,在解决问题过程中,你会受到不断的打击,包括来自导师的、来自自己的实验结果方面的、来自评审意见的,但是你要做的就是,站起来,继续凿,直到导师满意,知道reviewer满意,直到大家满意。别把这事想简单了,当你想象一下周围好多人都发好多sci了,而你还在为这么一篇完全未知结果的论文而这么努力的时候,我觉得大部分人可能就是缺少这个韧劲才最终以失败告终的…最后,我想再强调一下,发论文不是简单地发论文,而是通过发论文宣传你的工作,以便对某技术或人有那么一丁点影响。无论你发哪个档次的论文,只要目标正确,我觉得你都会有收获和有贡献的。相比较于为了发论文而发论文,你会觉得你是那么地高尚和高大,他们只是造废纸,而你已经对社会有贡献了…(以上内容来源于学术堂)
最好的办法是找专业的发表机构帮你,你可以找我
1。首先决定投那份SCI刊物。作者一般在撰写论文时就已经做出决定。主要决策依据应是主题内容合适,学术声誉好,读者多等。当然也要看自己成果的大小,论文的质量而定。勿一稿两投。论文完成后,要按照每份刊物的投稿要求投稿。一般的投稿清单包括:投稿信足够的稿件数所有图表齐全以及其它要求的材料将上述内容打包邮寄,或通过电子网络按要求投递稿件。2。论文投出后,一般刊物编辑部会给投稿作者发送收到稿件通知。如果编辑觉得论文题材不适合所投刊物,会回信退稿。否则,作者就进入等待期。收到稿件后,编辑挑选2-3名同行对论文进行评审。论文评审是对作者采用匿名形式。评审者不是专职,是自愿花时间评阅论文(并无评审费)。由于评阅人一般是已经在本领域建立了地位,比较忙,因此往往需要花较长时间。投稿者应对此予以理解。另外,由于评阅人较忙或其它原因,有的评审意见不一定贴切。是值得商榷的。编辑在审稿过程中是仲裁和最后决策者。审稿期间,作者一般应耐心等待。除按收稿通知建议时间与编辑联系外,一般应给评审4-6个月时间。若仍无消息,可以与编辑联系催促一下。3。论文评审的分一般内容和专业内容两部分。一般评审内容包括:稿件是否适合所投刊物若发表此文读者面会有多大是否有现势性-即是否需要尽快发表论文的理论、方法、和数据等是否有创新性论文有无重大缺陷(理论、方法、实验结果等)论文结果是否重要(若设立奖励的刊物会征求是否建议奖励)论文可读性如何长短是否合适-与论文重要性是否平衡图表是否必须,质量如何有没有忽略重要前人工作专业内容是评审者对论文中不正确或存有疑问的内容、表述方法、写作缺陷等提出批评。没有具体形式。4。审稿结束,作者迟早会收到稿件评审意见和编辑的仲裁结果。一般有四种情况:接收修改后可接收 可以修改后再投拒绝对第一种情况,作者会收到投递最终稿的指南。现在,一般需要提供数字文件,按要求提供图表。对第二种情况,应按照评审意见修改论文。提出拒绝修改某些部分的理由。将修改部分单独写成报告提供给编辑。一般来说编辑比评审者更具同情心。因此,一般可以期望收到象第一种情况那样的论文接收信。对第三种情况,看看评审意见,这种决定一般是由于论文需要补充材料,编辑希望继续修改提高。不要轻易放弃。修改后被接收的机会还是很大。对于高质量的杂志,多数论文第一次投稿时都会被按这种情况退回来。作者应根据评审意见认真修改。当然也可以提出对某些部分不修改的理由。若得到最后一种情况的答复,应根据评审意见修改文稿,然后投往其它刊物。国外刊物的拒稿率高低不等,一般专业刊物拒稿率在30%以上。不妨投到拒稿率低些或引用率低些的刊物上。5。论文被接收后。按照提供印刷稿件要求投稿后。下一个回合就是收到印刷编辑寄回的校样。校样一般需要尽快寄还给印刷编辑。寄校样时,出版商会要求填写版权转让书(Transfer of Copy Right),并告知支付版面费的办法和订购单行本的方法。许多刊物不收版面费,但对特殊印刷(如彩版印刷)收费。有的对超过定额免费页数的页面按页收费。不少收版面费的刊物费用都挺高。如Journal of Geophysical Research, IEEE Transactions的系列刊物收费可以高达数千mei元。必须有所准备。版面费一般可以用信用卡支付。对校样要认真细读,特别注意公式和图表。 参考资料:脚丫代写论文
1、论文题目:要求准确、简练、醒目、新颖。2、目录:目录是论文中主要段落的简表。(短篇论文不必列目录)3、提要:是文章主要内容的摘录,要求短、精、完整。字数少可几十字,多不超过三百字为宜。4、关键词或主题词:关键词是从论文的题名、提要和正文中选取出来的,是对表述论文的中心内容有实质意义的词汇。关键词是用作机系统标引论文内容特征的词语,便于信息系统汇集,以供读者检索。 每篇论文一般选取3-8个词汇作为关键词,另起一行,排在“提要”的左下方。主题词是经过规范化的词,在确定主题词时,要对论文进行主题,依照标引和组配规则转换成主题词表中的规范词语。5、论文正文:(1)引言:引言又称前言、序言和导言,用在论文的开头。 引言一般要概括地写出作者意图,说明选题的目的和意义, 并指出论文写作的范围。引言要短小精悍、紧扣主题。〈2)论文正文:正文是论文的主体,正文应包括论点、论据、 论证过程和结论。主体部分包括以下内容:a.提出-论点;b.分析问题-论据和论证;c.解决问题-论证与步骤;d.结论。6、一篇论文的参考文献是将论文在和写作中可参考或引证的主要文献资料,列于论文的末尾。参考文献应另起一页,标注方式按《GB7714-87文后参考文献著录规则》进行。中文:标题--作者--出版物信息(版地、版者、版期):作者--标题--出版物信息所列参考文献的要求是:(1)所列参考文献应是正式出版物,以便读者考证。(2)所列举的参考文献要标明序号、著作或文章的标题、作者、出版物信息。
第一步. 调研、入门1. 确定一个感兴趣的大领域,比如分布式系统或者机器学习,或者深度神经网络。读这个领域经典算法和技术,也可以是几本比较好的书,读完然后再实践实践,动手加深理解。这个过程做完就算是初步入门了。2. 找该领域的顶级会议,比如系统领域的有OSDI、SOSP,机器学习的领域有ICML、CVPR,深度学习的有NIPS、ICLR等等,可以搜CCF会议推荐列表看各领域的顶会列表。然后看近几年这些顶会的论文,因为这代表了最新的研究热点,咱不是说一味的追热点啊,毕竟对于初学者没有足够的领域专业背景,追热点是最快的方法。因为热点往往是该领域最亟待解决的问题,往往是发展最快的小方向,也最容易产生新成果。如果是老问题,人家都研究十几年了,给你留下的待解决的问题就很少或者不是很重要。当然如果是有几十年经验的研究者就不必追热点,他们知道该领域哪些是fundamental的问题,哪些是最值得研究的问题。3. 读了这些前沿论文后,确定一个小方向,比如分布式系统是个大方向,小方向可能是机器学习分布式训练;大方向是深度学习,小方向可能就是graph embedding;大方向是机器学习,小方向可能是半监督学习等等。确定小方向的过程是个知识不断积累的过程,非常重要,这需要你对大方向有很多了解,对小方向有更深入更全面的理解,需要读好至少100篇以上论文,需要你知道该小方向的研究进展历史,这需要你知道该小方向别人都在哪方面做工作,做该小方向的顶级研究组都有哪些,他们正在干什么。第二步. 发现问题这步超级难,如果发现了个好问题,那就是成功的一半。这个问题最好是重要的、本质的、没有直观解决方法的。4. 确定小方向后,你需要阅读大量的这个小方向的论文和了解开源项目,再不断聚焦,再确定一个要改进和优化的小小方向,这个可能就是论文的主题。小小方向可能是机器学习分布式系统中的parameter server通信模型,可能是dynamic graph embedding等。然后就要更聚焦地读这方面的相关论文,这时候论文就比较少了,几篇到几十篇到几百篇都有可能,这些论文要精读,花几个月时间研究一篇论文也不为过。5. 挑几个重要的论文工作实现,也可以找开源的运行跑一跑试一试,idea往往从实际运行中来,光靠读是不行的。这个跑一跑可能需要你尝试不同的运行环境,不同的workload数据集,不同的应用场景等。比如,parameter server(PS)模型在本地集群上跑是不是和paper声明的一样、在异构的动态性极强的集群环境下效果怎么样、除了paper提到的算法处理其他算法的时候效果怎么样、除了paper提到的数据集换另外一类数据集怎么样;graph embedding方法处理密集图和稀疏图都怎么样,处理动态变化的图怎么样,等等吧。你要发现X方法仅在a环境下好用,在b环境不好用。这个就是发现问题的过程。当然,没经验的研究者可能很难想到多种环境、多种workload、多种应用场景,这就需要积累。另外一个发现问题的方法是从实际生产中来,这个当然是最好的,但是往往是大企业环境下才有这个条件。6. 确定你发现的问题还没有被解决。这又需要广泛的阅读和调研,但是问题已经很聚焦了,搜索也会很容易,用你特定问题的关键字在google 搜索(这里强烈建议用google,其他搜索引擎基本搜不到),找到解决相关问题的论文。看看这些论文是不是已经解决了该问题,如果解决了,你有两种方案:第一,该问题已经解决的非常好了,放弃解决该问题。第二,该问题的解决方案还有问题,我还有更好的办法。我建议后者,最起码尽量尝试尝试。5和6步是个迭代的过程…第三步. 分析问题7. 分析问题产生的本质原因。这个往往和第5步发现问题同时进行。这一步靠的是功底和积累,靠的是对问题的理解程度。理解的越深刻,分析的越透测,你之后产生的解决思路就越有可能正确和有效。比如分布式机器学习的PS模型在异构环境下、和在处理数据不均匀的情况下就不好,本质原因是其同步的集中式通信模型,造成PS集中服务器往往需要等待。传统graph embedding方法采用批处理模式,需要graph的全局信息做embedding,当然无法应付动态性非常强的局部更新情况。8. 基于分析,就是对该问题的深刻理解,产生改进的idea。这个可能很难,可能靠运气,但我觉得更多的是靠对问题的理解程度,理解的越深刻,本质原因抓的越准,就越可能产生创新idea。读过一本介绍google企业文化的书,google产品的成功,既不是靠技术能力,也不是靠用户需求,而是靠技术洞见(insight),这就是对问题本质的深刻理解。比如,PS模型在某环境下问题的本质原因是集中式的同步模型,那么我们就可以提出尝试异步通信的模型的idea。分析能力跟个人的批判性思维、独立思考能力都有关,而这正是中国人欠缺的,可以通过读有深刻见地的书籍文章、经常提问来锻炼。第四步. 解决问题9. 实现你的idea,做大量实验验证。这需要动手能力,需要编程能力,需要坐得住。10. 验证你的解决方案,根据实验分析不断优化你的方法。做了大量试验后,得到了若干结果,可能是不好的结果,但是不要一下子否定自己的解决方案,这不能说明你的idea不好用。一个好的方法往往经过千锤百炼,同样,你的idea通常不会一下子就成功。需要你根据实验结果分析不好的原因,然后基于你的理解改进方法,这是一个反复不断迭代的过程。比如,你发现异步PS模型效果还不如原来的呢。那么关键的是,你要问自己为什么?为什么理应提升的却没有提升?你要看实验运行的日志,看看是哪里慢了,差在哪里,最后你经过不断的实验、分析、思考,你发现了,你提出的异步PS模型虽然没有了等待开销,但是计算的有效性却降低了,结果整体性能反而下降了。那么你下一次迭代就要想怎么把这个计算有效性提上来。我又有了个方法,可以评估每次计算的有效性,然后把计算资源都投到有效性高的计算上。OK,idea不错,那么怎么评估有效性呢?不能开销太大,否则又得不偿失了,你可能想到了一种近似地评估方法。重新实现后,发现效果还不错。OK,恭喜你!你可以准备发论文了!整个研究过程,导师将起到关键的作用。导师可能会给你个问题,这是难能可贵的,基本帮你做了一半的事了,否则你可能需要花上一年时间找问题。然后整个研究过程,都是在导师的引导下进行,需要定期向导师汇报,与导师讨论idea和请导师分析实验结果。最好自己也要经常找同门讨论,而不是闭门造车。第五步. 撰写论文11. 设计你的论文,草拟论文的骨架。每一章都写啥,每一段都写啥,实验都做啥。论文的逻辑往往比语言重要的多,逻辑合理的论文更易读懂,即使咱华人有天生的英语语言缺陷,但是好的逻辑就可以弥补这个不足。写论文就和讲故事一样,怎么能把一个事说明白,不那么简单,甚至说很难,需要不断锻炼。写完给老师看,老师同意后进行下一步12. 写作论文。这个就是根据骨架填肉的过程,但是这一步也不简单,特别对于英语不好的同学,写出来的东西简直是不忍直视、不堪入目、毁人三观。最近上海某高校老师辱骂学生这事就是因为这个,我可以说,我每次看到学生论文也都是这个心情,给学生通宵改论文在家里一边改一边骂,但是当面对学生还是要以鼓励为主,要耐心,要耐心,要耐心,尽力压制自己的怒火,以平和的心态帮助学生提高,期望他下次能给个更好的版本。但是往往事与愿违,看淡点吧,仅求写作态度好点就行了,毕竟这不是一朝一夕能提高的,需要你不断积累。有几个写作的方法吧。第一,不要自己想当然,对于不确定的句型,用“”扩上上google搜,看看你这句型有多少人用过,如果没有几个人用,那就别用,换个写法。第二,读别人论文时,遇到好的句型就记下来,不断积累才能提高。第三,避免一切语法错误,我觉得这个是可以做到的,现在网上那么多工具都可以用。语法错误都避免不了那基本就是态度问题。遗憾的是,我很少遇到能避免语法错误的学生,我生气往往是因为态度问题,而不是能力问题。第四,尽量用短句用简单句子,别用长句。你写论文是为了让别人理解你的方法,不是写文艺作品,能说明白就行。13. 提炼总结,改进方法。写作的过程也是屡顺自己思路的过程,写作的过程中往往也能发现自己方法的漏洞,那么就要继续回到8,重新思考解决方案,又或者你发现需要补实验来支撑你的论点,那么就继续实现系统做实验,得到实验结果。14. 关于实验。怎么做实验是学生总问的问题,怎么做科学实验也是一个很重要的问题,有对照组、无偏的、定量的,这些都是科学实验的重要要素。如果有解决该问题的其他方法你首先要说明你的方法更好,至少在某一方面更好,这其中可能要涉及到不同的执行环境,或不同的算法数据集。然后设计实验说明你的方法好在哪里,用实验数据说明,比如异步PS和同步PS对比。然后你要进一步用实验数据说明,异步PS的有效性也提高了,如果不考虑有效性的话那么结果就不好。然后你的方法是否有些重要的超参数,试试variation导致各种结果。在实验结果展示方面,要学会用各种工具画各种图,把重要的因素用可视化方式体现出来。第六步. 投稿和看待审稿意见15. 接下来就是投稿。选一个合适的会议或期刊投稿,这个可以听老师的,老师基本有这方面的常识,根据你工作的方向和档次选择合适的去处。确定好了哪个会议期刊后,就需要按照会议期刊要求来整理论文格式,latex是必会的工具了。之后赶在deadline之前提交论文,这个最后的几天可能很痛苦,因为你的论文和方法总有改进的地方,老师的要求会让你最后几天是最忙的几天。但是需要认识到,凡事无完美,你总也改不到完美,你需要一个deadline来督促你完成一个milestone。开始进一步工作或下一个工作。16. 看待评审意见。接下来是漫长的等待,会议一般是2-3个月的时间,结果可能是接收也可能是拒掉,相比于结果,更应该看评审意见,看看这些意见是否合理,是否能解决,无论是接收还是拒绝,然后接下来就再次回到解决问题的部分,再次开始优化方法的过程。如果是接收了,那就可以准备订机票开会旅游去了。如果是拒掉那一般是有比较大的问题,那就再仔细深思下一下你的方法。继续优化,还是降低档次投个差点的会,就看你导师的了。第七步. 后续17. 宣传你的工作,扩大影响力。首先你可能是要去参加会议,做个漂亮的ppt,反复演练,争取有比较好的演讲效果。有时你导师有机会去一些地方做报告,把这个工作介绍一下,都是扩大影响力的方法。18. 开放源码。还有是尽量把自己工作的代码和数据开放,挂到网上,让别人来使用,接受别人的改进意见或者是简单的debug。咱不是专业的工程人员,也不用指望你的成果可以马上用于生产,个人觉得开放代码主要是为了让别人更好滴了解你的方法,这有助于扩大影响力,产生后续研究工作。如果有人引用你的论文、或咨询论文内容、又或是使用了你的代码和数据,这也算是你对整个科研事业有那么一丁点的贡献了,这比水论文有意义多了。整体来说,发表论文需要你有:批判思维能力,动手能力,知识面,写作能力,表达能力,英语,韧劲(抗打击能力)等等一系列能力,如果在研究生期间真能发表一篇论文,经历了以上这么多磨难和锻炼,我想你的能力也是不知不觉提高了很多,成为了该小小方向的一个小小的专家了。这对你来说,是最最重要的。这里我提到了韧劲,就是说,在解决问题过程中,你会受到不断的打击,包括来自导师的、来自自己的实验结果方面的、来自评审意见的,但是你要做的就是,站起来,继续凿,直到导师满意,知道reviewer满意,直到大家满意。别把这事想简单了,当你想象一下周围好多人都发好多sci了,而你还在为这么一篇完全未知结果的论文而这么努力的时候,我觉得大部分人可能就是缺少这个韧劲才最终以失败告终的…最后,我想再强调一下,发论文不是简单地发论文,而是通过发论文宣传你的工作,以便对某技术或人有那么一丁点影响。无论你发哪个档次的论文,只要目标正确,我觉得你都会有收获和有贡献的。相比较于为了发论文而发论文,你会觉得你是那么地高尚和高大,他们只是造废纸,而你已经对社会有贡献了…(以上内容来源于学术堂)