Sep 26, 2026 · 3628 words · 8 mins
一个部署工程师的困惑 # 几年前我在做计算机视觉模型的部署,用的是 TensorRT 4 和 5。每次把训练好的模型转成 TensorRT engine,都绕不开一个参数:maxBatchSize。
Sep 20, 2026 · 8336 words · 17 mins
起因 # 上一篇文章理清了 latent variable 和 latent space 的概念,最后停在一个地方:
不要直接在复杂的数据空间中生成数据。先在简单的 latent space 中采样一个 \(z\),再通过学到的映射把 \(z\) 变成 \(x\)。
Sep 20, 2026 · 7051 words · 15 mins
起因 # 最近在看 MIT 6.S191 Lecture 4——Generative Modeling。在这之前我对生成模型基本没什么了解,刚建立了一个很粗的认知:
Sep 20, 2026 · 4988 words · 10 mins
上一篇只回答了"为什么不矛盾" # 上一篇文章里,我沿着一个概率问题一路追到了集合论。
那个问题是:对于连续随机变量 \(X \sim U(0,1)\),任意一个具体的点 \(x\):
Sep 20, 2026 · 6139 words · 13 mins
起因 # 最近在补概率基础的时候,碰到一个解释:连续分布中,每一个单点的概率都是 0,但整个区间的概率可以是 1。
我的第一反应是——如果每一个点的概率都是 0,那么把这些点全部加起来:
Sep 20, 2026 · 6019 words · 13 mins
以前在商汤做 CV 的时候,Faster R-CNN、SSD、FPN、RetinaNet 这些名字是天天打交道的。模型训练、转换、部署,各种坑也踩了不少——TensorRT 版本间 softmax axis 默认值不一致、RoI Align 的 num_roi_per_image 默认 300 导致多 batch 结果错乱,这类问题当年 debug 到怀疑人生。
Sep 20, 2026 · 4816 words · 10 mins
以前做 CV 内容审核的时候,训练数据里有大量视频。色情视频审核是一个很典型的场景——输入是一段几十秒甚至几分钟的视频,输出是一个二分类:这段视频是否包含色情内容。
但最近回忆起那段经历,我发现一件当时觉得理所当然、现在重新想却很有意思的事:虽然输入是视频,当时实际的做法却是先抽帧,把视频拆成若干张图片,然后按照普通的图片分类问题来做。
Sep 20, 2026 · 4695 words · 10 mins
最近在重新过 MIT 6.S191 Lecture 3(卷积神经网络)。2017 年我刚接触 CV 那会儿,CNN 算是吃饭的家伙,每天都在调。后来精力逐渐转到 ML Infra,成天跟 GPU 显存、通信拓扑和算子优化打交道,卷积网络的很多具体细节就慢慢生疏了——写个 nn.Conv2d 时 weight 的四维形状到底怎么排、Kaiming 初始化的方差怎么推、感受野怎么算,冷不丁被问到,脑子里还得卡壳一下。
Sep 19, 2026 · 5937 words · 12 mins
上一篇结尾我写:Multi-Head Attention 仍然只是一个 information routing / read mechanism,一个完整的 Transformer layer 还包含 FFN、residual connection、layer normalization 等组件。
Sep 19, 2026 · 7042 words · 15 mins
上一篇走到了一个结论:去掉 recurrence 之后,Self-Attention 必须重新获得 positional information。position 可以加进 token 的 representation,两者相加不要求后续计算无损还原,只要下游能利用其中的信息就行。
Sep 19, 2026 · 5299 words · 11 mins
上一篇结尾我留了一个问题:一组 \(W_Q, W_K, W_V\) 只定义了一个 matching / routing space,如果不同类型的信息需求需要不同的 routing 策略,一个 space 够吗?
这个问题让我停了下来。因为到 single-head self-attention 为止,每个 token 已经可以访问整个 sequence 了——任意两个位置之间的通路都是通的。如果表达能力不够,加大 \(d_k\) 不就行了?为什么还要搞出 Multi-Head?
Sep 18, 2026 · 7135 words · 15 mins
上一篇结尾留了三个问题:谁和我相关?相关程度是多少?我该从对方那里读什么?
Self-attention 允许 sequence 内的位置之间直接建立通路,不再需要沿着 recurrent state 一步步搬运。但"允许直接交互"和"知道怎么交互"是两件事——architecture 把路打通了,到底是谁在决定走哪条路、读多少、读什么?
Sep 17, 2026 · 2540 words · 6 mins
最近在系统学习 Search 和 Information Retrieval 的知识。在看倒排索引(Inverted Index)的时候,我越看越觉得这个结构非常眼熟。直到我想起前段时间写 CS336 作业里 BPE(Byte-Pair Encoding)分词算法的优化逻辑,我才突然意识到:原来这些看似完全不同领域的系统,底层其实都在共享同一种 pattern。
Sep 16, 2026 · 4405 words · 9 mins
在 2022 年的年终总结里,我提过当时做的一个“动态算力”项目。那一年,我和另一位同事一起推进了这套系统,陆续接入腾讯新闻、QQ 音乐、全民 K 歌等业务,部分场景节省了约 30% 的成本。
Sep 15, 2026 · 2830 words · 6 mins
之前我负责过一个推荐系统深度学习 Serving 框架的功能开发与性能优化。
我们的系统主要跑在 CPU 上,以 TensorFlow 为主力 inference engine。随着模型迭代,尤其是 Embedding 层越来越大,模型导出、传输和上线变得非常慢,Serving 节点的内存成本也眼看着往上飙。
Sep 15, 2026 · 1572 words · 4 mins
之前在腾讯做过一个面向推荐场景的深度学习框架(内部叫「无量」),我当时负责其中 Serving 相关的工作。后来和朋友聊起,有人问我:把一个推荐模型部署上线,是不是就是加载模型文件,然后来一个请求做一次 forward?
Sep 14, 2026 · 4260 words · 9 mins
读书时记下的一张系统图 # 2024 年我读过 Rishi K. Narang 的《打开量化投资的黑箱》(Inside the Black Box)。书里把一个典型的量化交易系统拆成几个组成部分——Alpha Model、Risk Model、Transaction Cost Model、Portfolio Construction Model、Execution Model,底下还有 Data 和 Research。
Sep 14, 2026 · 6338 words · 13 mins
起因 # 三年前我参与维护过一个多人共享的训练集群。集群上跑着各业务线的训练任务,用户通过一个队列系统提交,每个用户有自己的资源 Quota。
Sep 13, 2026 · 4658 words · 10 mins
在Self-Attention 那篇里,去掉 recurrence 让不同位置可以并行计算。但顺序原本就编码在这条递推关系里;换成纯 self-attention 后,它由谁来表示?
我想先看清去掉了什么,再讨论怎么把位置信息加回来。
RNN 里的顺序存在哪 # 拿一个具体的 sequence 看:
Sep 13, 2026 · 5805 words · 12 mins
整理金融基础笔记时,我想弄清楚一句常见说法:20 倍 PE,是否就意味着买进去 20 年回本?按定义算出的倍数,和股东实际收到现金的时间,中间隔着哪些条件?
从一套房子说起 # 一套房子 200 万元,每年租金收入 10 万元,价格是年租金的 20 倍。如果直接用价格除以租金,就会得到“20 年回本”。