绕着INI走了一圈,这像是究极简化版的2021.03.07。区别在于但凡能回忆起的我都已经记过了,没必要在这里罗列。但我还是有一个很沉重的感触:从清华毕业时我觉得,不管是辉煌还是苦难,我一切都已经见识过了,但是从踏进这里的第一天起,我意识到我其实什么都没见过。我和绝大多数同学有着截然不同的成长经历,我完全无法想象他们的生活,就像他们无法想象我。
我总是会害怕,会迷茫,担心周围的人不会接纳我。我想他们最终也没有接纳我,否则我就不会独自一人在这里了。这能算是给了我什么启发吗,其实也没有,我对此依然无能为力,只是希望不久之后的下一次被人群拒绝,我能稍微从容一点。 - 节选自《2022.12.24》
课程
本来选课的计划是10605 + 10714 + 15645 (DB),但最终没有选上DB,即使我作业都做完了。这是因为Andy Pavlo回来教DB了,他很受欢迎,而INI的选课优先级很低。学期初纠结了很久剩下的一门选什么,15662 (CG)和10605时间冲突了,我申请了冲突选课,拿到了两边教授的批准,然后交给INI审核,听说通常会通过的,但是居然被驳回了。我还考虑过10601 (Introduction to ML),上了两周感觉太无聊了,还有三次考试,听起来就很烦。最终选了10725,后来证明这也不是很好的选择。
我对ML并不是很感兴趣,因此我也不会选11785 (Introduction to DL)这种硬核的课。但也没有更感兴趣的课了,我不能接受选个Negotiations之类的,我是纯粹的技术人员。
10-605 Machine Learning with Large Datasets (A)
看课程标题就像是我司做的事,而且好几个作业用到Databricks的免费Spark集群,虽然我不做ML,感觉还是很有选的必要。
课程前半段是些基本的ML算法以及相应的分布式计算,数学成分比较多,但其实都挺简单的,后半段都是围绕DL的。春季版本有六次作业,秋季版本有五次作业,和春季的前五次是一样的。每次作业都有written和coding两部分,written是一些数学题,coding前半段用Spark,后半段用TensorFlow。
秋季版本还有一个mini project,可以选模型压缩,它大概可以看成春季第六次作业的加强版,我选的是它;或者做个什么ICLR Blog Track,不是很懂,好像是写博客介绍一篇论文。mini project似乎是强制组队的,我也打算找个队友,但队友期中退课跑路了。我找教授申请自己做,倒也批准了。
模型压缩按照剪枝后的模型的稀疏度和正确率评分,有我最喜欢的排行榜,而且前三名有额外加分,我没有理由不卷。我对DL完全不熟,照着论文写完之后只能无脑地调参,靠这确实在ddl前一天都排在第一。我早就猜到可能有人隐藏自己最好的结果,接近截止才提交,结果还真有,ddl当晚我就被挤到了第三,第二天醒来被挤到了第四,连加分都没了,这些人都这么心机吗。我也没有太失落吧,毕竟我确实没有付出多少努力,这不是我最擅长的方向,我所做的也只是堆时间。事实上,努力追求,但最终无法在排行榜中拿到第一,这种情形才是贯穿我的学生生涯始终的。
有期中期末两次考试,题量不小,难度也不低。纸笔考试,允许带一张cheatsheet。我做了特别密集的那种,几乎把ppt中所有大段的文字都放进去了,结果也确实挺有用的,它真的会考的很偏。
10-714 Deep Learning Systems (A)
陈天奇和Zico Kolter教的,听说最后一节课结束后大家都找陈天奇合影,直接把他晾在一遍。我看了几节录像,感觉还不如看ppt,课程的很多时间在写公式,字还不怎么清楚。我真是不理解,把公式一笔一划手写出来,这和直接看写好的公式有什么区别吗。
这门课基本是教你从零开始构建一个PyTorch。五次作业,用Python,C++和CUDA,实现Tensor,autodiff这种基础设施和一堆算子,然后搭一些简单的CNN和RNN。作业的writeup和测试还是有不少问题,而且它的基本思路就不是很合理。为了检查正确性,它要求你的实现和标准答案的输出在误差范围内相同,包括神经网络的正确率这种数据。但是很多要求是相当模糊的,很容易写出符合要求但是结果不完全一致的版本,例如因为浮点运算没有交换律和结合律,(a * b) / c
和a * (b / c)
的结果就是不一样。我们做作业的时候确实就碰到了这种错误,教学团队也觉得不合理,把那个算子的容许误差范围提高了。但是这没有消除本质上的困难,只要有任何地方写的和标准答案不一样,就存在这种风险,即使过了每个单独的测试,最后拼成神经网络时也可能因为误差累积而出错。这样调试起来会非常困难,而且也是毫无意义的,相当于在猜TA是怎么写的,把一个正确的版本改成另一个正确的版本。可能确实没有更好的办法来测试正确性,只能希望他们以后把writeup写的更严谨吧。
还有一个组队自选project,要求拓展现有的框架,比如加一些算子,并且用拓展的内容实现简单的应用。我组队了,但我直接认清形势,放弃幻想,根本没打算让他们参与,自己全写完了。报告让他们稍微参与了一点,但主要内容也是我写的,只有代码的作者才能写出深刻的内容。这里并不是他们在划水,是我直到写完才通知他们,他们可能是有实力也有意愿写的,但我不放心,选了一条最保险的路。
10-725 Convex Optimization (A)
我对数学可能还是有点兴趣的,但是选它的主要原因是我听说这是门水课,没想到中间发生了很多波折。我尝试尽量客观地评价一下吧。我首先声明我绝对尊重教授和TA团队,但在很多其他因素的作用下,这门课的体验变得非常差。
凸优化应该是一门很深刻的课,若干个学期之前它也确实是很难的,但是Yuanzhi Li接管之后把它变简单了很多,他的说法是,凸优化已经过了它的黄金年代,在现代ML中没有太大的作用,因此我们只需要掌握算法和结论的精神,不需要太在意证明过程。课程评分只有作业,基础和bonus题分开计分,只要达到基础部分的50%就是A-,75%就是A。最多六次作业,这学期实际上有五次。每次作业最多可以用14天的late days,所有作业总共可以用28天,这实在是宽松到夸张了,各个方面都体现出它是一门水课。前三次作业确实很简单,我基本没有听课,每次花不到一天就能过一遍ppt加上至少把基础部分全做出来。
但是第四次作业突然变难了,基础部分的两道分值最大,合计超过50%的题我都完全没有头绪,看完ppt和课程录像还是一样,到处找凸优化的教材,最终非常艰难地写出并不是很完善的证明。有人在Piazza里问为什么这么难,Li贴了一段Machine Learning Department给他的警告,大意是,“凸优化是很重要的课,然而自从你接手以来,课程材料被严重淡化,变得完全没有挑战性,几乎每个学生都能得到A或A-”。他说他不能反抗系里的决定,所以不得不提升剩余的作业的难度。
我觉得这个难度也还可以算是正常,之前确实太简单了。然而第五次作业一直拖到期末考试周才布置,这其实也可以理解,因为需要时间重新设计作业。但它的难度再次远超了第四次作业,并且基本可以看作不能用late days。我是没有考试,但很多人需要在同时有考试的情况下在不到一周内做这次作业。不少人直接就放弃了,其实我也完全没必要做,靠前面的分数肯定能拿到A-,但是我必须拿A,既然是我自己的选择,我也不能抱怨谁。我感觉每一道题都是一个全新的领域,什么Stochastic Difference Equation,Stein method,我不得不自己去找教科书,甚至是论文来入门。后两次作业涉及了太多高级知识,远超课程本身的内容,它也没有列什么先修。如果确实如Li最初所说,只要求感性地理解结论,那么即使没有基础知识也是可能的,但现实情况是没法用这些感性理解来做后两次作业。折磨了大半周,做了一小半,剩下的实在是不会做了。如果我有自己大一的数学水平,也许还能挑战一下,现在早就全忘光了。
最后还是如愿拿到了A。从我自己的视角来看,这课的整体难度仍然是偏向于轻松的,但难度分配太不平均了,不是所有人都能花一整个期末考试周来做作业。也许下个学期课程设计会变得更合理,但肯定不会回到前几个学期那种水课的状态了。
到这里就结束了
TA
这学期我当了15-746 Storage Systems和15-618: Parallel Computer Architecture and Programming两门课的TA。这其中还有些波折,一开始我申请了两门,但系里只批准了PP,我到处问好像也没法解决,但后来它又把SS加上去了。
PP这个课什么都有,书面作业,编程作业,project,考试,课上quiz,TA的工作量也大得多,而且TA人数还更少。PP每周两次,每次两小时office hour,SS每周一次一小时。
PP的后两次作业基本完全是由我设计的。教授选了三个TA负责,另外两个都在划水,就连这种组队我也还是不得不自己做了所有事。按照惯例后两次作业是从题库里选的,但教授认为之前的版本过于简单了,我也认同,HW4几乎是重做了。我是很担心作业出问题的,这是我的责任,感觉哪里没做好都要受千夫所指,我并不相信别人会体谅我,因为我并不会体谅别人。
SS第一个project我还回答了一些问题,第二个project就少了很多。冬天到了之后我每天很早就回家了,所以晚上在INI写的人也没法问我。很惭愧,我一直觉得没有怎么帮到别人。
做两份TA工资并不会增加,工资是按自觉填的工时来发的,每周大约$300,我觉得是挺多的了,完全可以cover我的房租和生活费用。当然学费还是太贵了,还是得父母出,我以后会还给他们的。听说有些学校当TA可以免学费,这对于CMU是不可想象的。
琐事
摄影
2022.06.25和同事一起出去玩,他们提到摄影,看着旧金山美丽的风景,我也真想买个相机记录下来。在他们的推荐下买了索尼的A7M4,之后还买了几个镜头,24-70mm F2.8 GM II,70-200mm f/2.8 GM OSS II,这真是挺贵的。我确实不需要这么好的镜头,尤其是我极少拍人,根本用不上大光圈。但是很遗憾,我确实买得起,所以也不愿意用便宜的。不过我还是很确信我需要的就是变焦镜头,定焦对我更没有意义。
学期当中发现了延时摄影这个东西,很有意思,真是打发时间的利器。可惜的是前期拍的几次间隔都太长了,合成出来只有十几秒,我当时觉得没人愿意看更长的视频,其实加上配乐之后更长的视频看起来也会心情很舒畅,现在也没有机会再回到那些地方去拍了。
拍摄于2022.11.23,West End Overlook Park。
坐在公交上我想到了发朋友圈的文案,“想起许多长江边踽踽独行的夜晚”,其实走路的时候并没有想这么多,但休息下来,疲劳酸疼的腿真的让我想到了。这句话确实很有我的风格,从那时到现在,甚至从出生到死亡,“我一直都是一个人啊”。 - 节选自《2022.11.23》
拍摄于2022.11.24,Herrs Island。
回想起来有种不真实的幸福感
《2022.11.24》是我2022年最长的一篇日记,但是这次真的拍的不太好。
拍摄于2022.11.27,Gates and Hillman Centers 6th floor。
拍摄于2022.12.20,Gerst Way Pedestrian Bridge。
噪音让我感觉到和世界隔绝了,记忆中2022.06.25在金门大桥上骑车和这很像。太阳下山之后特别冷,我有一次看到相机没有在充电,怀疑是因为充电宝温度太低,把它放进袖子里,用手臂贴紧它。有几次冷风吹来,我唯一的取暖手段是蹦跳。最后我想换个角度拍一下天桥,搬动三脚架时手接触到金属部件,真是冻的生疼。 - 节选自《2022.12.20》
Sep
2022.08.29从西雅图回到匹兹堡。之前住的Amberson Plaza不能租半年,想着之后转租会比较麻烦,就搬到松鼠山一个能租半年的公寓去了。这个公寓确实挺老挺破的,可能这就是它能租半年的原因。所以我实在不想待在家里,有日记为证,在匹兹堡的literally每一天我都去了INI。
一开始在其他人的介绍下认识了一批秋季入学的新生,后来再碰到的人我几乎都不认识了,我真的就是没有勇气去问。
2022.09.02有个INI的活动,坐游船在匹兹堡的河上观光,很多人参加。我总是四处徘徊试图找人说话,等到真的开始对话一句话也接不上来,这是我参加集体活动的常态。
“天气挺不错的嘛,要是能早点这么想就好了。”
好吧,看来大光圈还是有点用的,这是套机镜头拍的,这噪点简直没法看了。
2022.09.18去Carrie Blast Furnaces玩了一趟,这是一个废弃的钢铁厂,还是挺有意思的。但是不能指望我对这种东西产生任何感触,去了解它的历史文化什么的,我不是这种人。
Oct
2022.10.12尝试去downtown的DMV考Permit,不出意料被拒绝了,因为我的I-20有效期不足6个月,同时OPT还没开始,即使已经拿到EAD卡也不行。据说让不让考完全是看工作人员心情的,但他按规章办事我也没有什么可说的。听说Bridgeville的DMV更加宽松,但我也懒得去尝试了,我本来就不需要开车。
秋假去纽约玩,主要目的是去看S赛。观赛体验肯定是不如线上的,我的视力很差,也听不懂现场的英文解说,也没有弹幕看乐子。但是现场看比赛为的就是一个氛围,像我这种不懂足球的人,后来和人群一起看世界杯也会激动地跳起来,但一个人就是不会。英雄联盟的线下赛氛围也很好,尤其是GAM赢TES,当时真的乐死我了。
纽约也是很有意思的,你可能会发现我只会这一个形容词,没办法,文化太贫瘠了。我很享受在High Line上散步,但我是绝对不会去博物馆的。
Nov
2022.11.01,我的电脑坏了。第一反应是震惊,我的电脑居然会坏,我一直觉得能把电脑弄坏肯定是人有问题,但它确实就是坏了。自己尝试碰运气修了一下,取下电池释放静电之类的,并没有任何作用。这段时间借czj的电脑用,他有好几台电脑。在美国修电脑可太麻烦了,已经过了联想的一年保修,我给客服打电话,似乎付费也不能修。Best Buy也许可以修,但在网上查到不少负面评价,可能修的价格比原价还贵,而且匹兹堡的店也比较偏远。最后把它送去uBreakiFix碰碰运气,2022.11.11送过去,到2022.12.16都没有任何进展,我打电话说我就快搬走了,如果你们真的能修,能不能给我送到加州,他们说不行,现在给我看一下吧,也就是说这一个多月里根本就没有开始修。然后很快打来电话,说修不了,让我拿走。
最终在搬家时我把它扔掉了,当然硬盘取出来了,非苹果的电脑还是有这一点好处的。它几乎陪我度过了整个CMU,但没能等到黎明的曙光。
去湾区之后我自己装了一台台式机。Ryzen 7950X + RTX 4090,不算显示器4000刀,换算成人民币和国内的价格差不多,或者稍贵一点。为什么选4090,还是那句话,很遗憾,我确实买得起,所以也不愿意用便宜的。我真就是用4090玩英雄联盟,虽然也会修图,剪视频,但都是很轻的负载。为什么选AMD的CPU,这就有点渊源了。我的前三台电脑是:Ryzen 2700 + GTX 1060,Ryzen 4800H + GTX 1660(笔记本),Ryzen 5800H + RTX 3060(笔记本),我对AMD还是有点信仰的。
2022.11.08有一场月全食,碰巧这是我的生日。3:20起来拍照,在中国应该是同一天的傍晚。前一天晚上还是晴天,但凌晨天空中一直笼罩着薄薄一层云。拍出来效果太差了,太可惜了。我毫不怀疑在地球上的其他地方手机真能拍的比它好,风景本身比设备重要得多。
人类诞生以前,灭亡以后很多年,太阳系第三行星和它的卫星都会如约精确地表演这段舞蹈。我作为一个微不足道的人类个体,碰巧在出生后23年整的凌晨观测它,所能做的也只有忠诚地记录。
我梦想融入这永恒。
我曾经感慨于百万光年之外的光子,跨越如此遥远的时空洒在我的身上,诉说着遥远的过去那颗星星的孤独。但是现在我更喜欢月亮:它是一面镜子,不管希望多么渺茫,这面万有引力维系的镜子总有可能把路灯在我身上反射的光子,或者是可见光之外的黑体辐射,反射进她的眼睛。那闪耀的银白光芒中,也可能就有一个来自于她的光子。星星们太远了,太亮了,作为镜子,它们还不如尘埃。我还想过,即使真的有这样一个奇迹,两个百万光年的征途都没能阻挡那个光子,等它回来,柔如草芥的生命也早已沦为一滩弥散于空间的粒子。后来又自觉可笑,八光分外的太阳不也是一颗星星吗,真是想的莫名其妙。 - 节选自《2016.12.31》
高中的同学们没见过这些文字吧,以前我怎么肯跟人说。那时的日记总是有点文艺的,虽然也是很幼稚很好笑的,现在嘛,高情商的说法是写实。
关于生日还有一件事,在别人的对话中我听到过很多次“给你好好办个生日聚会”之类的,我觉得这是难以想象的,首先我就不知道,如果不是我写在这里,别人为什么会知道我的生日呢。本来这也很正常,有人在乎,找一群朋友热热闹闹庆祝一下,有人不在乎,那就像完全没这事一样。但我偏偏是在乎,却不知道怎么做。
Dec
… 我说我也在国内生活了二十几年,我难道不知道那是什么样子的吗,我只觉得所有人都讨厌我。我这样说大家当然都会安慰我,尤其是zjz,他说如果有人因为我优秀而讨厌我,那是他们的问题。但是并不是这样的,他们讨厌我是因为我的性格有根本的缺陷,长的也太丑了。安慰不会改变事实,我也并不能脱离其他人而活着。 - 节选自《2022.12.19》
2022.12.22去参加了rh的生日聚会,他们能邀请我真的应该感到非常荣幸和幸运。饭后大家聊了很久,我基本上记下来了每个人说的话。我当然也想说,也说了一点梗概,但是没有人继续往下问了。
听着这些故事,我最大的感触是,如果人都是这样的话,可以说我这一辈子从来就没有哪怕接近过恋爱。 - 节选自《2022.12.22》
没关系的,都一样。
在我离开前几天匹兹堡下了很大的雪,零下18度左右,其实也说不上特别冷吧,但我还是穿的太少了。我有且仅有一件羽绒服,我根本不打算把它带去湾区,在此之前就送人了。但我依然去了INI,虽然只是为了放一下东西,然后在校园里拍拍照。
实在是太冷了,每一次户外的行走脸都冻的疼。我经常感叹,我写了这么多流水账,驾驭文字的能力没有丝毫提升,我依然没法刻画这种感觉。两天之后到了湾区,我就会彻底忘记它。 - 节选自《2022.12.23》
2022.12.24,打包所有的东西,也就是两个箱子,装不下的就扔了。拎着它们去INI,因为坐公交去机场必须在这里转一站。然后是开头那一段话。晚上9:30上了公交,在机场很艰难的睡了两三个小时,我根本就没考虑过住酒店。在圣诞节当天到了湾区,因为这一天的机票在十天里最便宜。事实证明这非常不方便,我连枕头被子都没有,当天所有的店也都不开门,只能盖着很薄的外套睡觉。又只睡了三四个小时就冻醒了,翻来覆去冷的睡不着,煎熬到六点起来,看到了很漂亮的云,我兴奋地朝日出的方向跑,但最后也没有找到特别适合拍照的角度,后来也没有再见到这样的云了。
2023.01.01,只有一个人对我说了新年祝福,我的朋友实在是太少了,经常会有一些奇怪的“只有”。如果你在看的话我还是对你说一声谢谢,虽然这也没什么意义。这次生日因为我发了朋友圈,还是有几条祝福的。2021年我的生日,除了妈妈之外也只有一个人对我说了生日祝福。如果你在看的话我也对你说一声谢谢。
有一个小细节,从2021切换到2022的时候我几乎没有写错过日记的日期,但最近20天里我几乎有一半的日记,抬手就是一个2022。
未来
2022.10.25妈妈说要申请B签来看我,让我给她发我的I-20和邀请信。我为此焦虑了一段时间,2022.11.20她终于告诉我签证被拒了,当时我情不自禁地喊出来了,好__,开香槟咯。他们再也不能干涉我的命运。
真的不能吗?这是我最害怕的事情。
开始工作之后我的心态没有丝毫的转变,就像之前临时住了半年的公寓一样,现在的一切都是临时的。我真的很喜欢这里,真的很想永远留下来,但是我的想法从来都没有任何意义,未来依然充满了不确定。当然,说是充满,其实是很具体的几件:能不能抽中H-1B,会不会被裁员,绿卡排期要等多久。这是我眼下能看到的余生中仅有的重要的事情,但它们都不掌握在我的手上。每天担惊受怕的日子到底要到什么时候啊!我应该清楚,不太可能短于十年。
这里有一个很有趣的问题,十年之后我还活着吗?