Joint sequence–structure diffusion

Совместная диффузия sequence и structure. Established English term: Joint sequence–structure diffusion.

Что это за класс

Определение класса — общее для всех papers и tools с этим architecture_id. Это не карточка одной нейросети. После каждого нумерованного заголовка сначала идёт блок «Общее для класса», затем разбор конкретных статей, как раньше.

Совместная диффузия sequence и structure зашумляет и тип аминокислоты, и геометрию (Cα, ориентации, иногда side-chain) в одном generative process. Обратный ход выдаёт согласованную пару $(s,x)$, а не «сначала fold, потом ProteinMPNN».

Типичный forward факторизуют: $q(s_t\mid s_0)\,q(x_t\mid x_0)$, но сеть видит оба канала. Для антител часто зажимают framework и antigen, шумят только CDR.

Что на выходе. Совместный sample. Это всё ещё модель, не кристалл. DockQ / AAR / predicted ΔΔG — не SPR.

Чего класс не делает. Не few-shot AL. Не staged inverse folding. Не ESM3 masked LM. Chroma ближе к coordinate diffusion + design-net после backbone, даже если в каталоге у неё несколько architecture_id.

Каталог: DiffAb, AbDiffuser, BoltzGen. Соседние страницы — joint generation (надкласс) и frame diffusion (часто без discrete type-канала).

Ниже: общая joint-постановка, затем различия инструментов.

Joint sequence–structure diffusion — generator совместного state: один reverse DDPM/D3PM одновременно восстанавливает residue identity и геометрию (Cα+SO(3) или full-atom coords). Это не affinity scorer, не inverse folding при фиксированном $x$ и не staged pipeline frames→MPNN.

1. Область определения

Общее для класса

Этот пункт фиксирует роль класса в пайплайне и границу с соседями. Класс оперирует геометрией (координаты, frames, углы) или парой sequence+structure. Краткая seed-формула: «Одновременно зашумляются residue identity и геометрия. Denoiser восстанавливает оба, поэтому sequence сразу согласована с coordinates». Что метод выдаёт или оценивает: «Joint sequence–structure pair». Вход: «Noisy residue types + noisy coordinates/orientations + antigen context». Задачи каталога, которые класс закрывает: joint-cdr-sequence-structure-design; joint-sequence-structure-generation. Явно не для: single-mutation-proposal. Дальше по разделу — какие tools имеют этот architecture_id и какие постановки нельзя смешивать.

[INTERPRETATION]Роль в пайплайне — generator совместного discrete–continuous state. Один Markov reverse process обновляет residue identity и геометрию на каждом шаге $t$. Это не density model только последовательности, не sequential design loop (нет assay-round / UCB), не geometric inductive bias как отдельный класс (SE(3)-equivariant models — слой внутри denoiser), не scorer аффинности.

[PAPER]Generated state — пара $(s,g)$: $s$ — категориальные amino-acid tokens; $g$ — непрерывная геометрия. У DiffAb $g=(x,O)$ с $x\in\mathbb{R}^{3}$ (Cα) и $O\in\mathrm{SO}(3)$ (локальный кадр). У AbDiffuser $g=X^{\mathrm{pos}}\in\mathbb{R}^{n\times 3}$ (атомы, включая side-chain templates) при $X^{\mathrm{res}}\in\mathbb{R}^{r\times 21}$. Scored state на шаге $t$ — noisy $(s_t,g_t)$; выход сети — logits / $\varepsilon$ / $\hat g_0$, не $K_d$. Luo §3.1 (s,x,O); Martinkus §2 X^pos, X^res

[MATRIX]Задачи каталога, которые класс закрывает как joint generator: joint CDR sequence–structure, antigen-conditioned antibody, joint sequence–structure generation в смысле coupled sampling (не ESM3 MLM), target-conditioned binder только для BoltzGen как карточка — methods NR. Workflows: CDR co-design DiffAb; universal all-atom binder для BoltzGen. seed applicable_task_ids; tool task_ids

[INTERPRETATION]Это не joint sequence–structure generation как надкласс целиком: там же живут multimodal MLM (ESM3) и sequence-space RF diffusion. Данная страница — только диффузионный подтип с факторизованным forward $q(s)q(g)$ и общим reverse. Не приписывать ESM3 unmask как DDPM.

[INTERPRETATION]Это не coordinate diffusion: там train target — xyz (иногда polymer $\Sigma$); sequence либо отсутствует, либо ставится после backbone. DiffAb имеет Cα Gaussian канал, но объект генерации — type+Cα+orientation. Называть DiffAb «только coordinate diffusion» запрещено extra_constraints.

[INTERPRETATION]Это не frame diffusion и не staged RFantibody: frames→ProteinMPNN — два модуля. Здесь sequence tokens шумятся в том же reverse, что и геометрия. Это не inverse folding: $p(s\mid x)$ при зажатом $x$ — частный constrained режим DiffAb (fixbb.yml), не определение класса.

[INTERPRETATION]Это не sequence diffusion (токены без 3D в state) и не flow matching (interpolant/ODE без DDPM-шума как train target). Не переносить Lipman CFM, UCB, AR NLL, FAPE, MLM $\Delta\ell$ на эту страницу.

[MATRIX]Catalog tools с architecture_id: joint-sequence-structure-diffusion: DiffAb, AbDiffuser, BoltzGen. Часто путают с dyMEAN (iterative GNN, не DDPM), FlowDesign (FM), Chroma (coords затем design network), RFdiffusion (frames, sequence post-hoc). BoltzGen несёт также coordinate-diffusion в матрице — methods unread, не считать coords-only и не копировать DiffAb Eqs. 1–13.

2. Интуитивный принцип

Общее для класса

Общий механизм Joint sequence–structure diffusion: что меняется за один шаг inference и за счёт какого inductive bias метод может работать. «Одновременно зашумляются residue identity и геометрия. Denoiser восстанавливает оба, поэтому sequence сразу согласована с coordinates». Главный эмпирический рычаг класса — шум train, число шагов sampler, какие frames/coords зажаты; это не «магия одной статьи». Для Joint sequence–structure diffusion внутренние числа модели (likelihood, score, acquisition, pLDDT, DockQ, predicted $\Delta\Delta G$) не являются экспериментальным affinity / $K_d$ / ELISA / BLI, пока это явно не измерено вне сети. Абзацы ниже — как принцип формулируют конкретные papers, не определение всего класса.

[INTERPRETATION]Forward process портит оба канала: категориальный шум на identity и Gaussian (и, у DiffAb, IGSO(3)) на геометрию. Denoiser видит noisy $(s_t,g_t)$ плюс зажатый context $c$ (antigen + framework, или AHo-aligned full Fv) и предсказывает cleaner posterior. При inference меняется совместный state: на каждом шаге обновляются и токены, и coords/frames. Это не «сначала складка, потом IF».

[PAPER]Главный эмпирический рычаг DiffAb — clamp context $C$: antigen coords и antibody framework не диффундируют; generate mask только на CDR. Без bound complex модель не стартует (кроме HDOCK-инициализации, которая сама docking — evaluator/external). Рычаг PAPER: Luo Fig. 2 / §3.1. Luo §3.1 C vs R; Fig. 2

[PAPER]Главный рычаг AbDiffuser — informative priors на aligned family: AHo numbering ($2\times 149$), position-specific categorical $Q^{i}$, и GMRF covariance $\Sigma$ на атомах. Paper явно: Wasserstein bound (Theorem E.1 pointer) — плохой prior увеличивает сложность denoiser. Это PAPER, не UCB. Martinkus §4; Theorem E.1 pointer

[PAPER]Второй рычаг AbDiffuser — projection на idealized bonds (Kabsch backbone; generic 4-atom side chain) вместо diffusion в torsion space. Ablation «no projection»: RMSD 11.14 Å vs 0.52 Å на pOAS (Table 1) — tool-specific, не класс. Martinkus §3.4; Table 1 no projection

[PAPER]DiffAb поддерживает частичный noise: optimize() / §4.3 — forward $t$ шагов от native CDR, затем reverse. Это constrained sampling того же DPM, не отдельный affinity head. При $t=T=100$ совпадает с de novo. Luo §4.3; Table 4 t vs T=100

[PAPER]Предостережение по метрикам этого класса. DiffAb IMP / Rosetta InterfaceAnalyzer $\Delta G$ — evaluator, тот же energy, который RAbD оптимизирует явно; Luo: «RAbD optimizes the Rosetta energy function, which is also used for evaluation». Это не $K_d$, ELISA, BLI. AAR и Cα RMSD к native CDR — recovery/diversity, не binding. Luo §4.1 metrics; paragraph after Table 1

[PAPER]AbDiffuser: $W_1(\Delta G)$ Rosetta, RMSD к IgFold, AntiBERTy naturalness, $p_{\mathrm{bind}}$ APMixer-классификатора (87.8% accuracy на 3000 test) — in silico. SPR pKD §5.3 — experiment на 16 HER2 designs, не выход $\phi(X_t,t)$. Не переносить 57.1% filtered binders на DiffAb или BoltzGen. Martinkus §5.1–5.3; classifier 87.8%

[PAPER]Промежуточный $(s_t,x_t)$ / masked token / embedding не физическая траектория фолдинга и не энергия. Side-chain packing / OpenMM AMBER99 / Rosetta relax у DiffAb — post-hoc, после $t=0$ (Luo §3.4). Luo §3.4 packing + OpenMM

3. Формальная математическая постановка

Общее для класса

Сначала родовая математика класса (что оптимизируют / что семплируют), общая для реализаций с этим id. Seed-запись: «Факторизованный forward process $q(s_t,x_t\mid s_0,x_0)=q(s_t\mid s_0)q(x_t\mid x_0)$; denoiser $p_\theta(s_{t-1},x_{t-1}\mid s_t,x_t,c)$». Подтипы имеют отдельные уравнения: нельзя переносить diffusion score, UCB, AR NLL, FAPE или MLM $\Delta\ell$ на эту страницу, если это не её train target. Формулы с пометкой tool-specific относятся к одному инструменту. Ниже — разбор papers по подтипам.

[INTERPRETATION]Сначала родовая факторизация класса: forward независимо по identity и геометрии, reverse совместный. Затем подтипы: (i) DiffAb type+Cα+SO(3); (ii) AbDiffuser full-atom Gaussian + D3PM residues (без отдельного SO(3)-канала); (iii) BoltzGen — NR. Не писать одну «универсальную» формулу с $O\in\mathrm{SO}(3)$ на AbDiffuser.

[INTERPRETATION]Формулы, которые не являются уравнениями default-инструмента класса и не train target страницы: Lipman CFM; FrameDiff IGSO(3) как единственный state (здесь SO(3) — канал DiffAb, не вся постановка); UCB; AR NLL; FAPE predictor; MLM $\Delta\ell$; ProteinMPNN CE при фиксированном $x$; seed one-liner $p_\theta(s_{t-1},x_{t-1}\mid s_t,x_t,c)$ как «уравнение BoltzGen».

[CODE]DiffAb paper Eq. 12 — Frobenius $\|O_0^{\top}\hat O-I\|_F^{2}$; released CODE использует cosine_embedding_loss на столбцах $R$. Не отождествлять без оговорки. Paper §3.3 называет IPA; CODE — GAEncoder/GABlock (node + pair + spatial point logits). Не утверждать bit-identity с AF2 IPA. dpm_full.py rotation_matrix_cosine_loss; ga.py GABlock

[INTERPRETATION]Не сравнивать DiffAb Table 1 (SAbDab 19 complexes, Rosetta $\Delta G$), AbDiffuser Table 3 ($p_{\mathrm{bind}}$ на Mason HER2) и BoltzGen preprint campaigns как один benchmark: generated object, oracle и split разные.

$$q(s_t,g_t\mid s_0,g_0)=q(s_t\mid s_0)\,q(g_t\mid g_0),\qquad p_\theta(s_{t-1},g_{t-1}\mid s_t,g_t,c)$$
[INTERPRETATION] generic. Родовая постановка класса: факторизованный forward по identity $s$ и геометрии $g$; reverse — один совместный kernel, conditioned on $c$. Generic: не checkpoint DiffAb и не AbDiffuser. $g$ подтип-специфичен (Cα+SO(3) vs atoms).
СимволТипОпределение
$s_t$categorical / one-hotnoisy residue types на шаге t
$g_t$geometry (подтип)noisy Cα+R или atom coords
$c$conditionerclamped context: antigen/framework или aligned Fv; не ELISA tensor
$\theta$paramsвеса совместного denoiser

Оптимизируется denoising evidence на $(s,g)$. Семплируется совместная траектория. Affinity labels в формулу не входят.

[INTERPRETATION]
ПостановкаTrain targetSampler/декодерЧто в каталоге
Joint seq–struct diffusion (эта страница)факторизованный discrete + geometry denoising в одном reverseT ancestral steps; clamp contextDiffAb (канон); AbDiffuser; BoltzGen family (math NR)
Coordinate diffusionε / x0 / score на xyz (± polymer Σ)DDPM/SDE на точках; sequence отдельно или отсутствуетChroma; Cα-канал DiffAb только как канал
Frame diffusionscore на SE(3) framesIGSO(3)+Brownian; sequence post-hoc IFRFdiffusion / FrameDiff; не joint tokens
Sequence diffusionD3PM/CE на токенах без 3D stateT discrete steps; motif clampEvoDiff / HuDiff lineage
Inverse foldingCE $p(s\mid x)$ при фиксированном $x$AR или masked decoderProteinMPNN; DiffAb fixbb — режим, не класс
Flow matchingCFM vector field / interpolantODE integrationFlowDesign; не DDPM DiffAb

Подтип A — type + Cα + SO(3) (DiffAb; Luo; catalog default)

[PAPER]Amino acid $i$: $s_i\in\{A\ldots Y\}$, $x_i\in\mathbb{R}^{3}$ (Cα), $O_i\in\mathrm{SO}(3)$. CDR $R=\{(s_j,x_j,O_j)\}_{j=l+1}^{l+m}$; context $C$ — остальные residues комплекса. Цель: $p(R\mid C)$. Tool-specific DiffAb, не уравнение AbDiffuser. Luo §3.1

$$q(s^t_j\mid s^{t-1}_j)=\mathrm{Mult}\bigl((1-\beta^t_{\mathrm{type}})\,\mathrm{onehot}(s^{t-1}_j)+\beta^t_{\mathrm{type}}\tfrac{1}{20}\mathbf{1}\bigr)$$
[PAPER] DiffAb type channel [PAPER]; tool-specific. Forward multinomial на типах (Hoogeboom). Luo Eq. 1. Не Austin $Q$ с AHo-specific prior.
СимволТипОпределение
$\beta^t_{type}$scalarвероятность resample uniform over 20 AA
$s^t_j$AA typeтип residue j на шаге t

Зашумляется identity. Train target канала — KL к posterior Eq. 4, не CE affinity.

$$q(x^t_j\mid x^0_j)=\mathcal{N}\bigl(\sqrt{\bar\alpha^t_{\mathrm{pos}}}\,x^0_j,\,(1-\bar\alpha^t_{\mathrm{pos}})I\bigr),\quad \mathcal{L}^t_{\mathrm{pos}}=\mathbb{E}\tfrac{1}{m}\sum_j\|\varepsilon_j-G(R^t,C)[j]\|^2$$
[PAPER] DiffAb position channel [PAPER+CODE]. VP-Gaussian на нормированных Cα; noise-prediction MSE (Ho). Luo Eqs. 5–9. CODE: position_scale 10 Å.
СимволТипОпределение
$x_j$R^3нормированная Cα
$G$NNε-head; local-frame MLP затем O_j ε̂
$m$intдлина designed CDR

Оптимизируется ε на Cα. Не Chroma polymer Σ.

$$q(O^t_j\mid O^0_j)=\mathrm{IGSO}(3)\bigl(\mathrm{ScaleRot}(\sqrt{\bar\alpha^t_{\mathrm{ori}}},O^0_j),\,1-\bar\alpha^t_{\mathrm{ori}}\bigr)$$
[PAPER] DiffAb orientation [PAPER]. Ориентации: isotropic Gaussian on SO(3) (Leach). Luo: «we do not use the term diffusion» строго. Eq. 10. Не FrameDiff как страница.
СимволТипОпределение
$O_j$SO(3)локальный кадр residue (side-chain orientation)
$\mathrm{IGSO}(3)$density on SO(3)isotropic Gaussian on rotations

Семплируется ориентация кадра. Не torsion diffusion.

$$\mathcal{L}=\mathbb{E}_{t\sim U\{1\ldots T\}}\bigl[\mathcal{L}^t_{\mathrm{type}}+\mathcal{L}^t_{\mathrm{pos}}+\mathcal{L}^t_{\mathrm{ori}}\bigr]$$
[PAPER] DiffAb train objective [PAPER+CODE]. Сумма KL types (Eq. 4) + ε-MSE pos (Eq. 9) + Frobenius ori (Eq. 12). Luo Eq. 13. CODE weights rot/pos/seq все 1.0. $T=100$ (Table 4; config num_steps). Affinity labels нет.
СимволТипОпределение
$T$intчисло diffusion steps; 100 в paper/config
$\mathcal{L}_{type}$scalarожидаемый KL multinomial posterior vs F(·)

Оптимизируются три denoising канала. Не IMP/ΔG в loss.

Подтип B — full-atom coords + categorical residues (AbDiffuser; не SO(3) DPM)

[PAPER]Состояние: $X^{\mathrm{pos}}\in\mathbb{R}^{n\times 3}$ атомы антитела; $X^{\mathrm{res}}\in\mathbb{R}^{r\times 21}$ one-hot (20 AA + gap). Reverse joint: $(\hat X_0^{\mathrm{pos}},\hat X_0^{\mathrm{res}})=\phi(X^{\mathrm{pos}}_t,X^{\mathrm{res}}_t,t)$. Equivariance — frame averaging (Puny), не local-frame ε DiffAb. Official code NR. Martinkus §2; Eqs. 1–2

$$q(X_t\mid X_{t-1})=q(X^{\mathrm{pos}}_t\mid X^{\mathrm{pos}}_{t-1})\,q(X^{\mathrm{res}}_t\mid X^{\mathrm{res}}_{t-1})$$
[PAPER] AbDiffuser [PAPER]; tool-specific. Факторизация AbDiffuser: Gaussian атомы × categorical residues. Нет третьего IGSO(3)-канала. Не Luo Eq. 13.
СимволТипОпределение
$X^{pos}$R^{n×3}атомные координаты (после projection)
$X^{res}$R^{r×21}one-hot типы + gap

Семплируется full-atom Fv (+ optional side chains). Не CDR-only mask DiffAb как определение.

$$q(X^{\mathrm{pos}}_t\mid X^{\mathrm{pos}}_0)=\mathcal{N}(\alpha_t X^{\mathrm{pos}}_0,\,\sigma_t^2\Sigma),\quad \mathcal{L}_t(X^{\mathrm{pos}}_0)=\tfrac12\,\mathrm{SNR}(t)\,\|\hat X^{\mathrm{pos}}_0-X^{\mathrm{pos}}_0\|_{\Sigma^{-1}}^2$$
[PAPER] AbDiffuser position [PAPER]. Коррелированный VP с GMRF $\Sigma$; train — reweighted $x_0$-prediction (App. B.2 Eq. 4), не Ho ε-MSE DiffAb. $T=1000$, cosine-like Hoogeboom (App. H).
СимволТипОпределение
$\Sigma$covGMRF covariance; precision L+aI от learned adjacency
$\mathrm{SNR}(t)$scalar(α_t/σ_t)^2
$T$int1000 denoising steps

Оптимизируется reconstruction атомов в метрике $\Sigma^{-1}$. Не FAPE.

$$q(X^{\mathrm{res}}_t\mid X^{\mathrm{res}}_0)=\mathrm{Cat}(X^{\mathrm{res}}_0 Q_t),\; Q_t=\beta_t I+(1-\beta_t)Q^{i},\quad \mathcal{L}_t(X^{\mathrm{res}}_0)=-\beta_t\log p_\theta(X^{\mathrm{res}}_0\mid X^{\mathrm{res}}_t)$$
[PAPER] AbDiffuser discrete [PAPER]. Austin D3PM; $Q^{i}$ — AHo position-specific frequencies (включая gaps). Simplified CE (App. B.3). Не Luo multinomial uniform 1/20 как prior класса.
СимволТипОпределение
$Q^i$21-simplexмаргиналь типа на AHo-позиции i=1…298
$\beta_t$scalarв loss discrete: α_t^2, тот же schedule что pos

Оптимизируется предсказание чистых типов. Не SPR labels в diffusion loss (классификатор $p_{bind}$ — отдельная сеть §5.2).

Подтип C — BoltzGen all-atom family (methods NR)

NRКарточка BoltzGen несёт этот architecture_id и формулировку «all-atom generative diffusion unified with folding». Уравнения noising, $T$, factorization sequence vs coords — NR. Не подставлять Luo Eqs. 1–13 и не подставлять AbDiffuser $\Sigma$/AHo. Не FM, пока Methods не прочитаны. extra_constraints; inaccessible BoltzGen Methods

4. Представление данных

Общее для класса

Класс читает «Noisy residue types + noisy coordinates/orientations + antigen context». Нужно отличать тензор сети (координаты / frames / torsions, time, masks, иногда discrete type-канал) от внешнего файла (PDB, contig, hotspot, antigen chain). Размерности и аугментации без paper/code остаются NR. Дальше — как это кодируют конкретные реализации.

[CODE]Узлы DiffAb: residues комплекса (antibody + antigen) после merge_chains. Designed vs context — mask_generate / generate_flag, не отдельный graph. Pair tensor pair_feat $(N,L,L,d_{\mathrm{pair}})$ — полный patch, не kNN как обязательный класс. EpsilonNet.forward pair_feat; codesign_single.yml

[CODE]Train config DiffAb: res_feat_dim: 128, pair_feat_dim: 64, num_layers: 6, num_steps: 100. Embedding текущей noisy sequence: nn.Embedding(25, res_feat_dim) (комментарий: 22 padding). Не выдумывать иные hidden sizes paper (IPA widths в PDF не таблицей). codesign_single.yml; EpsilonNet.__init__

[CODE]Геометрия DiffAb: $v$ SO(3)-vector $(N,L,3)$, $p$ Cα $(N,L,3)$ после _normalize_position (mean 0, scale 10 Å), $s$ Long $(N,L)$. Кадры construct_3d_basis(CA, C, N) в encode(). Time: $t_{\mathrm{embed}}=(\beta,\sin\beta,\cos\beta)$ к residue features. diffab.py encode(); dpm_full.py t_embed

[CODE]Внешние файлы vs вход сети: PDB комплекса, Chothia numbering в chothia_dir, SAbDab summary TSV — препроцессинг. Contig RFdiffusion нет. Library CSV / DMS нет как вход generator. CDR mask — transform mask_single_cdr / patch_around_anchor. codesign_single.yml dataset.train

[PAPER]Paper embeddings: single $e_i$ кодирует types, torsional angles, heavy-atom coords; pairwise $z_{ij}$ — distances и dihedrals (Luo §3.3). Точные dim $e_i$ в PDF — NR сверх CODE 128/64. Luo §3.3 embeddings

[PAPER]AbDiffuser: фиксированная матрица $X\in\mathbb{R}^{r\times c}$ с $r=2\times 149$ (heavy+light AHo), $c=21+4\times 3$ (типы + C,Cα,N,Cβ). Ghost gaps — линейная интерполяция атомов соседних residues. Side-chain path добавляет generic 4-atom template. Размер APMixer $h=1920$, 8 blocks — PAPER App. M.1. Martinkus §3.2–3.3; App. M.1 h=1920

[PAPER]AbDiffuser conditioner для SAbDab CDR redesign (App. N): bipartite graph CDR–antigen residues с $C_\beta$–$C_\beta\le 10$ Å, затем one-layer FA-GNN вместо initial MLP. Это tool-specific, не default DiffAb pair IPA-style encoder. App. N 10 Å Cβ

[CODE]Аугментации, меняющие геометрию/токены: DiffAb — random $t$, независимый шум на generate mask; context zero-out при flags train_structure/train_sequence (CODE forward). Global rotation: сеть должна быть equivariant (Prop. 1), отдельный random-rot augment в просмотренном FullDPM.forward не виден — NR. AbDiffuser: projection на каждом шаге меняет coords к idealized bonds. FullDPM.forward denoise_structure/sequence flags

NRBoltzGen design-specification language / residue masks — pointer catalog YAML, тензорные dims NR.

5. Физическое представление

Общее для класса

Математический объект класса соответствует такому физическому state: «Joint sequence–structure pair». Перестановка residues, склейка цепей и глобальный поворот ломают разные инварианты — это свойство представления. Промежуточный noisy state ≠ MD-траектория и ≠ энергия. Side chains либо в state, либо pack post-hoc, либо отсутствуют. Ниже papers фиксируют, какой вариант они выбрали.

[PAPER]Математический $s$ ↔ однобуквенный код аминокислоты (20 типов DiffAb; 20+gap AbDiffuser). $x$ DiffAb ↔ Cα в Å после unnormalize. $O$ ↔ ориентация локального кадра, из которой восстанавливают N,Cα,C,O,Cβ по idealized local coords (Engh & Huber, Luo §3.4). Полные side chains — Rosetta pack после генерации, не в DPM state. Luo §3.4 five atoms then packing

[PAPER]AbDiffuser $X^{\mathrm{pos}}$ ↔ атомы в глобальном кадре с projection: backbone RMSE к original $\sim 5\cdot 10^{-3}$ Å; C–O distance 1.231 Å; generic side-chain C–C 1.54 Å. Recovery full-atom: dihedrals с template → idealized AA-specific side chain. Это constraining layer, не MD. Martinkus §3.4

[PAPER]SE(3): класс equivariant by construction на подтипах, но механизм разный. DiffAb Prop. 1: $F$ invariant, $G$ и $H$ equivariant к $(R,r)\in\mathrm{SE}(3)$; реализация — $\hat\varepsilon_j=O^t_j\,\mathrm{MLP}_G(h_j)$ и $R_{\mathrm{next}}=R U$. AbDiffuser: PCA frames $\mathcal{F}(X^{\mathrm{pos}})$, four frames, chirality via right-hand rule (не E(3)). BoltzGen equivariance — NR. Luo Prop. 1 Eqs. 14–16; Martinkus Eqs. 1–2

[PAPER]Перестановка residues ломает pair indices и AHo позиции; это не permutation-invariant set, а цепь/alignment. Chain concat DiffAb: $N$ — сумма длин цепей комплекса (footnote 3). Global rotation: без equivariant denoiser prior на абсолютных xyz не инвариантен; DiffAb centering+local ε; AbDiffuser frame averaging. Luo footnote 3; Martinkus §3.1

[PAPER]Side chains: DiffAb — отсутствуют в diffusion state; post-hoc pack. AbDiffuser — в state (generic 4 atoms) в варианте «side chains»; backbone-only вариант тоже обучался (Table 1). Не путать с LigandMPNN после RFdiffusion. Luo §3.4; Martinkus Table 1 side chains row

[PAPER]Assay label $y$ (SPR pKD, phage) не координата state. Mason binder/non-binder used to train отдельный APMixer classifier, не $\phi$ diffusion (кроме того, что generative модель училась только на binders). DiffAb loss не содержит $\Delta G$. Martinkus §5.2 train binders only; Luo Eq. 13

[PAPER]Промежуточный $x_t$ / noisy AA не folding trajectory и не энергия. OpenMM AMBER99 refine и Rosetta InterfaceAnalyzer — внешняя физика после генератора. Luo §3.4 OpenMM; §4.1 InterfaceAnalyzer

[PAPER]Antigen hotspot как явный epitope tensor: у DiffAb — геометрические edges ко всем antigen residues в patch, не отдельный ELISA-conditioned embedding. AbDiffuser pOAS generation — без antigen; HER2 — distribution of binders, не co-crystal clamp (кроме App. N). Luo §3.1 antigen in C; Martinkus §5.1 pOAS vs §5.2 HER2

6. Физико-химический смысл

Общее для класса

Какие физико-химические оси класс вообще может «видеть». Этот класс — backbone / frames / атомы в том разрешении, которое есть в state; не автоматически $\Delta G$. H-bonds, электростатика, растворитель, энтропия и experimental affinity отсутствуют, пока нет явной energy / assay головы: модель тогда не считает $\Delta G$. Таблица ниже — как конкретные методы кодируют эти оси; строка про один tool не обобщается на класс.

[INTERPRETATION]Нет energy head: ни DiffAb, ни прочитанный AbDiffuser diffusion $\phi$ не регрессируют $\Delta G$. Rosetta/Amber — post-hoc evaluators. Запрещено писать, что класс «считает $\Delta G$».

Признак или операция моделиФизико-химическая интерпретацияПрямо / косвенно / внешнеВажное ограничение
Identity AAхимический тип residue (и gap у AbDiffuser)прямо, 20-way (DiffAb) / 21-way (AbDiffuser)нет partial charge; AHo $Q^i$ — частота, не энергия
Backbone / frames / Cαpeptide kinematics; ориентация side-chain stubпрямо: Cα+SO(3) (DiffAb) или projected C,Cα,N,Cβ (AbDiffuser)ω-cis и MD не в DPM; idealized bonds
Antigen / hotspot coordsстерический context интерфейсапрямо как clamped nodes/pairs (DiffAb C); App. N 10 Å graph (AbDiffuser CDR task)не epitope tensor ELISA; HDOCK pose ≠ crystal
H-bonds / electrostatics / solvation / entropyмогут коррелировать со статистикой SAbDab/pOASне представлены явно в lossRosetta ΔG / packing score — evaluator, не train target
Evolutionary statisticsсемейные частоты Ig (AHo $Q^i$); SAbDab structural homologsAbDiffuser — прямо как discrete prior; DiffAb — только через данные, uniform 1/20 noiseне MSA PLM; не ESM Δℓ
Experimental y (SPR / expression)измеренная функцияне в diffusion loss; AbDiffuser §5.3 post-hoc assay; DiffAb нет wet-labp_bind классификатора ≠ pKD; 16 designs ≠ класс
Side-chain rotamersχ-angles / packingAbDiffuser generic 4-atom + template; DiffAb Rosetta pack post-hocpacking score 0.624 vs 0.666 (Martinkus pOAS) — in silico

7. Что обучается

Общее для класса

Общий train target класса: «Sum of discrete CE and continuous coordinate/frame losses». Нужно назвать, какие модули обучаются, какие frozen (PLM, MSA, RoseTTAFold trunk), и есть ли в loss negative / non-binder / affinity labels. Если в постановке класса labels нет — ответ «нет», даже если кто-то доучивает голову в приложении. Fine-tune vs pretrain различается объектом (PDB identities, SAbDab, assay $y$), не маркетингом. Детали сплитов — в подразделах papers.

[CODE]Параметры $\theta$ совместного denoiser. DiffAb: Residue/Pair embeddings + GAEncoder + головы eps_crd_net, eps_rot_net, eps_seq_net и current_sequence_embedding. Frozen modules в FullDPM нет. Surrogate $\phi$ affinity нет. EpsilonNet; FullDPM

[CODE]DiffAb loss: CODE loss_dict rot cosine / pos MSE-on-ε / seq KL(posterior(s_noisy,s_0) vs posterior(s_noisy,c_denoised)). Совпадает по роли с Luo Eqs. 4, 9, 12–13, но ori-метрика в CODE — cosine embedding, не Frobenius Eq. 12. Negative / non-binder / contrastive / affinity labels в loss нет. FullDPM.forward loss_rot/pos/seq

[PAPER]AbDiffuser $\theta$: APMixer 8 blocks, $h=1920$, 169M params (Table 2). Frame averaging на каждом block. Readout: отдельный MLP позиций (equivariant Eq. 1) и типов (invariant Eq. 2). Projection layer non-parametric. Official weights SHA — NR. App. M.1; Table 2 169M

[PAPER]AbDiffuser diffusion loss: SNR-weighted $x_0$ pos (Eq. 4 App. B.2) + $\beta_t$-weighted CE types (App. B.3). HER2 classifier — другая сеть, CE/accuracy на binder vs non-binder, 100 epochs, batch 16; не входит в $\mathcal{L}$ генератора. App. M.4 classifier; §5.2 87.8%

[CODE]Pretrain vs fine-tune DiffAb: один train на SAbDab-like complexes, 200 000 iters, Adam $10^{-4}$, batch 16 (CODE). Отдельный antigen fine-tune в PDF не описан. AbDiffuser: отдельные runs pOAS (50 epochs) vs HER2 binders (600 epochs), ~1.25M steps; не «pretrain PLM». codesign_single.yml max_iters 200000; Martinkus App. M.3

NRBoltzGen $\theta$ / frozen folding head — NR. Не заполнять FAPE как joint diffusion loss.

[CODE]Self-conditioning в просмотренном DiffAb sample() нет (цикл t=T…1 вызывает eps_net от текущего noisy state). Teacher forcing AR нет. Time-sampling: uniform $t$ (Luo Eq. 13; CODE randint(0,num_steps)). FullDPM.forward t=None randint; sample() loop

[DOC]Класс не учит docking score. HDOCK — внешняя программа (README optional). Не путать с train target. README Optional HDOCK

[PAPER]Fine-tune DiffAb на assay $y$ в primary paper нет. AbDiffuser generative train на Mason binders — sequence/structure distribution, не SPR pKD в loss. Luo §5 no wet-lab; Martinkus §5.2 binders only

8. Прямой проход и information flow

Общее для класса

Прямой проход класса: шум или частичная структура → denoiser / decoder → coords/frames → часто отдельный inverse folding, pack, AF. Чужие блоки (pack, AlphaFold, docking, ELISA) нельзя прятать внутрь «одной сети». Схема ниже, если есть, — оригинал по прочитанным источникам, не копипаст figure. Затем — где у tools generator, а где evaluator.

[CODE]Порядок DiffAb (CODE): encode context embeddings → независимый add_noise rot/pos/seq на mask_generate → mix noisy $s_t$ в res_feat → GAEncoder(R,p_t,res_feat,pair_feat) → три MLP головы с $t_{\mathrm{embed}}$ → apply_rotation_to_vector(R,eps_crd) → $R_{\mathrm{next}}=R U$ из quaternion → categorical posterior. Sequence logits invariant; ε позиции equivariant. EpsilonNet.forward; FullDPM.forward

[CODE]Где появляется sequence vs geometry vs score: sequence — Embedding($s_t$) на каждом шаге и 20-softmax; geometry — $p_t,R_t$ в encoder и heads; score аффинности — нигде в сети. Rosetta/OpenMM после t=0. eps_seq_net Softmax 20

[DOC]Не прятать packing / AF / HDOCK внутрь EpsilonNet. README: HDOCK для antigen-only; PyRosetta relax — optional. Это evaluator / external docking, не generator. README Optional HDOCK / PyRosetta

[PAPER]AbDiffuser forward (PAPER): projection → embed types+atoms → APMixer row/column MLPs with per-block frame averaging → split equivariant/invariant halves → $x_0$ pos head + type head → projection. Pairwise contacts implicit (memory linear). Antigen в pOAS path отсутствует. §3.3; App. I Algorithms pointer

[PAPER]AbDiffuser in vitro path: generate → in silico filters (naturalness, RMSD, …) + classifier $p_{\mathrm{bind}}$ → experiment SPR. Классификатор и SPR не модули reverse diffusion. §5.3 Fig. 2 raw vs filtered

[MATRIX]BoltzGen: catalog «unified folding/ranking» — evaluator внутри карточки; отделять от unread generator. Не рисовать AF2 внутрь DiffAb.

[CODE]DiffAb optimize(): сначала add_noise на opt_step, затем denoise вниз до 0 — тот же eps_net, не второй моделью. FullDPM.optimize

[INTERPRETATION]IPA в paper vs GAEncoder в CODE: оба orientation-aware attention на frames; bit-level совпадение с Jumper IPA NR. Не называть слой «AlphaFold2». Luo §3.3 IPA; ga.py GABlock

flowchart TD
  PDB["PDB complex / AHo Fv / design spec"] --> CTX["Clamped context c — not generated"]
  CTX --> EMB["Residue/pair or APMixer embed"]
  PRI["Prior: uniform 20 / AHo Q^i / GMRF Σ / NR BoltzGen"] --> NOISE["Forward: noisy s_t and g_t"]
  NOISE --> DEN["Joint denoiser θ"]
  EMB --> DEN
  DEN --> SEQ["Sequence posterior / type head — generator"]
  DEN --> GEO["ε or x0 geometry head — generator"]
  SEQ --> STEP["Transition t-1"]
  GEO --> STEP
  STEP --> DEN
  STEP --> PACK["Pack / OpenMM / IgFold / Rosetta ΔG — evaluator"]
  PACK --> FILT["Optional p_bind classifier — evaluator"]
  FILT --> ASSAY["SPR / expression — experiment"]
  HD["HDOCK pose — docking, not neural reverse"] --> CTX
  subgraph gen ["Generator"]
    DEN
    SEQ
    GEO
    STEP
  end
  subgraph ev ["Evaluator / external"]
    PACK
    FILT
    HD
  end
  subgraph ex ["Experiment"]
    ASSAY
  end
Оригинальная схема класса по Luo §§3.2–3.4 и Martinkus §§2–5, не копия Fig. 3. Generator, evaluator и experiment разведены. BoltzGen internals NR. Источник схемы: Luo Fig. 3 prose; FullDPM.sample; Martinkus §2 factorization; §5.3 assay

9. Training procedure

Общее для класса

У класса нет единого корпуса. Типичные данные: структуры PDB / SAbDab / complexes; фильтры resolution и redundancy — у реализации, не у класса. Split и leakage — свойства датасета реализации. Не выводить split из README. Не смешивать in silico designability с prospective wet-lab. Ниже каждый paper описывает свой корпус; нет цифры = NR.

[INTERPRETATION]Единого split класса нет. Не выводить split BoltzGen из README. DiffAb и AbDiffuser — разные корпуса и oracles.

[PAPER]DiffAb: SAbDab [Dunbar 2014]. Фильтры: resolution хуже 4 Å удалены; non-protein antigens discarded. Кластеризация по CDR-H3 identity 50%. Test: вручную пять кластеров, 19 antibody–antigen complexes (SARS-CoV-2, MERS, influenza, …). Остальные кластеры — train. Число train structures в PDF — NR. Luo §4.1 dataset paragraph

[PAPER]Leakage: clustering только по H3; Luo §4.2 сам отмечает, что другие CDRs test set могли встречаться в train («we believe this is not an issue as CDRs other than H3 are generally conserved»). Не аудировать структурные homologs здесь. Luo §4.2 Admittedly clustering

[CODE]CODE train: dataset type sabdab, mask_single_cdr, merge_chains, patch_around_anchor; 200 000 iters; batch 16; Adam 1e-4; seed 2022. Val: mask_single_cdr selection CDR3. Соотношение paper 19-complex test vs processed split: train/val files — точные counts processed — NR без повторного подсчёта данных. codesign_single.yml

[PAPER]Симуляция vs wet-lab DiffAb: IMP/RMSD/AAR после OpenMM+Rosetta — in silico. Prospective wet-lab в NeurIPS нет (§5: «unclear whether generated antibodies can be produced… and actually binds»). Luo §5

[PAPER]AbDiffuser pOAS: 105k paired OAS folded IgFold + Rosetta; split 1000 test + 1000 val. Metrics $W_1$ к test (n=1000 generated). Это distribution matching, не binding assay. Martinkus §5.1 105k; App. M.3 split

[PAPER]AbDiffuser HER2: Mason et al. 2021 Trastuzumab CDR-H3; after dedup 9k binders + 25k non-binders; generator только binders; 1000 test / 100 val for generative metrics. Classifier split: 3000 test / 1000 val. High-throughput assay noisy — PAPER; не SPR train labels. §5.2 9k/25k; App. M.3–M.4

[PAPER]AbDiffuser App. N: split Luo et al. 2022 SAbDab; >50% CDR-H3 identity removed from train; 19 test structures; 100 samples; all CDRs at once (не single-CDR DiffAb *). Не смешивать Table 9 AAR с Luo Table 1 как один протокол. App. N; Table 9 footnote *

NRBoltzGen train corpus / split — NR. Не выводить из catalog evidence_level.

10. Inference and generation

Общее для класса

Общий inference класса: «Shared reverse trajectory; framework residues may be clamped». Старт — шум / partial structure / contig. Pack / relax / AF / likelihood rerank помечаются как evaluator, не generator. Чего в классе нет (beam, recycle, assay-in-the-loop), пока tool явно не добавляет, — тоже общее свойство. Число шагов $T$, temperature, $k$ — tool-specific, если не оговорено.

[PAPER]Старт DiffAb: на mask_generate — $s^T\sim\mathrm{Uniform}(20)$, $x^T\sim\mathcal{N}(0,I_3)$ в нормированных coords, $O^T\sim\mathrm{Uniform}(\mathrm{SO}(3))$; context clamped. CODE: random_uniform_so3, torch.randn_like(p), randint(0,19). Luo §3.4 Sampling; dpm_full.py sample()

[CODE]Алгоритм: ancestral reverse $t=T\ldots 1$, $T=100$. Не ODE Chroma, не beam LM, не AF recycle. Temperature softmax / top-k в FullDPM.sample не видны. trans_pos.denoise добавляет $\sigma z$ для $t>1$ (CODE). sample() range(num_steps,0,-1); PositionTransition.denoise

[DOC]Режимы README (tool-specific): codesign_single / codesign_multicdrs; abopt_singlecdr (optimize); fixbb (только sequence); strpred (только structure). Длина CDR в §4.1 фиксируется равной native «for simplicity»; на практике «enumerate different lengths» — без численного протокола в PDF. README 5 design modes; Luo §4.1 length

[PAPER]Post-hoc DiffAb: idealized N,Cα,C,O,Cβ → Rosetta side-chain packing → OpenMM AMBER99 refine. Evaluator/relax, не EpsilonNet. HDOCK — старт для §4.4, не neural generator. Luo §3.4; §4.4 HDOCK

[PAPER]AbDiffuser: $T=1000$; cosine-like $\alpha_t$ App. H; Gaussian temperature $\tau$ масштабирует variance reverse (App. B.2); discrete $\tau$ — softmax temperature (App. B.3). Table 3: $\tau=0.75$ и $0.01$ — uniqueness 100% → 91.4% (side-chain $\tau=0.01$). Не default DiffAb. App. H; Table 3 τ rows

[PAPER]AbDiffuser не требует CDR length a priori: gaps в AHo позволяют variable length. DiffAb задаёт $m$. Martinkus §3.2; Luo §3.1 m

NRЧего в классе нет как канон: beam search; AlphaFold recycle; ELISA-in-the-loop; classifier-free affinity guidance (не заявлено в Luo/Martinkus main methods). AbDiffuser CFG — NR.

NRBoltzGen sampler (ODE vs DDPM, T, top-k) — NR. Catalog sampling_procedure null.

11. Conditioning

Общее для класса

Что класс умеет зажимать по постановке: «Antigen coordinates, CDR masks, framework sequence». contig / motif / hotspot / antigen frames; ELISA labels не являются conditioner, пока нет такой головы. Contig, mask, motif, hotspot и library — разные объекты. Ниже papers перечисляют свой conditioner без переноса с соседа.

[PAPER]DiffAb зажимает: framework sequence и geometry, antigen coords/types/orientations, CDR length $m$, generate mask. Не зажимает ELISA / measured_var / CATH label как tensor. Classifier-free guidance в PDF не описан. Luo §3.1 C; §3.4 constrained sampling

[CODE]CODE: mask_generate vs context; sample_structure/sample_sequence flags для fixbb/strpred. encode() строит context_mask = mask_heavyatom CA ∧ ¬generate_flag и при remove_structure/remove_sequence передаёт его как structure_mask/sequence_mask в embeddings (комментарий: avoid data leakage). Это не classifier-free guidance. diffab.py encode(); forward train_structure/train_sequence

[PAPER]AbDiffuser pOAS: essentially unconditional on antigen; conditioner — AHo slots + chain type embedding + $t$. Length changes через gaps, не contig RFdiffusion. §3.2; App. M embeddings

[PAPER]AbDiffuser HER2: train distribution = Mason binders (CDR-H3 mutants of Trastuzumab); не crystal HER2 clamp в generative $c$ §5.2. $p_{\mathrm{bind}}$ — отдельный classifier, не guidance в reverse по умолчанию (temperature $\tau$ — mode-covering, не classifier guidance Dhariwal). §5.2; App. B.2 τ

[PAPER]App. N: antigen residues $\le 10$ Å $C_\beta$; FA-GNN prefix. Epitope tensor как learned binding label — нет. App. N

[INTERPRETATION]Чего нет у класса как default: hotspot residue IDs RFantibody; library $\mathcal{X}$ EVOLVEpro; function keywords ESM3; ligand all-atom clamp RFdiffusion-AA (другой класс).

[MATRIX]BoltzGen: catalog «residue/chain masks, modality, target context, geometry» — pointer; не расписывать как DiffAb $C$.

[PAPER]HDOCK-conditioned DiffAb §4.4: conditioner = docked template (3qhf Fv × 7wvn RBD) — ошибка dock входит в $c$. Это не crystal $C$ §4.1. Luo §4.4 PDB 7wvn / 3qhf

12. Вычислительная сложность

Общее для класса

Драйверы стоимости класса: «N designed residues; T steps; antigen size». Сравнение «дешевле diffusion» допустимо только если paper дал NFE/steps; иначе это INTERPRETATION или молчание. GPU hours / wall-clock без источника — NR. Цифры одной кампании не становятся сложностью всего класса.

[INTERPRETATION]Драйверы класса: $T$ reverse steps; число designed residues $m$ (CDR) или $r=298$ AHo slots; размер context $N$ (Ab+Ag patch); pair $O(L^{2})$ у DiffAb GAEncoder; число samples (100 в Luo §4.1); assay latency не часть neural reverse.

[CODE]DiffAb CODE: $T=100$; pair $(L,L)$ на patch; 6 GABlocks; 100 samples/CDR в paper. Wall-clock / GPU train — NR в NeurIPS PDF. num_steps 100; Luo §4.1 100 samples

[PAPER]AbDiffuser Table 2 (A100 80GB, их постановка pOAS, batch gen 10): 169M params; train mem 12GB vs EGNN 78GB; gen mem 3GB; 2.3 min / batch of 10 vs EGNN 22.6 min. Это сравнение архитектур внутри paper, не NFE vs DiffAb $T=100$. Не писать «дешевле DiffAb» как факт класса. Table 2

[PAPER]Memory APMixer: linear in residues (implicit pairs) vs quadratic EGNN/FA-GNN — PAPER §3.3. Не переносить на DiffAb GAEncoder. §3.3 memory linear

[INTERPRETATION]AbDiffuser $T=1000$ vs DiffAb $T=100$: разные NFE; paper не даёт head-to-head wall-clock на одном GPU. INTERPRETATION: больше шагов ≠ обязательно дороже, если дешевле слой — без общего бенчмарка не утверждать.

NRBoltzGen T / NFE / VRAM — NR. Не копировать Table 2 AbDiffuser.

13. Преимущества

Общее для класса

Преимущества должны следовать из механизма класса (цикл с малым бюджетом, локальный граф, joint prior…), не из маркетинга. Seed-список: «Согласованность sequence и geometry; Естественный CDR co-design». Любое количественное число ниже обязано иметь PAPER/SI locator и не обобщается с одного белка на класс. Это не гарантия стабильности, аффинности или экспрессии.

[INTERPRETATION]Из постановки: sequence и geometry согласованы на траектории, а не склеены post-hoc IF. Следует из совместного $p_\theta(s_{t-1},g_{t-1}\mid s_t,g_t,c)$, не из маркетинга «atomic-resolution» без оговорки packing.

[PAPER]DiffAb: явный antigen 3D в $C$ — Luo contribution list. AAR H1 65.75% vs RAbD 22.85%; H3 26.78% vs 22.14% (Table 1). Это retrospective recovery на 19 complexes, не терапевтический generator. Не обобщать на все антигены. Luo Table 1 H1/H3 AAR

[PAPER]Luo: IMP H3 наравне с RAbD (23.63% vs 23.25%), при том что RAbD оптимизирует тот же Rosetta $\Delta G$, которым считают IMP. Это аргумент «без energy в loss», не $K_d$. Table 1 IMP H3; text after table

[PAPER]Один DPM покрывает co-design, fixbb и optimization (§3.4, README 5 modes) за счёт clamp каналов — механизм constrained reverse, не пять сетей. Luo §3.4; README modes

[PAPER]AbDiffuser: side chains в генераторе; Table 1 packing 0.624 vs 0.666 optimized; pOAS RMSD 0.4962 vs IgFold individual 0.4239. In silico distribution match, не SPR. §5.1 packing; RMSD 0.4962

[PAPER]AbDiffuser §5.3: 16 submitted, 100% expression (avg 1.25 mg/ml); 37.5% binders pKD $\in[8.32,9.50]$ mean 8.70; filtered 57.1% vs raw 22.2%; tightest pKD 9.50 vs Trastuzumab 9.21. Это одна HER2 кампания preprint, не гарантия класса и не DiffAb. §5.3; Fig. 2

[PAPER]APMixer масштабирует параметры при меньшем memory (Table 2) — следует из implicit pairs + alignment, не из joint diffusion per se. Table 2; §3.3

[PAPER]Явно: ни AAR, ни Rosetta $\Delta G$, ни pKD одной кампании не есть гарантия стабильности / аффинности / экспрессии на новом антигене. Luo §5 это формулирует как limitation. Luo §5

14. Ограничения

Общее для класса

Ограничения класса по осям: математика представления, физика/химия, bias данных, обобщение, deployment. Seed-список: «Дорогой sampling; Нужен complex input для antigen-conditioned моделей». Не дублировать преимущества с обратным знаком без новой информации. Ниже papers добавляют конкретные дыры (SI, split, gated weights).

[CODE]Математика: факторизация $q(s)q(g)$ игнорирует зависимость каналов в forward; вся coupling на $\theta$. Ori-канал DiffAb «не строго DDPM» (Luo). Posterior CODE AminoacidCategoricalTransition.posterior использует alpha_bars[t] дважды — реализация может расходиться с Hoogeboom posterior; не «исправлять» формулой paper без proof. transition.py posterior(); Luo §3.2 ori caveat

[PAPER]Представление: DiffAb CDR length $m$ задаётся; full-atom side chains не в state. AbDiffuser привязан к AHo/antibody family; ghost interpolation — артефакт alignment. Не CATH-универсальный генератор (future work §6). Luo §4.1 length; Martinkus §6 CATH/Pfam

[PAPER]Физика/химия: нет electrostatics/solvation в loss. Idealized bonds ≠ solution ensemble. Rosetta $\Delta G$ чувствителен к мелкой геометрии (Martinkus цитирует Raybould 2019). Martinkus §5.1 ΔG caveat

[PAPER]Данные/bias: SAbDab solved complexes и protein antigens only; 50% H3 cluster; 19-complex test. pOAS folded IgFold — structures не crystals. Mason library — noisy HT assay, один CDR-H3 scaffold Trastuzumab. Luo §4.1; Martinkus §5.1–5.2

[PAPER]Обобщение: DiffAb нужен bound (или docked) framework. AbDiffuser HER2 — expansion known-binder distribution, не de novo epitope. BoltzGen modality evidence — unread Methods, не переносить. Luo §5 bound framework limitation

[MATRIX]Deployment: DiffAb repo archived/read-only; AbDiffuser public turnkey NR; BoltzGen preprint. Не production therapeutic generator.

15. Failure modes

Общее для класса

Типичные ошибки пользователя и модели для этого класса: неверный contig/hotspot, pLDDT как binder, забытый inverse folding. Seed-список: «Framework leakage; Energy metrics mistaken for affinity». Это не общие «может не сработать». Дальше — как эти режимы проявлялись в конкретных работах каталога.

16. Реализации в инструментах

Общее для класса

Реализации класса в каталоге определяются reverse index architecture_id, а не похожестью названия. Колонки таблицы: generic architecture vs tool-specific. Непрочитанный tool — строка с NR, без выдуманных уравнений. Foundational methods вне карточек tools можно указать явно. Неравные кампании не ставят в одну колонку «успех». Список ссылок на tools повторяется служебным блоком после нумерованных разделов.

[MATRIX]Полный reverse index architecture_id. Неравные объекты (Rosetta ΔG vs SPR pKD vs unread BoltzGen) не ставить в одну колонку «успех».

[INTERPRETATION]
ToolGeneric architectureTool-specific implementationImportant difference
DiffAbjoint type+geometry DPM, clamp contextLuo Eqs. 1–13; CODE FullDPM T=100, pos/10 Å, GAEncoder 6×, SAbDab 19-complex test, no wet-lab; commit c3e2966601bf8025025ab87717b31b08fdd4834eКанон класса в каталоге; Cα+SO(3)+20 AA; packing post-hoc
AbDiffuserтот же класс: один reverse pos+resarXiv 2308.05027: APMixer, AHo 2×149, GMRF Σ, T=1000, projection; HER2 SPR 16 designs; official repo NRНет отдельного IGSO(3)-канала; full-atom; не копировать Luo Eq. 13
BoltzGenматрица: joint seq–struct diffusion familyMethods NR; не подставлять DiffAb/AbDiffuser уравнения; MIT code pointer без SHA auditНе уравнивать с DiffAb; folding/ranking — evaluator в карточке
[PAPER]
Метод вне карточек toolsЗачем указанНе делать
Hoogeboom multinomial / Austin D3PMродовые discrete kernels каналовне catalog tools
Leach IGSO(3)ориентации DiffAb Eq. 10не страница FrameDiff
Anand & Achim 2022 (concurrent protein DDPM)Luo Related Workне карточка; не antibody co-design
RAbD / RefineGNN / MEAN / dyMEANbaselines Luo/MartinkusdyMEAN в каталоге — другой architecture class (GNN), не этот id

17. Где применимо и где не применимо

Общее для класса

Класс уместен для задач: joint-cdr-sequence-structure-design; joint-sequence-structure-generation. Не уместен: single-mutation-proposal. Ссылки на workflows имеют смысл, только если стадия реально вызывает этот класс как generator/scorer, а не как соседний модуль. Чем пользоваться вместо запрещённой задачи — соседний architecture / workflow, не «тот же GNN». Ниже — разбор papers и явные запреты, затем служебные списки каталога.

[MATRIX]Применимо, когда нужен совместный CDR (или Fv) sequence+geometry при наличии structural context: workflow cdr-codesign-diffab, задачи joint-cdr-sequence-structure-design, antigen-conditioned-antibody-design. AbDiffuser — когда есть aligned antibody family / binder set (pOAS, Mason-like), не как DiffAb antigen-IPA default.

[MATRIX]BoltzGen workflow universal-all-atom-binder и target-conditioned-binder-generation / de-novo-vhh — по матрице; внутренности unread.

[INTERPRETATION]Этим классом нельзя заменять: few-shot ELISA loop (active learning / few-shot mutation); zero-shot $\Delta\ell$ (ESM-1v); de novo miniprotein без Ab framework (frame diffusion+IF, RFdiffusion); developability как первичная задача; IF при уже готовом backbone, если нужен дешёвый $p(s\mid x)$ (ProteinMPNN), кроме осознанного DiffAb fixbb.

[MATRIX]Не использовать DiffAb energy ranking как prospective affinity campaign. Для открытого de novo antibody pipeline каталог указывает RFantibody, не DiffAb (task selection_guidance). joint-cdr-sequence-structure-design selection_guidance

18. Методологические источники

Общее для класса

Этот раздел — какие работы определяют класс и какие карточки papers каталога к нему привязаны, что прочитано vs pointer-only. Идентификаторы каталога: paper-diffab; paper-abdiffuser; paper-boltzgen. Это не библиография «всего по теме». Таблица происхождения источников, paywall и статус сверки вынесены в конец страницы, чтобы не заслонять определение класса.

[PAPER]Foundational: Luo et al. NeurIPS 2022 (прочитан conference PDF). Ho 2020 VP-DDPM; Hoogeboom 2021 multinomial; Austin 2021 D3PM; Leach 2022 SO(3); Jumper IPA (назван в §3.3, не close-read AF2). Catalog papers: paper-diffab, paper-abdiffuser, paper-boltzgen (pointer-only Methods).

[INTERPRETATION]Прочитано vs pointer-only: NeurIPS DiffAb — methods+tables; AbDiffuser HTML main+key appendices B, H, M, N; CODE DiffAb listed files. Pointer-only: BoltzGen Methods, AbDiffuser Appendix F line-level, DiffAb bioRxiv sync, AbDiffuser weights repo.

[INTERPRETATION]Не библиография «всего по antibody diffusion»: Force-guided DiffAb, RADAb, energy-based preference — соседние работы, не определения класса. Не блоги ProteinIQ/Tamarind как primary.

Инструменты, использующие подход

AbDiffuser, BoltzGen, DiffAb

Где применимо

Joint CDR sequence–structure design, Joint sequence–structure generation

Где не стоит использовать

Предложение single mutations

Papers каталога

Antigen-Specific Antibody Design and Optimization with Diffusion-Based Generative Models for Protein Structures, AbDiffuser: full-atom generation of in vitro functioning antibodies, BoltzGen: universal binder design

Подтипы класса

Статус сверки источников

partially verified Последняя сверка источников: 2026-08-27. Класс joint sequence–structure diffusion описан как семейство: один reverse process выдаёт discrete identity и непрерывную геометрию. Прочитаны: Luo et al. NeurIPS 2022 conference PDF (Methods §§3.1–3.4 Eqs. 1–16, Experiments Tables 1–4, §5 limitations); Martinkus et al. AbDiffuser arXiv 2308.05027 HTML (main §§2–5, Appendix B.2–B.3, H, M, N). Код luost26/diffab @c3e2966601bf8025025ab87717b31b08fdd4834e: FullDPM, EpsilonNet, transition.py, GAEncoder, codesign_single.yml. BioRxiv DiffAb 10.1101/2022.07.10.499510 не page-sync с NeurIPS (Cloudflare). AbDiffuser — preprint, не journal; official_repository NR. BoltzGen bioRxiv 10.1101/2025.11.20.689494 Methods unread; HannesStark/boltzgen не инспектировался. Не сливать NeurIPS Tables с AbDiffuser SPR и с catalog YAML BoltzGen.

Недоступные или неполные источники

ИсточникПочему недоступенЧто использовано вместо
Luo et al. bioRxiv 10.1101/2022.07.10.499510 full HTML/PDF vs NeurIPS paginationВ этом проходе читался NeurIPS 2022 conference PDF; bioRxiv отдан Cloudflare. Preprint упоминает curated antibody-like complement — в NeurIPS PDF этого абзаца нет как отдельной секцииTrain/split/metrics — NeurIPS §§4.1–4.4; не копировать preprint-only claims без locator
AbDiffuser official GitHub / training codeКарточка каталога: official_repository null; line-audit невозможенMath и hypers — arXiv HTML §§2–4, Appendices B, H, M; tool-specific commits — NR
Stark et al. BoltzGen bioRxiv 10.1101/2025.11.20.689494 Methods + SIMethods unread (fetch abstract blocked); extra_constraints запрещают уравнивать с DiffAbСтрока tools: NR math; роль — catalog architecture_id only
HannesStark/boltzgen commit SHA and denoiser filesРепозиторий не инспектировалсяНе выдумывать T, loss, tensor dims
AbDiffuser Appendix F (GMRF adjacency estimation) line-by-lineHTML указывает Appendix F; процедура оценки sparse A не транскрибированаФакт learned covariance prior — §4.2; явная формула A — NR
DiffAb NeurIPS SI / appendix beyond 9-page PDFConference PDF ends at references; отдельный SI не page-readВсе цифры Tables 1–4 из основного PDF; hidden widths GABlock defaults — CODE

Происхождение источников

МеткаИсточникСсылкаПримечание
[PAPER]Luo S. et al. Antigen-Specific Antibody Design and Optimization with Diffusion-Based Generative Models for Protein Structures. NeurIPS 2022https://proceedings.neurips.cc/paper_files/paper/2022/file/3fa7d76a0dc1179f1e98d1bc62403756-Paper-Conference.pdfConference PDF close-read: Eqs. 1–16, Prop. 1, Tables 1–4; T=100 in Table 4; 19 test complexes; no wet-lab
[PAPER]Martinkus K. et al. AbDiffuser: Full-Atom Generation of in vitro Functioning Antibodies. arXiv:2308.05027https://ar5iv.labs.arxiv.org/html/2308.05027Preprint HTML: factored pos+res diffusion; APMixer; AHo 2×149; T=1000 App. H; HER2 SPR §5.3; no journal pagination
[CODE]luost26/diffab FullDPM / EpsilonNet / AminoacidCategoricalTransition / GAEncoderhttps://github.com/luost26/diffabcommit c3e2966601bf8025025ab87717b31b08fdd4834e; archived/read-only
[DOC]luost26/diffab README design modeshttps://github.com/luost26/diffab/blob/c3e2966601bf8025025ab87717b31b08fdd4834e/README.mdcodesign_single/multicdrs, abopt, fixbb, strpred; optional HDOCK/PyRosetta
[PAPER]Ho J., Jain A., Abbeel P. Denoising Diffusion Probabilistic Models. NeurIPS 2020https://arxiv.org/abs/2006.11239Родовой VP-DDPM; цитируется Luo Eq. 5–9
[PAPER]Austin J. et al. Structured Denoising Diffusion Models in Discrete State-Spaces. NeurIPS 2021https://arxiv.org/abs/2107.03006D3PM; канон discrete канала AbDiffuser App. B.3, не train target DiffAb multinomial Hoogeboom
[PAPER]Hoogeboom E. et al. Argmax Flows and Multinomial Diffusion. NeurIPS 2021https://arxiv.org/abs/2102.05379Цитируется Luo Eq. 1–2 для type channel
[PAPER]Leach A. et al. Denoising diffusion probabilistic models on SO(3). ICLR 2022 WorkshopNRЦитируется Luo Eq. 10 IGSO(3); не FrameDiff Yim как страница
[MATRIX]catalog reverse index architecture_id joint-sequence-structure-diffusionNRdiffab, abdiffuser, boltzgen
ПолеЗначение
Репозиторийhttps://github.com/luost26/diffab
Commitc3e2966601bf8025025ab87717b31b08fdd4834e
Ветка / tagmain (archived); единственный line-audit этого прохода
ЛицензияApache-2.0 (карточка каталога DiffAb)

Проверенные файлы реализации:

  • diffab/models/diffab.py
  • diffab/modules/diffusion/dpm_full.py
  • diffab/modules/diffusion/transition.py
  • diffab/modules/encoders/ga.py
  • configs/train/codesign_single.yml
  • README.md

Методологические источники

  1. [1] Luo S., Su Y., Peng X., Wang S., Peng J., Ma J. Antigen-Specific Antibody Design and Optimization with Diffusion-Based Generative Models for Protein Structures. NeurIPS 2022. · источник
  2. [2] Martinkus K. et al. AbDiffuser: Full-Atom Generation of in vitro Functioning Antibodies. arXiv:2308.05027. · DOI · источник
  3. [3] luost26/diffab commit c3e2966601bf8025025ab87717b31b08fdd4834e (FullDPM, transition.py, GAEncoder, codesign_single.yml). · источник
  4. [4] Ho J., Jain A., Abbeel P. Denoising Diffusion Probabilistic Models. NeurIPS 2020. · источник
  5. [5] Hoogeboom E. et al. Argmax Flows and Multinomial Diffusion. NeurIPS 2021. (Luo type channel.) · источник
  6. [6] Austin J. et al. Structured Denoising Diffusion Models in Discrete State-Spaces. NeurIPS 2021. (AbDiffuser App. B.3.) · источник
  7. [7] Leach A. et al. Denoising diffusion probabilistic models on SO(3). ICLR 2022 Workshop. (Luo Eq. 10.)
  8. [8] Dunbar J. et al. SAbDab. Nucleic Acids Res. 2014. (Luo train source.)
  9. [9] Mason D.M. et al. Optimization of therapeutic antibodies by predicting antigen specificity from antibody sequence via deep learning. Nat. Biomed. Eng. 2021. (AbDiffuser HER2 set.)
  10. [10] Stark H. et al. BoltzGen. bioRxiv 10.1101/2025.11.20.689494. Methods unread this pass. · DOI · источник

Нерешённые научные вопросы

  • BoltzGen Methods: factorization sequence vs coords, T/NFE, loss, split — NR
  • AbDiffuser official repository / commit SHA / exact training scripts — NR
  • DiffAb bioRxiv-only antibody-like complement corpus vs NeurIPS §4.1 SAbDab — не page-sync
  • GAEncoder vs Jumper IPA: bit-identity weights/formulas — NR
  • AminoacidCategoricalTransition.posterior uses alpha_bars twice; соответствие Luo Eq. 4 posterior — не доказано
  • Точное число train SAbDab structures после фильтров Luo — NR в PDF
  • AbDiffuser Appendix F learned adjacency A — не транскрибирован
  • HannesStark/boltzgen file locators — NR
  • Wall-clock DiffAb sampling на заявленном GPU — NR