第一次科研总结
至今回想,我的科研经历充满各种机缘巧合,或许并没有多少参考价值,但也记录一下自己的心路历程。毕竟,世界上或许总有那么一两个人,或许和曾经的我处境相似。
故事的开始
回顾这次科研的起源,就充满了戏剧性。
那时候学院刚分配了导师,聊起未来规划时,我就表达了想做科研的想法。导师表示可以来组里试试,但更希望我能找到自己真正想做的。那周周六至今想起来仍让我觉得匪夷所思,我是是个消息从不错过的人,偏偏那天恰好手机遗失,没有收到导师的邀约。
即便后续道歉解释了,但也不好意思再提进组的事,不过,现在想来,自己也确实对那个方向兴趣不大,否则应该也会再争取一下。不过当时我的想法是,如果还想再尝试下科研,就只能自己找到方向去找导师聊了。
某一天偶然浏览到两篇推荐系统的文章,然后跟AI聊了两句,看了两篇综述,就去找导师聊起了我的想法。我至今仍庆幸导师的仁慈,在当时面对我那个极其粗糙的想法,也能鼓励我去做。
后来也很感谢他,在我的研究逐渐步入正轨的时候,主动提出baseline模型的作者跟他是校友,并联系了那位老师对我进行指导(因为我的研究方向跟他的不太一致)。
构思与实验
我最终的研究方向是教育数据挖掘,这个领域主要有知识追踪和认知诊断。我是从对课程进行推荐的系统了解到了后者并进行的研究。
文章最大的创新其实来自我深夜研读文章时的直觉。那时候我还是个什么都不懂的科研小白,对着经典模型按照自己的直觉直接大改了三个模块。第一次调整花了一整个下午,在当时就已经在几个数据集上都微弱地稳定跑赢了baseline。尽管这之间的差距很小,我也仍为此感到振奋。
不过很快,做了消融实验后我就发现,改进的模块实际上只有一个是真正有用。这时候我就有些忧心忡忡,这个模块改动并不大,且最终效果也比 sota 略差。
后来研读文章,又发现 sota 模型的一个实现和我最初想要改进的方向一致,且它的改进方法是合理好用的。
我马上为我的模型也增加了这个实现,效果确实好了不少,起码现在能微弱赢过 sota 了。且我这时候才觉得后怕,连忙检索了一遍最新文章来看,好在其它的主要创新点没有人做过。
这里的教训是,前期的文献阅读一定不要偷懒。虽然我后续安慰自己,我在尝试解决这个问题的过程也学到了很多。
由于差距还是不大,这时候我准备从可解释性来做文章,非常巧合的是,我跟AI聊天的过程中,它提到,我的改进思路跟认知心理学中的一个经典理论高度重合,于是我花了一天时间了解理论,把它套进了我的论文。
这点后来被老师一针见血的指出不够深入,需要再优化一下,我又花了一周的时间仔细研读了理论的相关论文。这个时候我已经慢慢进入正轨了,最后也结合理论尝试了很多调整改进,并不断试错汲取经验。
在模型改进过程中,很幸运的是,我的直觉一直将我导向正确的方向,每一次觉得设计得不对劲的时候,我尝试找出不符合直觉的部分,仔细结合理论和实际思考。
尽管中期的调整花费了很大的功夫,我也在各种环境复现上栽了很多跟头,万幸最终结果是不错的。
写作
ing…
反复调整修改,深刻体会到老师说的“基于问题出发的研究论文好写,但效果不一定好;基于直觉改进的模型效果一般比较好,但论文不好写”。
情感
做实验的那段时间是我人生最难熬的时期。实际上我实验失败的次数并不算多,但都恰好撞上不太好的时候。
第一次失败的时候在路上遭遇了人生第一次车祸,好在有惊无险。
第二次则更为惨烈,那是一个很安静的夜晚,安静到我在看到熟悉的身影时能听到自己的心跳。
和他的故事其实早就结束了,但这并不代表我在代码几个小时都调试不好的时候,希望在宿舍楼下遇到他和他的新女友。
我时常觉得上天像在考验我,就在那一刻,手机震动,是班上同学试探性的邀约。
回到宿舍的时候我犹豫了很久,我当时特别希望之后每次再遇到他,身边也有一个人。像较劲一样,我觉得这样好像也不对,但哪里不对,我一时也说不上来。
后来我想,这样并不公平,起码那个时刻,我并不是真的想在明天和别人见面。
而我必须意识到,我人生所有遇到的问题,都不会随着恋爱而消散。这个阶段的问题,也不会随着下个阶段的到来而消失。
事实上这样的时刻还有很多,经常性,我带着阶段性成果去找导师,他说,你现在能做成这样很不错了,不过,你也可以再改进下某方面。
长期的反复调试让我很多次想说,这样也很好了,那就这样吧。但后来我很庆幸那一瞬间的我没有选择就这样。
人永远要走自己最初想走的那条路,不管别的路看起来有多好,我那时候是这样想的。
总结
在整个过程中,我的许多前期幼稚且简陋的思路,在后期以一种更合理的方式实现,并切实优化了模型。我因此珍惜每次天马行空的想法,或许它们离真正的解决办法只差一个转化的机会。
