AI研究生版孔乙己
AI研究生版孔乙己 - 啊哈哈哈哈的文章 - 知乎
https://zhuanlan.zhihu.com/p/1896949310874170905
码农楼的实验室格局,是和别处不同的:都是进门一排显示器配机械键盘,桌上的咖啡杯务必是见底的,不能随时提神。做研究的研究生们,等凌晨打了下班卡,每每花十分钟时间,刷新一次GitHub看CI进度。——这是二十多年前的事,现在每次要涨到二十分钟,——靠在电竞椅外站着,偷偷刷会B站休息;倘肯夜宵时多花几块钱,便可以买一瓶红牛,或者魔爪,提振精神了,但这些研究生,多是硕士生,大抵没有这样阔绰。只有博士生,才踱进楼下的休息室,要咖啡要奶茶,慢慢地坐着喝。
我从大四保研起,便在实验室里干杂活,导师说,样子太傻,怕伺候不了博士师兄师姐,就在外面做些调参的事罢。外面的硕士师兄师姐,虽然容易说话,但唠唠叨叨缠夹不清的也很不少。他们往往要亲眼看着你改代码,看过loss曲线有没有收敛,又亲看将validation accuracy跑出来,然后放心:在这严重监督下,摸鱼也很为难。所以过了几天,导师又说我干不了这事。幸亏推荐的情面大,辞退不得,便改为专管跑baseline的一种无聊职务了。
我从此便整天的对着屏幕,专管我的baseline。虽然没有什么失职,但总觉得有些单调,有些无聊。导师是一副黑脸孔,师兄师姐也没有好声气,教人活泼不得;只有程异几到实验室,才可以笑几声,所以至今还记得。
程异几是唯一一个用vim写代码的人。他身材很高大;苍白脸色,皱纹间时常夹些黑眼圈;一头乱蓬蓬的头发。穿的虽然是格子衬衫,可是又皱又旧,似乎三年没有换,也没有洗。他对人说话,总是满口”注意力机制””梯度消失”,教人半懂不懂的。因为他姓程,别人便从论文里的”Conditional Variational Autoencoder”这半懂不懂的话里,替他取下一个绰号,叫作程异几。
程异几一到实验室,所有码代码的人便都看着他笑,有的叫道,”程异几,你论文又被拒了!”他不回答,对服务器管理员说,”开一个A100,要80G显存的。”便排出九张报销单。他们又故意的高声嚷道,”你一定又过拟合了!”程异几睁大眼睛说,”你怎么这样凭空污人清白……””什么清白?我前天亲眼见你validation accuracy比training还高,还开着数据增强。”程异几便涨红了脸,额上的青筋条条绽出,争辩道,”过拟合不能算失败……欠拟合!……炼丹的事,能算失败么?”接连便是难懂的话,什么”learning rate太小”,什么”batch size不对”之类,引得众人都哄笑起来:实验室内外充满了快活的空气。
听人家背地里谈论,程异几原来也投过顶会,但终于没有中,又不会调参;于是愈过愈穷,弄到将要延毕了。幸而写得一手好latex,便替同门改改论文格式,换一个挂名的机会。可惜他又有一样坏脾气,便是拖延症。写不到几天,便连人和电脑,一齐失踪。如是几次,叫他改论文的人也没有了。程异几没有法,便免不了偶然做些copy-paste的事。但他在我们实验室里,品行却比别人都好,就是从不拖欠;虽然间或没有commit message,暂时记在git log上,但不出一月,定然补上,从commit history里拭去了程异几的名字。
程异几跑完一半实验,涨红的脸色渐渐复了原,旁人便又问道,”程异几,你当真会调参么?”程异几看着问他的人,显出不屑置辩的神气。他们便接着说道,”你怎的连个workshop也中不了呢?”程异几立刻显出颓唐不安模样,脸上笼上了一层灰色,嘴里说些话;这回可是全是”reviewer不懂””novelty不够”之类,一些不懂了。在这时候,众人也都哄笑起来:实验室内外充满了快活的空气。
在这些时候,我可以附和着笑,导师是决不责备的。而且导师见了程异几,也每每这样问他,引人发笑。程异几自己知道不能和他们谈天,便只好向学弟学妹说话。有一回对我说道,”你跑过模型么?”我略略点一点头。他说,”跑过模型,……我便考你一考。Adam优化器的beta参数,怎样设置的?”我想,预备延毕的人,也配考我么?便回过脸去,不再理会。程异几等了许久,很恳切的说道,”不会罢?……我教给你,记着!这些参数应该记着。将来做实验的时候,要用。”我暗想我和毕业还很远呢,而且我们组也从不用Adam;又好笑,又不耐烦,懒懒的答他道,”谁要你教,不就是0.9和0.999么?”程异几显出极高兴的样子,将两个指头的长指甲敲着键盘,点头说,”对呀对呀!……Adam有四种收敛条件,你知道么?”我愈不耐烦了,努着嘴走远。程异几刚用指甲蘸了咖啡,想在桌上写公式,见我毫不热心,便又叹一口气,显出极惋惜的样子。
有几回,隔壁实验室的学弟学妹听得笑声,也赶热闹,围住了程异几。他便给他们一人讲一个调参技巧。学弟学妹们听完,仍然不散,眼睛都望着他的屏幕。程异几着了慌,伸开五指将屏幕罩住,弯腰下去说道,”不多了,我的GPU时间已经不多了。”直起身又看一看剩余时长,自己摇头说,”不多不多!多乎哉?不多也。”于是这一群学弟学妹都在笑声里走散了。
程异几是这样的使人快活,可是没有他,别人也便这么过。
有一天,大约是国庆前的两三天,导师正在慢慢的看周报,忽然说,”程异几长久没有来了。还欠十九个ablation study没跑呢!”我才也觉得他的确长久没有来了。一个跑实验的师兄说道,”他怎么会来?……他把服务器搞崩了。”导师说,”哦!” “他总仍旧是乱sudo。这一回,是自己发昏,竟把rm -rf /挂在了crontab里。新买的服务器,能这样用的么?” “后来怎么样?” “怎么样?先写检讨,后来是赔,赔了大半年补助,再延毕一年。” “后来呢?” “后来延毕了。” “延毕了怎样呢?” “怎样?……谁晓得?许是退学了。”导师也不再问,仍然慢慢的看他的arxiv。
中秋之后,秋风是一天凉比一天,看看将近初冬;我整天的靠着暖气,也须穿上格子衬衫了。一天的下半夜,没有一个bug,我正合了眼坐着。忽然间听得一个声音,”开一个V100。”这声音虽然极低,却很耳熟。看时又全没有人。站起来向外一望,那程异几便在角落里对了显示器坐着。他脸上黑而且瘦,已经不成样子;穿一件破洞牛仔裤,盘着两腿,下面垫一个背包,用数据线在腰间挂着;见了现在管服务器的我,又说道,”开一个V100。”导师也伸出头去,一面说,”程异几么?你还欠十九个ablation study没跑呢!”程异几很颓唐的仰面答道,”这……没有GPU时间了下回再做罢。这一回是新项目,显存要大。”导师仍然同平常一样,笑着对他说,”程异几,你又把服务器搞崩了!”但他这回却不十分分辩,单说了一句”不要取笑!” “取笑?要是不乱sudo,怎么会退学?”程异几低声说道,”自己放弃,放弃,放弃……” 他的眼色,很像恳求导师,不要再提。此时已经聚集了几个人,便和导师都笑了。我给他开了张卡,拿出去,放在显示器旁。他从破牛仔裤里摸出一张报销单,放在我手里,我见他满手是茧,原来他最近在写C++。不一会,他跑完实验,便又在旁人的说笑声中,慢慢走去了。
自此以后,又长久没有看见程异几。到了年关,导师打开周报说,”程异几还欠十九个ablation study呢!”到第二年的端午,又说”程异几还欠十九个ablation study呢!”到中秋可是没有说,再到年关也没有看见他。
我到现在终于没有见——大约程异几的确退学了。
