初次见面,很高兴见到你
(四)nanoGPT 源码精读(上)
nanoGPT 代码干净,非常适合理解底层逻辑。由于 ZeroToHello 系列的定位是细节、硬核,部分情况下会展开非常多的讨论。所以我把源码精读拆分成三部分,这是第一部分,精读的是核心的 `model.py` 文件, 聚焦整体结构、组件实现细节以及工程技巧等。
徐涛语录
当年考研的时候是听徐涛老师的政治课过来的,他作为一个从理工科转过来的政治老师,讲解的理论知识更具体、更直观、也更容易让我接受。最近从时间线上刷到他的视频,不免让我回想起那段时间他给我们做的分享。
减肥这件小事
随着脸庞日渐圆润,我决定将减肥列入今年的 OKR……
(三)三种架构
这原本是 ZeroToHello 系列第三篇文章的部分内容,但是第三篇文章越写越长,于是将这部分内容单独拆分出来,同前两篇文章一样依然作为前置知识。了解架构的演变,有助于后续理解 nanoGPT 对 CausalAttention 的实现。
(二)梯度消失和梯度爆炸
Transformer 的发展以及精简实现中有两个地方始终让我非常困惑,其一是现代架构抛弃 Post-LN 的原因;其二是初始化模型权重时针对每个 Module 最后的全连接层(Project Layer)的权重会做一个缩放。
(一)MHA 的维度变化原理
只要涉及到矩阵运算,就离不开线性代数的各种操作。如果不了解原理只是死记硬背,一开始看起来似乎会比较轻松,而实际结果却是记了又忘,反反复复。慢即是快,静下心找时间理了一下这里(死去的线性代数在不停追杀我 🙉
修改 Ubuntu SSH 端口不生效
更改 SSH 端口或许可以缓解我在终端敲命令时的严重卡顿问题,但是新版 Ubuntu 系统修改 SSH 端口也没那么简单
Obsidian 折腾自建服务器 LiveSync
折腾了那么久,最终还是决定放弃了……
微信 OpenClaw 插件适配 nanobot
微信官方终于推了个名为 ClawBot 的插件,可以直连 OpenClaw,可是我只有 nanobot,那么是不是🐶[狗头]……