我的第一次反向传播

观察者 A:这个人类模型已经快要训练到第 21 个 epoch 了,但精度只能说是差强人意。

观察者 B:你说的没错,虽然 loss 确实在稳定下降,但以这个速率是很难应对接下来的挑战的。一旦测试数据集变得更大更复杂,我能够想象他的泛化性不会太好。

观察者 A:我不愿见到那样的情况。这个人类模型的超参数是我设置的,我认为他是有潜力的。

观察者 B:我姑且相信你的判断。遇到这种情况,最好的方法是暂时停止训练,检查一下中间变量。你在调参方面直觉很准,但是代码却很粗疏。不要让我提醒你,拉刻西斯,上次,你的疏忽差点……

拉刻西斯:我知道了,克洛托!你的说教尤其使人厌烦。我有能力处理好我自己的事情。以前,你总说我对生命线的测量不够准确,但后来这被证实是阿特罗波斯的剪刀太过随意所致。现在,神经网络取代了命运之网,你还是老样子,对我指指点点……天哪!这是怎么回事?

克洛托:看来这个人类模型的梯度始终没有变过。很明显,你忘记进行反向传播更新梯度了,这就是他的 loss 下降稳定却缓慢的原因。承认吧,在训练人类这件事上,你仍然需要你亲爱的姐姐的指导。

拉刻西斯:(沉默)

克洛托:好啦,你也不必太过自责,这样的机会还有很多。与其哭丧着脸,不如赶快修改代码,继续训练吧。这个人类模型接下来的表现,我也颇有兴趣。


反向传播

2024 年,我迎来了在大学的第四个学期。前三个学期的 GPA 已经证明,高中的那一套学习方法用来应付大学的常规学习依然行之有效,但相对的,缺陷也很明显:首先是付出的时间较多,其次是模式太过机械。

大学与高中相比,从选课制度到课程内容,给予学生本身的灵活性是巨大的;不好好利用这一点,继续像高中那样老牛耕田,实在是吃力不讨好。(也许讨好,但太吃力)

并且,在接触科研的过程中,我发觉到高中的学习模式与科研是互相抵触的。科研,特别是 AI 方向,技术的迭代更新实在太快。当你好不容易完全学懂一项技术时,往往下一个浪潮又接踵而至。

高中的学习模式是自底向上的,从地基开始夯起,再慢慢的添砖加瓦;大学的学习模式应当是自顶向下的,先高屋建瓴,把握全局,深入到底层时,哪里不会学哪里。

虽然听上去有点囫囵吞枣,根基不稳,但的确效率很高。把字典背的滚瓜烂熟会使人惊叹,但很难受人称赞:这是因为字典本身不是知识,而是检索知识的工具。

认识到这一点之后,从这个学期开始,我需要尝试逐渐改变我的学习方式,使之更适应大学的节奏。


梯度更新

从三个方面来考虑这个学期我应该尝试作出的改变。

Lectures

经过上学期的洗礼,是时候该考虑 lecture 本身的重要性了!

坑 u CS 课的质量实在是不敢恭维,因此 lecture 一定要选择性的听,最好提前准备一些能在课堂上做的事情,不然身心很快会被空白所占据。

不记 attendance 并且教授是 PPT reader 的 lecture,一定要及时止损,放弃 attend。但同时,如果教授很会讲课,一定要记得带纸笔做一点 digest,跟着教授的节奏来,这是为了消除课后总结这一步骤

这一学期有我很喜欢的 Ravi,2120 也是一个清华出身的年轻 AP 负责,所以我乐观的认为这学期的 lecture 质量应该不会很差。(我错了,除了 Ravi 的课其他都难以言喻)

【言弾 コトダマ 】

  • 教授是 PPT reader
    • 记 attendance:准备好要在课上做的事。
    • 不记 attendance:不 attend。
  • 教授很会讲课:带纸笔,做 digest

Notes

开这个博客是我大学做出的最正确的选择之一。它不仅承担了我写批话的功能,也是我上传笔记的地方。这个学期开始,它将见证我笔记形式的改变。

之前我的笔记大多是内容导向的:极其的丰富详实,我恨不得把 PPT 的文字内容完整的梳理一遍放到笔记中。现在看来,这的确是一种抄字典的行为:以大量的时间换取对知识的深刻掌握。

实际上,对于大部分事实性的知识,我完全没有必要进行记录,在有需要时直接查阅即可。我应当关注的是逻辑性的知识,而概括逻辑性知识最好的方式是采取问题导向式的笔记。

【言弾 コトダマ 】

总而言之:非必要不记录,有必要记录的必须简洁;就像神经网络一样,抽取关键的特征,忽略不重要的边缘信息。相信自己的好记性大于烂笔头。

Leisure

这一部分我很满意:还是老三样:打游戏,读书,写批话。前两者是输入,后一个是输出,这才称得上是健全。

-----------------------------------そして、次の曲が始まるのです。-----------------------------------