DAY 1 · S1 · 上午 90 分钟
分子的「数据类型」:蛋白质就是字符串
把抗体当成一个数据结构来理解,而不是当成生物。
U1.1蛋白质就是字符串
标准氨基酸只有 20 种,每种用一个大写字母表示。所以一个蛋白质可以完整地写成
DVQLQESGPGLVKPSQ...——这就是序列,是这个领域一切数据的基础形态。
字符串本身是「软」的:它会折叠成一个特定的三维形状,而形状决定功能。 两条序列只差几个字母,折出来的形状可能完全不同,功能也就完全不同。
序列(一维字符串)→ 折叠 → 结构(三维形状)→ 功能。 这条链路是整个结构生物学的主线,也是 AI 在这个领域切入的地方 (见 S5)。
X(未知残基)、B/Z(两种可能之一)等
模糊码。写校验时如果把字符集写死成 20 个字母,
真实数据会当场把你的断言打挂——而正确做法不是放宽断言,是把这些行标记出来。U1.2抗体:一个由 4 条链组成的复合对象
最常见的抗体(IgG 单体)长成 Y 形,由 2 条重链(长,heavy chain) + 2 条轻链(短,light chain)组成。 Y 的两个尖端负责识别目标,下半部分负责「抓到之后叫谁来处理」。
严格说「2+2」只对 IgG 这类单体成立: 分泌型 IgM 是五聚体、分泌型 IgA 常是二聚体。 做抗体数据时你遇到的绝大多数是 IgG 形态,但知道有例外, 比事后被人纠正要好。
# 抗体在数据里的最小可用表示
class Antibody:
VH: str # 重链可变区 —— 决定抓谁
VL: str # 轻链可变区 —— 决定抓谁
# 恒定区 CH / CL 通常不进模型:同类抗体几乎完全一样
它其实是两个来源不同的家族,别混为一谈: VHH(纳米抗体)来自骆驼科动物(羊驼、骆驼、美洲驼); VNAR 来自鲨鱼的 IgNAR,是独立演化出来的另一套东西。 「VHH 来自羊驼和鲨鱼」是一个流传很广的说法,它是错的。
工程上的影响:代码里判断「有没有轻链」时不能想当然,
if not vl: raise 会把一整类合法数据判死。
真实数据集里这一类的占比通常是个位数百分比,
刚好大到不能忽略、小到容易被忽略。U1.3可变区 vs 恒定区 = 实例字段 vs 类公共部分
所以做数据时要切掉恒定区,只留可变区——留着就是噪声, 还会让模型把注意力浪费在无区分度的部分上。 一份规范的数据集通常会同时给你切好的可变区和原始全长链,后者留着供复核。
U1.4CDR:真正干活的 6 个子串
可变区里也不是每个位置都重要。真正伸出去接触目标的是 6 个环,叫 CDR (complementarity-determining region,互补决定区): 重链 3 个(CDRH1/H2/H3)、轻链 3 个(CDRL1/L2/L3)。 其中 CDRH3 最关键——最长、变化最大,是特异性的主要来源。
剩下的部分叫框架区(framework),起支撑作用,序列上保守得多。 一个方便的心智模型:框架区是骨架,CDR 是可插拔的策略。
你现在应该能读懂这句话了:
「这条抗体的 VH 有 118 个残基,CDRH3 是 ARGSLV,我们按 CDRH3 做序列级去重。」
翻译:一个长 118 的字符串,其中一段关键子串是 ARGSLV,我们拿这段子串当去重键。
当堂自测
五道题。做错的回上面对应段落重看一遍,别急着往下。