# 本校科研

## 开始时间

我们一般认为，在大二或大三（最早大二伊始，最晚大三伊始）开始都是合理的。大一期间课程重，学分多，对加权成绩有着“定调”的意义，大家趁大一课程难度小的时候多刷加权排名会使你今后的路好走很多。而且一般来说，大一学生还处于一种对专业迷茫的状态，更别说有什么特别强的工程实验技能可以做出实质性的实验进展。总体而言，除非是能力上确实卓越非凡，否则我们不建议大一的学生过早开始考虑科研的问题。需要说明的是，大一其实是准备英语考试的一个很好的时机。大家如果能在大一的时候把GT基本考完或者至少考完其中一项，今后在做科研的过程中也无需分过多的精力到英语准备上了。

不过，建议低年级的同学尽早提升专业认识，多与老师、辅导员、学长学姐交流，比如了解自己的任课老师从事什么科研方向，这样至少对自己学到的知识今后可以用于哪些领域的研究有个大致的概念，这对之后课题组的选择、哪怕中途换组，都是十分有帮助、十分节省时间的。对于计算机学院的同学，阅读对应老师的个人主页是一个非常好的了解老师在做什么的方式。网络空间安全学院会在春季学期的中后期举办课题组集体宣讲会（具体请关注网安学院公众号），这也是了解学院课题组的一个绝佳机会。

大三第二学期开始是计算机学院课业压力逐渐减小（甚至趋近归零）的一个学期，此时起步尚且不晚（笔者本人就是在这个学期才开始联系暑研等机会，并且在申请的时候也有了不错的发表）。

总的来说，在大二期间，同学们已经基本学完了所有的编程知识，掌握了计算机科学领域的基本科研技巧，同时对专业知识和大致的专业分类有了一个基本的认识，此时便是开始进组尝试科研的大好时机。据笔者观察，计算机专业有暑研提前的趋势，因此大二的暑假就可以考虑外出进行暑研了。

## 如何找导师

具体来说，在本科期间跟随导师参与科研工作，存在但不限于以下几种可能的形式：

* 实验班导师。对于“启明班”同学，每个人可以“配备”一名所谓“导师”。目前来看，基本上是形式主义，但也不失为一种要求参与科研的“由头”。
* 特优生导师。对于特优生而言，同样也可以“配备”一名导师，一样也是一种可行的“由头”，而且感觉比“实验班导师”来得强一些。
* 课程导师。直接找你感兴趣的课程的授课老师，表示自己非常喜欢这门课所以希望能进入课题组进一步钻研。
* 学科竞赛和大创导师。学科竞赛例如ACM-ICPC，CTF，或是计算机学院大力推崇的系统能力竞赛，CCSP等。对于计算机方向的同学而言，竞赛奖项是自己的技术水平和思维能力的一种较好证明，在申请国外的时候也会有一定的话语权，尤其是对于对口的方向（例：CTF选手申请计算机安全方向，系统能力大赛高分选手申请计算机系统结构方向等）。同时这些竞赛团队也会有一些对出国申请能提供较大的帮助与推荐的指导老师（如计算机学院ICPC团队的何琨老师，网安学院CTF队的慕冬亮、周威老师），可以在日后申请时提供意想不到的帮助，也更加方便你上手这一方向的科研工作。但是请注意，绝大多数竞赛需要投入较多的时间和热情，请做好取舍。对于大创和作品赛（如网安学院的信息安全作品赛）等项目，由于现在的大创项目完成度并不高，作品赛本身含金量较低，并且并不主要体现个人的能力，这里笔者更加建议大家选择直接进入实验室进行以发表论文为目的的科研。
* 直接要求加入课题组，无需任何形式。可以直接邮件或者当面联系老师，表示自己渴望参与科研工作，希望能够到组内学习，以我们华科目前的本科生科研的饱和程度，老师一般不会拒绝，并会尝试帮助你寻找一些可能的“切入点”。例如，部分老师的课题组每年都有提供给本科生的简单容易出结果的Toy Project。

**需要强调的是，以上任何方法，最终只是“加入科研的契机”，科研还是需要你自己积极主动并且投入足够的时间。** 如果你能够投入足够的精力和时间，学习到一些东西，甚至为课题组做出一定的贡献，采取哪种契机其实根本不是问题。学院的政策其实已经非常积极地在鼓励本科生投入科研，同时也鼓励导师们更多的关注本科生。可以说，学院已经为有科研愿望的优秀同学打开了这样一扇门。至于进了门以后还要不要往里面走，能走多远，就完全看个人的把握了，而不会有谁有义务来推着你走。一般来说，只要你足够积极主动，并且可以投入足够的精力和时间，导师们都是非常欢迎，并且乐于指导你的工作的。

## 导师选择与方向选择

学院里的科研方向、课题组那么多，到底该选哪个方向、哪个导师？相信这是一个困扰很多同学的问题。不同于其他技术性问题，这个问题很难给出“答案”，我们只能给出几点主观的想法和建议。一般而言，我们认为，导师的资源和人品、自己的研究兴趣是两个最重要的参考因素，重要性依次递减。

* **导师的资源和人品。** 此处的资源主要指的是导师的实验室设备和与国外的人脉资源。而这两点，也正是科研界津津乐道的funding和social network。此外，老师的人品对于本科科研来说相当重要，**大家可以先和前辈讨论一下学院里老师的风评**。虽然前辈们也不好说哪些老师比较不好，但是对于那些真的很nice的老师，大家肯定还是会愿意向你推荐的。
* **自己的研究兴趣。** 对科研尚无概念的本科生而言，选择导师进入实验室多半是根据自己对于导师研究方向的喜爱程度来决定的。如果做在自己不喜欢的领域做研究，那么科研过程会比较痛苦。关于兴趣的获取和培养，学院会时常组织举办各种各样的讲座、汇报、学术交流。这些类型的活动，演讲者一般会考虑到不同听众的背景，会尽量做到由浅入深，让人（即使只是大一学生）都能够至少理解最基本的部分。这些活动毫无疑问是低年级本科生了解目前学院有的或者时下火热的、世界前沿的科研方向的大好机会。

需要说明的是，作为一名科研事业尚且刚刚起步的本科生，希望大家的视野不要过于固步自封。计算机科学是非常广阔的领域，其中可以研究的问题从理论到实践都非常的多，而我校擅长的和有课程开设的终究只是其中的一部分。希望低年级同学可以多多探索，找到自己真正感兴趣，愿意研究的方向。热门方向与冷门方向，“简单”方向与“硬核”方向在出成果速度、申请难度和个人兴趣方面终究存在取舍，并不存在完美的方向。这里还是建议大家多多根据自己的兴趣为好。

## 与加权成绩的取舍

将时间投入到科研，势必会减少你投入到课程学习的时间和精力，一般来说，多少影响到你宝贵的加权成绩。关于科研和加权的取舍，这里给出我们的几点看法：

* 科研经历大于加权。对于PhD申请而言，在加权都不是太难看的前提下，**科研经历的重要性远大于加权**，首先给大家建立这样一个基本的印象。19级存在不止一位加权较低但是获得了较好的录取的案例，因此这里鼓励加权不高的同学也可以大胆努力申请PhD，科研经历与个人能力才是第一位的！
* 90分以上的加权一般视为有优势。单从数字的角度来看，我们认为90分及以上已经足够了。在90分以上的基础上，排名应该是一个更有意义的指标。简单来说，如果你能够保证你的排名基本不被赶超，或者说赶超前人已经希望不大、空间很小、成本太高，我们认为这个时候单单对加权再做“数字”层面的提升已经没有意义，应当将更多的精力转移到科研上来。
* 特殊“临界点”的加权值得重视。例如，在激烈地（差距很小的）争夺专业第一名（前三名）、离90分只差一点，这个时候投入一定的精力在加权上还是有意义的。总而言之，综合考虑成本和预期收获，选择收益最大或者性价比最高的一条道路。
* 此处，需要特殊说明的是，在PhD网申页面上，百分制加权和4分制GPA在很多情况下是都可以填的。如何理解？我们学院的GPA可以说给的相当“优惠”，单科85以上就是4.0的满绩点。这就造成了很多一般的加权（85上下）换算成“华科算法”的GPA可以有3.8上下的“神仙绩点”。而关于这点，部分国外的学校并不会仔细考察你的GPA算法。所以，加权成绩不理想的部分同学可以考虑在网申页面上填写GPA，这也算是合理地掩饰自己的不足。当然也有相当一部分学校会要求你直接寄送成绩单，你的GPA会由他重新帮你算。这种情况下，部分同学加权的短板就无所遁形了，这种情况也就没办法投机取巧了。

此外， 关于加权排名，有两点需要特别注意，一是在网申系统中，绝大部分学校（四大等顶级名校除外，这学校基本上强制填排名并且喜欢招排名超级靠前的学生）把排名这一栏作为了可填可不填的栏目，大家可以根据自己的情况酌情选择填还是不填。第二点，大家在填写加权的时候，要尽量“统一口径”。如果某一学校收到了我们同专业A和B两位同学的申请，但是排名分别是1/320和1/270。这种分母不同会导致各种各样错乱的问题，可能会影响学院的声誉。所以要尽量统一排名标准。

此外，需要特别说明的是，美国是一个社会信誉体系极其完善的国家，对cheat几乎是零容忍。所以，**在任何时候，都不要在加权和排名上造假。这一点对整个申请过程都适用！**

## 关于成果

科研成果是最终衡量科研经历和科研能力的一项重要指标。一般来说，期刊论文、会议论文（包括口头报告、海报展示等）、专利（中/美）都是能被国外导师认可的。毫无疑问，一作（或共同一作）论文是最有说服力的成果。但是考虑到一作论文确实不是容易的事情，我们认为，二作或者挂名，也是可以接受的成果，其对于申请结果的影响很大程度上也取决于如何讲好自己的research story.

另外，本科生的科研成果很大程度上看运气。希望大家一方面摆正心态，平和地面对自己的成果，另一方面积极与导师、学长学姐沟通包括实验的宏观方向和实验的具体实施步骤，最后尽量争取一些实质性的成果。没有成果也不一定不能申请到好学校，申请过程本身也是有一定的运气因素的，所以无论何时，都请大家放平心态，冷静地思考和分析。  


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://hustcsrun.gitbook.io/23fall/hua-zhong-ke-ji-da-xue-ji-suan-ji-lei-fei-yue-shou-ce/ben-xiao-ke-yan-yu-shu-qi-ke-yan/ben-xiao-ke-yan.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
