要读文献 | Acta Pharmacol Sin | 上海药物所徐华强团队发表综述:基于生成扩散模型的 AI 驱动抗体设计

近日,来自中国科学院上海药物研究所的徐华强团队在 Acta Pharmacologica Sinica 发表综述文章“AI-driven antibody design with generative diffusion models: current insights and future directions”。文章主要讨论了基于生成扩散模型的抗体设计的最新进展,主要涵盖抗体的从头设计互补决定区(CDR)优化。本文首先对抗体的结构和抗体设计的基本背景进行了概述,并指出传统抗体设计方法耗时且昂贵,难以实现针对特定抗原表位的设计。基于AI的生成模型,尤其是扩散模型(详见:火爆全网的扩散模型(Diffusion Model)到底是什么?只看这篇就够了!绝对通俗易懂!| 附完整代码 + 详细注释),为解决这些挑战提供了新的方向。


原文链接:https://www.nature.com/articles/s41401-024-01380-y

或者点击文末「阅读原文」,即可直达原文页面!


  • 如果小伙伴们有需求的话,可以加入我们的交流群:一定要知道 | 永久免费的环境友好型生信学习交流群又双叒叕来啦!| 伴随不定期群友好物分享!在这里,你可以稍有克制地畅所欲言!

  • 超级建议大家在入群前或入群后可以看一下这个:干货满满 | 给生信小白的入门小建议 | 掏心掏肺版!绝对干货满满!让你不虚此看!

  • 如果有需要个性化定制分析服务的小伙伴,可以看看这里:你要的个性化生信分析服务今天正式开启啦!定制你的专属解决方案!全程1v1答疑!!绝对包你满意!


治疗性抗体作为生物治疗药物的核心,因其高度的靶向特异性和结合亲和力而备受重视。然而,尽管抗体具有巨大的潜力,其优化过程在成本和时间上依然面临巨大挑战。近年来,计算技术和人工智能,尤其是生成扩散模型的快速发展,开始在解决这些挑战上展现出重要作用,为抗体设计提供了新的方法。本综述深入探讨了专为抗体设计任务量身定制的扩散生成方法,涵盖了从头抗体设计互补决定区(CDR,complementarity-determining region)环优化及其评价指标的各个方面,力求为这一新兴领域提供全面的视角,为在抗体设计中有效利用基于扩散的生成模型提供重要参考。

要知道推荐阅读

用于从头设计的扩散模型:火爆全网的扩散模型(Diffusion Model)到底是什么?只看这篇就够了!绝对通俗易懂!| 附完整代码 + 详细注释

Baker 的最新抗体从头设计研究:要读文献 | bioRxiv | David Baker 团队利用生成式 AI 开创从头设计具有原子级精确度单域抗体新篇章

AlphaFold3在抗体对接方面的成果及不足:要读文献 | bioRxiv | AlphaFold3在抗体和纳米抗体对接方面有哪些学习成果?哪些问题仍未解决?

AlphaFold3 开源啦:AlphaFold3 开源啦!喜大普奔!

0 太长不看版

抗体设计中的扩散模型

扩散模型最初用于计算机视觉领域,其主要通过在前向过程中逐步引入噪声,在后向过程中逐步去噪,最终生成具有结构或功能的输出。该模型已被成功应用于图像生成、视频生成等任务。抗体设计中,扩散模型被用于序列和结构数据的生成,通过对抗体序列和结构加入噪声,再逐步去噪,模型可以生成新的抗体或优化已有抗体的 CDR 区域。

抗体从头设计

“抗体从头设计”,也就是“De novo antibody design”指的是完全基于目标抗原设计新的抗体而不依赖现有抗体数据。该方法利用扩散模型学习天然抗体的分布,通过训练后生成与天然抗体相似但在结合力等特性上更优的抗体。文中提到的 RFdiffusion 和 AntiBARTy Diffusion 等模型,正是基于扩散模型的抗体生成框架。RFdiffusion 通过结合抗体框架结构进行微调,并利用特定算法生成与多种靶标(如 SARS-CoV-2、流感病毒等)具有一定结合力的抗体。AntiBARTy Diffusion 则通过语言模型嵌入和扩散模型生成新的抗体序列,尽管仍需实验验证,但在体外表现出较好的可溶性。

抗体优化方法

除了从头生成抗体,扩散模型还被用于优化现有的抗体结构和序列。通过对已知的抗体-抗原复合物进行优化,扩散模型可以改进抗体的结合能力和治疗潜力。DiffAb 等模型在 CDR 优化中表现出色,通过引入指导采样步骤,这些模型可生成更高结合力和特定功能的抗体序列和结构。此外,NOS 等方法通过扩散采样步骤,生成符合特定目标(如溶解度、稳定性)的抗体序列。

通用蛋白设计扩散模型在抗体设计中的应用

抗体作为一种蛋白质,也可以利用通用的蛋白设计扩散模型来设计新的抗体或 CDR 序列。这些模型(如EvoDiff和Taxdiff)使用大规模蛋白数据集进行训练,通过掩码特定序列区域,生成新的 CDR 序列。对于结构扩散模型(如RFdiffusion和Chroma),模型在训练过程中会扩散氨基酸的空间坐标,生成抗体结构。

评估指标

文中总结了抗体设计模型的评估方法,包括结构评估(如 RMSD、LDDT 和 TM Score)、序列评估(如氨基酸恢复率 AAR 和 CAAR)、结合力评估(如分子动力学模拟、MM/PBSA)和实验验证(如热熔解实验、免疫原性测试)。这些评估方法可全面检测生成抗体的结构相似性、序列准确性、结合力及体外表现。

未来展望

尽管扩散模型在抗体设计中展现了巨大的潜力,但该领域仍面临许多挑战,包括模型的精度问题、训练数据中的负样本不足、模型设计的抗体可溶性和人体相容性等问题。未来方向包括引入更精准的算法、基于实验反馈进行模型改进、利用大规模语言模型预训练等。

1 背景

抗体是免疫系统防御外来分子和病原体的重要组成部分,具备强大的结合能力,能够牢固而特异性地结合抗原。它们已成为主要的治疗性药物,长期位居畅销药物之列。作为独特的治疗手段,抗体因其强大的识别和生成方法脱颖而出,并且具有优良的药代动力学性质、较低的毒性和低免疫原性,且易于表达和纯化。除了在临床中的重要应用外,抗体在分子生物学研究中也具有关键作用,涉及结构生物学、功能测定和成像等领域。

抗体可分为五种不同的亚型:IgG、IgM、IgA、IgD 和 IgE,它们在结构上各具特点,反映了其在免疫应答中的特殊功能。FDA 批准的单克隆抗体治疗药物中最常见的是 IgG 类型,由两条重链和两条轻链组成(图1a)。重链包含一个可变区(VH)和三个恒定区(CH1、CH2、CH3),而轻链由一个可变区(VL)和一个恒定区(CL)构成。这些区域根据功能进一步划分为片段,抗原结合片段(Fab)包含 VH、CH1、VL 和 CL 区域,而剩余区域则构成结晶片段(Fc)。此外,重链和轻链的可变区共同组成可变片段(Fv),这是大多数抗体设计工作的主要关注点。每个 Fv 区域包含三个高度可变的环,称为互补决定区(CDRs),它们赋予抗体对抗原表位(即与抗体直接结合的精确区域)的特异性,因此,CDRs 的高度变异性(图1b)使其成为抗体设计中反复优化的关键目标。


图1:标准抗体的结构和序列图。a 左图显示了一个典型的抗体(PDB ID: 1IGT),其两条重链和两条轻链分别用绿色、青色和紫色表示。抗体具有两个抗原结合片段(Fab)和一个结晶片段(Fc)。Fab的可变区(Fv)在抗原结合中至关重要,表现出显著的变异性,这种变异性主要集中在六个环中,称为互补决定区(CDR),在右侧用鲑鱼色标出。b 显示了来自 4 个人类 IgG 抗体的重链和轻链的序列比对图(PDB ID: 8GUZ, 8GV0, 8GV1, 8GV2)。黑色表示相同的残基,灰色表示相似的残基,CDR 用鲑鱼色矩形标记。

尽管抗体的应用广为人知,但传统的抗体设计方法不仅成本高、耗时长,而且常常难以生成靶向特定表位的抗体。此外,通过亲和力成熟优化现有抗体也面临挑战,需要反复进行突变和筛选的过程,这本身极为耗时且繁琐。尽管一些计算方法已经被用于快速识别和优化高亲和力抗体,这些方法通常包括基于自由能的传统方法以及数据驱动的技术。

随着数据量的增加和模型的进步,人工智能在科学领域,尤其是蛋白质设计方面的作用迅速增强。传统的生成模型如自回归模型、变分自编码器(VAE)和生成对抗网络(GAN)也被应用于蛋白质设计中。类似于文本生成任务,语言模型在蛋白质设计中通过掩码残基或更广泛的掩码标记得到广泛应用。最新的 EvolutionaryScale 模型整合了大量序列、结构和功能数据,用于设计高度创新的荧光蛋白,这些方法生成新型和实用蛋白质的速度比传统方法快了一个数量级。

目前,扩散模型已迅速成为生成模型领域的领先方法,在计算机视觉、自然语言处理和计算生物学等多个领域展现出卓越的能力,超越了传统方法,尤其是在从头蛋白质设计、小分子设计、分子构象生成和无偏蛋白-配体对接等关键领域表现出色。理论和实践应用表明,扩散模型在通过提示将一个分布转化为另一个分布方面非常有效,这在抗体生成任务中尤为重要,因为抗原可作为自然提示。此外,扩散模型充分利用了大量数据集,从中获取丰富的信息来指导实验,抗体设计领域尤为富含高质量数据。鉴于它们在蛋白质设计中的成功,扩散模型代表了生成建模中的前沿技术,具有革新抗体设计的潜力,能够通过高级数据处理能力改进抗体的从头设计和优化过程,正如 AlphaFold3 在建模中的成功所证实的那样。

在本综述中,我们对扩散模型在抗体设计方面的最新进展进行了简明概述(表1)。首先,提供了技术概要和基础背景。接下来,我们的讨论分为两个主要应用方向:**(1)从头设计,旨在生成靶向特定抗原的新型抗体;(2)抗体优化,侧重于基于已知序列或结构生成更优抗体。**此外,我们探讨了如何将通用蛋白设计的扩散模型应用于抗体设计,并总结了评估这些算法性能的指标。最后,我们强调了该领域的新兴方向并指出了现有局限性,力求全面呈现扩散模型在抗体设计中的快速进展,促进研究理解并鼓励对前沿研究的贡献。

表1:可应用于抗体设计的扩散模型汇总

算法训练集输出类型描述文献
AbDiffuserpOAS数据库中的序列和结构序列和结构基于等变性和物理信息的扩散模型,用于抗体序列和结构的共同设计AbDiffuser: full-atom generation of in-vitro functioning antibodies
AntiBARTyOAS和UniProtKB数据库中的序列序列使用抗体特定语言模型的潜在空间训练的属性条件扩散模型,用于指导从头抗体设计AntiBARTy diffusion for property guided antibody design
EAGLESAbDab数据库中的结构序列基于表位的扩散模型,通过语言模型生成抗体序列Epitope-specific antibody design using diffusion models on the latent space of ESM embeddings
DiffAb/guided DiffAb/ab_optSAbDab数据库中的结构序列和结构专为CDR优化的抗体序列联合生成设计的扩散模型Antigen-specific antibody design and optimization with diffusion-based generative models for protein structures; Guiding diffusion models for antibody sequence and structure co-design with developability properties; Generative diffusion models for antibody design, docking, and optimization
diffusion优化采样(NOS)带有亲和力数据的序列序列一种用于离散扩散模型的指导方法,跟随去噪网络隐藏状态中的梯度Protein design with guided discrete diffusion
抗体专用的RFdiffusionSAbDab、TCR和PDB数据库中的结构序列和结构微调RFdiffusion模型,用于从头设计抗体结构Atomically accurate de novo design of single-domain antibodies
ChromaPDB、UniProt和PFAM数据库中的结构序列和结构一种为蛋白质设计开发的扩散模型Illuminating protein space with a programmable generative model
EvodiffUniRef50、OpenFold、PDB和UniClust30数据库中的序列序列用于可控序列生成的通用扩散框架Protein generation with evolutionary diffusion: sequence is all you need
vanilla RFdiffusionPDB数据库中的结构结构使用RoseTTAFold生成从头蛋白质结构的扩散模型De novo design of protein structure and function with RFdiffusion

AbDiffuser、AntiBARTy 扩散模型、DiffAb 及其变体、NOS 和抗体特定 RFdiffusion 是专门用于抗体设计的方法,而 Chroma、EvoDiff 和 vanilla RFdiffusion 虽然主要用于蛋白质设计,但也可应用于抗体设计。pOAS 是指配对的可观测抗体空间(paired Observable Antibody Space)。

2 抗体设计中的扩散模型

扩散模型最初在计算机视觉领域发展,是一种概率生成模型,其目标是通过逐步精细化噪声分布来生成有用的结构。这一方法采用所谓的前向过程,通过逐步添加噪声来破坏输入数据。接着,训练一个神经网络来反向预测这些噪声步骤,从而恢复原始输入,这一过程被称为反向过程。扩散模型的应用已经扩展到图像生成、视频生成等领域,并应用于聊天机器人等对话式 AI 系统。以这些应用为基础,可以类比到抗体设计的过程(图2)。如同扩散模型在图像生成中的应用,通过向图像像素中添加噪声,我们也可以向输入的抗体序列数据、结构数据,或两者同时添加噪声。在训练过程中,神经网络会学习如何去噪,而在训练完成后,扩散模型能够接受不同的噪声分布作为输入,进而生成新的抗体。


图2:基于扩散模型的抗体设计示意图。a 训练过程。在训练过程中,数据被收集并编码为各种表示形式,随后通过前向和后向过程对这些表示进行加噪和去噪。在去噪过程中,基于神经网络的模型会进行训练。b 推理过程。在推理过程中,训练好的模型可用于对其他分布进行 t t t 次去噪,从而生成推理结果。

我们首先介绍常用的去噪扩散概率模型(DDPM,Denoised Diffusion Probabilistic Models)。在其前向扩散过程中,噪声逐步添加到初始输入 X 0 X_0 X0 中,如公式(1)所示:

X t = α ˉ t ⋅ X 0 + 1 − α ˉ t ⋅ ϵ X_t = \sqrt{\bar{\alpha}_t} \cdot X_0 + \sqrt{1 - \bar{\alpha}_t} \cdot \epsilon Xt=αˉt X0+1αˉt ϵ

其中, ϵ \epsilon ϵ 服从标准高斯分布 N ( 0 , 1 ) N(0, 1) N(0,1) α t \alpha_t αt 为噪声调度项, α ˉ t : = ∏ s = 1 t α s \bar{\alpha}_t: = \prod^{t}_{s=1} \alpha_s αˉt:=s=1tαs

在反向过程(逆过程)中,模型逐步去噪 X t X_t Xt,通过反复迭代生成逐步去噪的 X t X_t Xt,最终重建出抗体序列或结构。这个去噪过程由神经网络 ϵ θ ( X t , y , t ) \epsilon_\theta (X_t, y, t) ϵθ(Xt,y,t) 驱动,其中 y y y 作为条件变量(例如复合物中的表位), t t t 表示当前时间步。训练过程通过以下公式(2) 和公式(3)来指导:

公式(2):

μ θ ( X t , y , t ) = 1 α t ( X t − 1 − α t 1 − α ˉ t ⋅ ϵ θ ( X t , y , t ) ) \mu_\theta (X_t, y, t) = \frac{1}{\sqrt{\alpha_t}} \left( X_t - \frac{1 - \alpha_t}{\sqrt{1 - \bar{\alpha}_t}} \cdot \epsilon_\theta (X_t, y, t) \right) μθ(Xt,y,t)=αt 1(Xt1αˉt 1αtϵθ(Xt,y,t))

公式(3):

L θ = E t , X 0 , ϵ [ ∣ ∣ 1 α t ( X t − 1 − α t 1 − α ˉ t ϵ ) − μ θ ( X t , y , t ) ∣ ∣ 2 ] L_\theta = \mathbb{E}_{t, X_0, \epsilon} \left[||\frac{1}{\sqrt{\alpha_t}} \left(X_t - \frac{1 - \alpha_t}{\sqrt{1 - \bar{\alpha}_t}}\epsilon\right) - \mu_\theta (X_t, y, t)||^2\right] Lθ=Et,X0,ϵ[∣∣αt 1(Xt1αˉt 1αtϵ)μθ(Xt,y,t)2]

其中, μ θ \mu_\theta μθ 是增强训练过程的参数函数, L θ L_\theta Lθ 为均方误差(MSE)损失。KL 散度也是一种常用的损失函数,用于量化模型预测值 X t − 1 X_{t-1} Xt1 和真实值之间的差距。

在 DDPM 的时离散化方案中,进一步建立了基于随机微分方程(stochastic differential equation,SDE) 的连续时间框架。该框架描述了从输入数据到噪声的转化过程,其前向过程的 SDE 如公式(4)所示:

d x = f ( X , t ) d t + g ( t ) d B dx = f(X, t)dt + g(t)dB dx=f(X,t)dt+g(t)dB

其中, d B dB dB 代表标准布朗运动过程。 f ( X , t ) f(X, t) f(X,t) 为漂移系数,决定了过程随时间变化的均值期望。 g ( t ) g(t) g(t) 为扩散系数,反映了过程方差的变化。如果 g ( t ) = 0 g(t) = 0 g(t)=0,则该方程转化为常微分方程(ordinary differential equation,ODE),对应于 DDPM 中前向与反向过程的确定性描述。

从噪声开始,逆向 SDE 定义如公式(5)所示:

d x = [ f ( X , t ) − g ( t ) 2 ∇ log ⁡ p t ( X ) ] d t + g ( t ) d B dx = \left[ f(X, t) - g(t)^2 \nabla \log p_t(X) \right] dt + g(t)dB dx=[f(X,t)g(t)2logpt(X)]dt+g(t)dB

其中, log ⁡ p t ( X ) \log p_t(X) logpt(X) 表示当前时间步 t t t 的边际分布 p t p_t pt 的 Stein 得分(即梯度)。得分项指导 X X X 朝向概率密度较高的区域进行更新。然而,直接计算得分是不切实际的,因为 p t ( X ) p_t(X) pt(X) 通常未知。为此,使用去噪得分匹配目标来估计该得分,其损失函数如公式(6)所示:

L θ = E ( x 0 ∼ p 0 , x t ∼ p t ∣ 0 ) [ ∥ ϵ θ ( X t , y , t ) − ∇ log ⁡ p t ∣ 0 ( X ∣ X 0 ) ∥ 2 ] L_\theta = \mathbb{E}_{({x_0 \sim p_0, x_t \sim p_{t|0}})} \left[ \| \epsilon_\theta(X_t, y, t) - \nabla \log p_{t|0} (X|X_0) \|^2 \right] Lθ=E(x0p0,xtpt∣0)[ϵθ(Xt,y,t)logpt∣0(XX0)2]

其中, ϵ θ ( X t , y , t ) \epsilon_\theta(X_t, y, t) ϵθ(Xt,y,t) 为得分的估计。一个关键点是,数据条件分布 p t ∣ 0 p_{t|0} pt∣0 可以被解析化求解,特别是在条件于数据点 X 0 X_0 X0 的情况下。通过逐步迭代这些得分估计,能够重建抗体序列或结构。

扩散模型依赖于处理高质量的数据样本。例如,对于抗体数据,无论是序列、结构,或两者结合,模型都需要合适的预处理步骤来构建这些输入数据。从序列的角度来看,可以使用基于氨基酸的表示进行处理;从结构的角度,扰动涉及将这些向量或概率进行高斯噪声的应用,从而简化后验概率的计算,优化扩散模型在序列数据上的处理。

在包含结构数据的深度学习模型中,原子位置通常被用作关键输入特征。这些原子的位置可以在时间步 t t t 表示为 X t ∈ R 3 X_t \in \mathbb{R}^3 XtR3,并通过在这些三维空间坐标上添加高斯噪声,来模拟随时间变化的扰动过程。这样做的目的是在训练过程中引入随机性,从而提高模型对真实结构数据的泛化能力。

对于氨基酸的取向描述,尤其是在抗体的 CDR,通常使用旋转群 S O ( 3 ) SO(3) SO(3) 进行编码,其中 O i ∈ S O ( 3 ) O_i \in SO(3) OiSO(3) 代表第 i i i 个氨基酸残基的旋转状态。这里,旋转群 S O ( 3 ) SO(3) SO(3) 用于描述三维空间中的旋转,从而精确表示氨基酸的方向和取向。

具体来说,对 S O ( 3 ) SO(3) SO(3) 的扰动可以通过旋转矩阵或四元数的表达形式来实现。旋转矩阵是一种通过 3 × 3 3 \times 3 3×3 的正交矩阵表示的方式,而四元数则是一种紧凑的表示法,特别适用于高效计算和避免万向节锁问题。通过这些扰动方法,模型可以更加准确地模拟抗体分子在空间结构上的微小变化,这对于理解抗体-抗原相互作用和预测抗体的结合能力至关重要。

3 抗体从头设计

“抗体从头设计” 是指完全从头开始,通过计算工具和方法设计抗体,而无需依赖任何已有的抗体。该方法旨在根据目标需求,设计出具备特定特性的抗体,如结合亲和力、特异性,甚至是特定的结合表位。随着近年计算方法的不断进步,蛋白质设计正变得越来越可行。在众多新兴方法中,扩散模型在蛋白质从头设计领域取得了显著成功,这是因为它能够学习复杂的数据分布,并生成多样且高质量的样本。受此启发,扩散模型同样可以针对现有的抗体数据进行专门训练,以学习天然抗体序列和结构的潜在分布。经过训练后,这种模型能够生成具有天然抗体特征的新型抗体,不仅具备结构多样性,还可能在特定特性上得到优化。本节概述了利用扩散模型进行抗体从头设计的最新研究进展(图3)。


图3:生成扩散模型在抗体从头设计中的应用。图中用黄色高亮显示了基于扩散模型的方法,而非基于扩散的模型则以青色标注。a 特异性抗体的 RFdiffusion:此方法对 RFdiffusion 和 RoseTTAFold2 进行了微调(图中以橙色标注),基于特定的抗体数据集生成新的抗体结构。此外,ProteinMPNN 也参与了抗体序列设计过程。b AntiBARTy Diffusion 和 EAGLE:这是一种基于抗体潜在空间(latent space)训练的扩散模型,图中以青色表示。c Abdiffuser:该模型在去噪扩散过程中使用 APMixer,同时设计抗体序列及其对应的三维结构。

RFdiffusion 作为一种强大的蛋白质从头设计工具,最初并不能直接解决从头设计抗体的复杂挑战。然而,通过对原始 RFdiffusion 模型的精细调优,这一难题取得了重要突破。具体来说,这种改进方法在训练过程中引入了抗体框架结构,并将其表示为残基对之间成对距离和角度的二维矩阵。此外,该模型继承了其前身中的“热点(hotspot)”功能,以便指定抗体 CDR 与表位的相互作用。为设计 CDR 序列,抗体专用的 RFdiffusion 模型使用了 ProteinMPNN,同时采用了专门调整的 RoseTTAFold2 版本对 CDR 进行建模和筛选。训练数据集包含多种结构,包括抗体、T细胞受体(TCR)以及界面上的环状结构,确保模型在多样化的学习环境中全面训练。最终,该模型能够生成单域纳米抗体(nanobody)。实验结果表明,这一方法设计出的抗体在多种靶标(如呼吸道合胞病毒 RSV、新冠病毒 SARS-CoV-2、流感病毒和产气荚膜梭菌 TcdB)中表现出从微摩尔(μM)到亚微摩尔(nM)水平的结合亲和力,显示出较高的特异性。尽管设计出的抗体结合亲和力相对较低,整体成功率也有待进一步提升,但这种针对抗体的 RFdiffusion 改进标志着在特定抗原构象的理性抗体从头设计方面迈出了重要的一步。

AntiBARTy Diffusion 是一种用于属性引导的抗体从头序列设计的算法。该方法利用一种名为 AntiBARTy 的语言模型,将其潜在空间(latent space) 融合到扩散模型中,以生成符合特定属性的新抗体序列。其关键创新点在于使用池化嵌入(pooled embeddings)作为潜在空间中的条件和无分类器引导(classifier-free guidance),从而推动基于属性引导的抗体设计。模型架构包含一个 BART 风格的 Transformer 用于 AntiBARTy 语言模型,以及一个 U-Net 作为扩散模型的主干网络。AntiBARTy Diffusion 在包含超过 6 亿条抗体Fv序列的庞大数据集上训练,这些序列来源于 **Observed Antibody Space(OAS)**和 UniProt knowledgebase(UniProtKB),确保了模型能够接触到多样化的抗体变体。尽管该模型在提高抗体的 in silico 溶解性方面表现出一定的潜力,但研究也指出其局限性,例如缺乏实验验证以及无法灵活设计针对特定抗原的抗体。此外,EAGLE 模型通过语言模型嵌入,还能够基于表位结构生成抗体序列,这些模型可以生成包括 VHVL 的完整 Fv 域序列。

AbDiffuser 也是一种扩散模型,专门用于同时生成抗体的 3D 结构序列。它通过一个新架构框架 —— Aligned Protein Mixer (APMixer),结合等变性和基于物理的洞察,以精准生成抗体结构。APMixer 是基于 MLP-Mixer 架构的神经网络,特别适用于处理像抗体这样具有对齐特性的蛋白质。AbDiffuser 创新性地引入了去噪扩散先验(denoising diffusion priors),包括特定位点的残基频率(position-specific residue frequencies)和原子位置之间的条件依赖性(conditional dependencies),从而精确地产生抗体结构。该模型在 OAS 数据集上进行训练,并在 Trastuzumab H3 突变体上进一步微调,以设计 HER2 结合抗体。AbDiffuser 的优势在于高效利用计算资源,同时能生成高保真度的抗体结构和序列。然而,它无法直接、灵活地基于特定目标设计抗体,存在一定的局限性。

4 抗体优化方法

除了从头设计任务外,现有的抗体-抗原复合物结构或初始抗体序列通常需要进一步优化,以增强抗体对抗原的亲和力及其治疗潜力。在这一背景下,扩散模型展示了显著的性能表现。由于抗体的框架结构通常是保守的,因此关键在于直接与抗原相互作用的 CDR 的优化。基于已知的抗体-抗原复合物结构,对 CDR 进行优化以提升其结合亲和力和整体抗体特性,是一种可行且值得探索的设计策略。在此过程中,扩散模型可以利用结构和序列信息作为输入,生成新的 CDR 序列并优化现有抗体。

DiffAb 是扩散模型应用于抗体设计领域的开创性尝试,专注于解决 CDR 优化中涉及的序列-结构联合优化问题。其流程首先将抗体编码为氨基酸类型、Cα(alpha 碳)位置和残基方向等信息,并根据这些特性引入噪声。模型利用抗体框架和抗原的结构上下文信息,通过扩散反向过程去噪。在采样阶段,模型从一个包含氨基酸类型、位置和方向的均匀分布开始,并在指定条件下逐步去噪,还原出精细的结构。之后,利用理想的局部坐标构建基于 Cα 位置和残基方向的结构,通过 Rosetta 软件生成侧链原子,并采用分子力场优化整个结构。最终,DiffAb 生成全新的 CDR 域结构。相比于传统方法如 RosettaAntibodyDesign,DiffAb 所生成的结构在结合亲和力预测和序列/结构恢复上表现更优,并且通过增加扩散步骤 t,能够生成多样性较高且具有相似结合亲和力的序列。

DiffAb 的能力通过采样过程和模型的进一步改进得到了增强。通过引入基于性质指导的采样策略,该算法可以共同设计具有改进特性(如溶解度和折叠稳定性)的序列和结构,从而提升其效用和效果。此外,模型中加入了一种多通道等变图神经网络(equivariant graph neural network),该网络在捕捉抗原-抗体界面特性方面表现卓越,显著提升了原始 DiffAb 的性能。进一步地,结合 AlphaFold2不变点注意力模型(Invariant Point Attention model),扩散模型在预测抗体-抗原复合物结构方面的建模能力得到了显著增强。

仅基于序列的模型同样可以应用于抗体设计。例如,**扩散优化采样(diffusioN Optimized Sampling, NOS)**能够在保持参考序列分布高似然性的同时,生成优化任意目标的样本。NOS 通过多步去噪扩散采样,其中每一步都会施加一个扰动,并执行梯度步优化目标函数值。该方法还用于增强一种名为 LaMBO 的贝叶斯优化序列设计程序,形成一种新方法 LaMBO-2,通过基于获取值显著性的编辑位置选择,显著提升了功能导向的抗体设计的样本目标值。NOS 生成的序列在亲和力估计上表现更优。

in silico 实验中,NOS 相比于基于结构的方法在填充任务上展现出卓越的性能,这主要归因于其能够访问更大规模的训练数据集。此外,NOS 在优化单一目标时,通过其引导采样策略,能够在优化目标和保持高似然性之间实现更好的权衡。该方法在 in vitro 实验中表现出高表达率和高结合率,进一步验证了其有效性。

5 通用蛋白设计扩散模型在抗体设计中的应用

由于抗体是一类特定的蛋白质,因此通常用于蛋白质设计的算法也可以应用于抗体设计。在扩散模型领域,这类方法可分为基于序列基于结构的两种类型。生成的结果取决于模型中被屏蔽(mask)的区域:屏蔽 CDR 会生成新的 CDR,而屏蔽整个抗体则会构建新的抗体。图4展示了使用蛋白质设计模型生成抗体序列或结构的整体流程以及相应的评估方法。


图4:使用通用蛋白质设计扩散模型进行抗体设计的流程。基于序列的模型:首先生成新的 CDR 序列或完整的抗体序列,然后通过结构预测工具将这些序列折叠为抗体结构。基于结构的模型:先生成主链结构(backbone),再通过逆向折叠方法(inverse folding)生成完整的抗体结构。随后可以使用结构比对(alignment)来生成抗体-抗原复合物,最后测量结合亲和力以评估设计效果。

典型的基于序列的扩散模型包括 EvoDiffTaxdiff。这些算法可用于生成新的 CDR 序列或抗体框架(framework),并基于大型蛋白质数据集(如 UniRef50)进行训练。在训练过程中,序列会被屏蔽,模型尝试重建原始序列。在 CDR 优化应用中,可以选择性地屏蔽 CDR 区域,从而利用这些基于序列的模型生成新颖的 CDR 序列。随后,这些新序列通过结构预测工具(如 AlphaFoldModeller)折叠为抗体结构。

此外,基于结构的扩散模型,如 RFdiffusionChroma,同样适用于抗体设计。这些模型利用来自 PDB 数据库的结构数据进行训练。例如,RFdiffusion 在训练过程中对 Cα 坐标和主链二面角进行扩散,并在生成结构时利用这些信息,随后通过 ProteinMPNN 为生成的主链分配残基。在 CDR 优化中,可以使用保持非 CDR 区域固定的基序模板(motif scaffolding)策略。而 Chroma 在训练中涉及对主链、序列和侧链取向的扩散,并在模型推理时使用贝叶斯后验随机微分方程(SDE)。Chroma 的子结构条件生成能力,使其在 CDR 优化方面具有独特优势。

无论是使用基于序列还是基于结构的扩散模型,生成的 CDR 都应被建模为抗体-抗原复合物并进行评估。通常可使用自由能估算或亲和力估算器来评估结合效果,因为模型在生成过程中并未考虑抗原信息。

6 评估指标

鉴于我们回顾的扩散模型,整合评估指标对于有效筛选生成的抗体至关重要。为了系统地评估这些设计结果,我们将评估指标进行了如下分类(图5)。


图5:抗体设计中生成模型的评估指标。本图展示了用于评估抗体设计中生成模型性能的多样化指标和基准测试,具体包括:a 结构评估指标、b 序列评估指标、c 结合亲和力预测指标,以及d 针对其他性质的实验验证。

结构评估

在评估基于扩散模型的抗体设计预测准确性时,结构评估指标起着至关重要的作用。这些指标通过对预测的抗体结构和参考模型进行详细比较,提供了结构预测性能的定量评价。其中最常用的结构指标是均方根偏差(Root Mean Square Deviation, RMSD),用于量化预测结构与参考结构中对应原子间的平均偏差,公式(7)如下:

RMSD = ∑ i ( r i , ref − r i , comp ) 2 N \text{RMSD} = \sqrt{\frac{\sum_{i} \left(r_{i,\text{ref}} - r_{i,\text{comp}}\right)^2}{N}} RMSD=Ni(ri,refri,comp)2

其中, r i , ref r_{i,\text{ref}} ri,ref 表示参考结构中第 i i i 个原子的位置, r i , comp r_{i,\text{comp}} ri,comp 表示对比结构中第 i i i 个原子的位置, N N N 是原子的总数。较低的 RMSD 值表示结构之间的相似性较高。例如,DiffAb 在 CDR-H3 区域的 RMSD 值为 3.597 Å,而在其他 CDR 区域的 RMSD 值范围为 1.188 Å 到 1.627 Å,显示出模型在结构预测上的高精度。

另一种常用的结构指标是局部距离差异测试(Local Distance Difference Test, LDDT),用于衡量结构内部原子间的距离差异,从而反映局部结构的准确性,计算公式(8)如下:

在这里插入图片描述

其中, Δ d i j = ∣ d i j ′ − d i j ∣ \Delta d_{ij} = |d_{ij}' - d_{ij}| Δdij=dijdij d i j ′ d_{ij}' dij 是模型中原子对 ( i , j ) (i, j) (i,j) 的距离, d i j d_{ij} dij 是参考结构中对应原子对的距离, N N N 为参考结构中所有原子对的数量, w i j w_{ij} wij 是对应原子对的权重。

模板建模评分(Template Modeling Score, TM Score) 用于评估基于 Cα 坐标的全局结构对齐情况,公式(9)如下:

TM Score = 1 L ∑ i = 1 L w Levitt d i 2 + d 0 2 \text{TM Score} = \frac{1}{L} \sum_{i=1}^{L} \frac{w_{\text{Levitt}}}{d_{i}^2 + d_0^2} TM Score=L1i=1Ldi2+d02wLevitt

其中, L L L 为目标蛋白质的长度, w Levitt w_{\text{Levitt}} wLevitt 是 Levitt Gerstein 权重, d i d_i di 为两个蛋白质结构中对应残基对的距离, d 0 d_0 d0 是用于标准化残基距离的缩放因子。输出值的范围为 0 到 1,较高的 IDDT 和 TM Score 值表明预测结构与真实结构的相似性更高。在抗体设计评估中,DiffAb 的 TM Score 为 0.9695,IDDT 为 0.8281,这在被评估的方法中属于中等水平。

序列评估

在结构评估之外,序列评估指标 同样用于评估预测抗体序列的对齐情况和功能性。常用的序列评估指标是氨基酸恢复率(Amino Acid Recovery, AAR),用于计算预测序列与实际序列之间的重叠比例,特别是在 CDR 区域(CAAR)。公式(10)如下:

AAR = Number of matched amino acids Total number of amino acids in the sequence × 100 % \text{AAR} = \frac{\text{Number of matched amino acids}}{\text{Total number of amino acids in the sequence}} \times 100\% AAR=Total number of amino acids in the sequenceNumber of matched amino acids×100%

这些结构和序列评估指标共同为抗体设计提供了系统的性能评价框架,确保生成的抗体在结构和功能上都具有较高的准确性和可靠性。

该评价指标用于评估预测序列与实际序列的匹配程度,其中 100% 表示完全匹配。研究表明,DiffAb 方法在序列匹配准确性上优于传统的 Rosetta 抗体设计方法。此外,NOS 方法在序列基础的抗体设计中相比于 DiffAb 展现出了更高的 AAR。

同时,预测的局部距离差异测试(predicted Local Distance Difference Test, pLDDT)用于提供预测蛋白质结构局部几何的可信度评分,这一评分直接来自模型的预测输出,例如在 AlphaFold2 中有所体现。较高的 pLDDT 分数意味着预测结构的可靠性较高,这对于确保设计的抗体具备生物学合理性至关重要。例如,EvoDiff 利用 pLDDT 评估其生成的蛋白质序列是否具备生物学上合理的三维结构。

结合力评估

抗体的**结合亲和力(Binding Affinity)**是评估扩散模型生成抗体的重要指标,它反映了抗体与其特异性抗原相互作用的强度。高亲和力通常意味着抗体具有更高的特异性和中和效力,对于旨在治疗疾病的治疗性抗体尤为关键。针对人工智能设计的抗体,现已建立了多种计算和实验方法来测量其结合亲和力,具体如下所述:

分子动力学(Molecular Dynamics, MD)模拟保留了抗体-抗原相互作用的动态特性,包括蛋白质的构象柔性和溶剂效应,从而能够在原子水平上准确预测结合位点。在后续的 MD 模拟中,常使用分子力场与泊松-玻尔兹曼表面面积法(MM/PBSA)和广义 Born 表面面积法(MM/GBSA)这类计算方法来估算分子之间的结合自由能,并通过时间平均提高预测的准确性。

**界面匹配预测(InterfaceMatcher Prediction, IMP)**是设计的 CDR 在结合能(∆G)上优于原始 CDR 的比例,通过 Rosetta 软件包中的 InterfaceAnalyzer 计算而得。DiffAb 使用 IMP 来评估其设计的抗体。

**结合亲和力测试(Binding Assays)**是评价人工智能设计抗体亲和力及动力学特性的有效实验方法。表面等离子共振(Surface Plasmon Resonance, SPR)被广泛用于实验验证。例如,Bennett 等人和 Gruver 等人利用 SPR 测定了 VHH 与 RSV III 区域、流感血凝素(Influenza Hemagglutinin)、以及 HER2 靶向抗体的亲和力。此外,生物层干涉(Bio-Layer Interferometry, BLI)也是一种用于测量抗体与抗原间实时相互作用强度及动力学的实验方法。在 BLI 测试中,抗原溶于溶液,结合事件发生在与抗体涂层的生物传感器表面,使得反射光的干涉图案发生变化,从而检测相互作用的强度。Hie 等人使用 BLI 筛选了通过实验室进化改良亲和力的抗体突变体,而 Watson 等人也应用 BLI 评估了预测抗体与 MDM2 靶点的结合亲和力。

实验验证

除了前面讨论的计算和实验评价方法外,还有多种实验验证指标被用来评估设计抗体的其他特性。

首先,**热熔解实验(Thermal Melting Assays)**通过差示扫描荧光法(Differential Scanning Fluorimetry)测试蛋白质和抗体的热稳定性。例如,圆二色性熔解实验(Circular Dichroism Melt Assays, CD Melt)可以用于检测由 RFdiffusion 生成的抗体在生理条件下的热稳定性,这一指标反映了其结构完整性。

在**免疫原性(Immunogenicity)**评估方面,计算和实验方法被用来预测抗体引发免疫反应的可能性。Hie 等人采用 NetMHCPan 和 NetMHCIIPan 等计算工具,预测了 T 细胞介导的免疫原性,从而为抗体的安全性评价提供了依据。

最后,结构解析是揭示抗体与抗原结合特性的重要手段。冷冻电镜(Cryogenic Electron Microscopy, cryo-EM)和负染色电镜(Negative Stain Electron Microscopy, nsEM)能够提供抗体-抗原相互作用的真实结构信息。Watson 等人通过 nsEM 收集了设计并纯化的抗体寡聚体的数据,展示了他们方法在精准设计具有特定功能的蛋白质方面的能力。此外,他们还使用 cryo-EM 确定了与流感血凝素(Influenza Haemagglutinin)结合最好的抗体结构,从而验证了其蛋白设计方法的有效性。

综上所述,这些实验验证手段不仅评估了抗体的热稳定性和免疫原性,还通过结构解析进一步验证了抗体的设计效果,为 AI 驱动的抗体设计提供了全面的实验验证支持。

7 未来展望

鉴于抗体在治疗性药物开发中的关键作用,整合创新算法对于推动该领域发展至关重要。扩散模型的引入为抗体设计带来了多重优势:首先,它们充分利用了广泛的数据库资源,包括超过 10 亿条抗体序列、超过 8000 条结构注释,以及蛋白质界面环的相关数据,大大增强了模型的训练效果。其次,扩散模型在捕捉抗体-抗原界面复杂相互作用方面表现出色,从而加速了抗体的生成过程。此外,这些模型减少了对传统实验方法(如小鼠杂交瘤和单 B 细胞筛选)的依赖,这些方法通常耗时且成本高昂。最后,与可能陷入次优配置的**定向进化(Directed Evolution)**不同,扩散模型能够探索理论上极为广泛的序列空间(L20),从而全面探索潜在的抗体变体。这些特点使得扩散模型在抗体从头设计和 CDR 优化中展现出巨大的应用前景。

尽管扩散模型在抗体设计中具有广阔的应用潜力,但其局限性也不容忽视。首先,这些模型的预测精度并非绝对,设计出的序列和结构往往未达到预期效果,仍需进一步的实验验证。目前,缺乏既快速又精准的评估方法来验证生成的抗体,导致验证成本上升。其次,这些模型的训练数据主要来自于正样本,忽视了负样本的影响,这种偏倚会导致生成不合理的抗体,无法在实际应用中使用。第三,现有模型主要侧重于提高抗体的结合亲和力,却常常忽略了其他关键属性,如溶解性、人体相容性和聚集潜力等。未来的模型需要进一步关注这些属性,以提高所设计抗体的可药用性(Druggability)。通过解决这些问题,扩散模型在抗体设计中的应用有望进一步提升。

扩散模型在抗体设计中的最新进展已取得显著成果。例如,AbDiffuser 模型成功设计出解离常数(pKD)为 9.5 的抗体,其性能可与广为人知的曲妥珠单抗(Trastuzumab)媲美,显示出在治疗应用中的潜力。同样,专门为抗体设计的 RFdiffusion 模型能够生成亲和力从微摩尔到亚微摩尔水平不等的抗体,并针对多种靶标展现出较高的特异性。此外,Evodiff 的应用推动了新型抗 PD-1 Fv 模型的开发,这些抗体有望在后续实验中得到进一步验证。尽管取得了初步成功,目前筛选出的抗体仍处于药物设计的“命中(hit)”阶段,需要进一步优化其可药用性和稳定性。因此,尽管扩散模型在抗体设计中展现出巨大的潜力,但仍处于早期阶段,尚需大幅改进以充分发挥其在药物开发中的应用价值。

为了推动扩散模型在抗体设计领域的进一步发展,我们提出了几项战略性优化措施。首先,引入**流动匹配(Flow Matching)随机插值(Stochastic Interpolants)**等新型算法,可以优化从初始分布到生成抗体分布的转化过程,提升模型对两个分布间复杂关系的理解精度。其次,利用针对大规模抗体数据集定制的预训练大语言模型,可以深入挖掘抗体特性,进一步提升设计效率。第三,引入包含实验反馈的循环训练过程也十分重要。以 NOS 项目为例,研究者对 374 种设计出的抗体进行了实验证验,并将获得的新数据用于模型的再训练,最终生成了针对所有目标的亚微摩尔水平的结合分子。这一迭代方法突显了利用实验结果不断优化模型训练的重要性。此外,引入经过专门测试的内部数据,尤其是包含正负样本的数据集,能够显著提升模型的准确性和可靠性,如抗生素开发中的相关研究已经证明了这一点。同时,制药公司若能应用隐私保护计算技术,将有助于进一步扩大可用于训练的数据量。我们预期扩散模型的持续发展不仅将推动抗体设计,还将促进小分子和蛋白质设计等其他领域的协同演进。这类进步有望显著提升生化合成在各类应用中的效率和精确度,为广泛领域带来变革性的影响。

8 总结

在这篇综述中,我们探讨了多种应用于抗体设计的基于扩散模型的方法,尤其是针对从头设计和 CDR 优化。这些方法有望提升抗体的特异性和亲和力,尽管仍面临一些挑战。我们详细分析了这些方法的优缺点,旨在为相关领域的研究者提供一个全面而均衡的视角。展望未来,随着算法的不断进步和相关数据库的持续扩展,我们预期将会有更加精细和高效的模型出现。这些新兴模型有望显著提升抗体设计的精度与效能,逐步成为生物技术工具箱中不可或缺的一部分,推动抗体药物研发的进展与创新。

文末碎碎念

那今天的分享就到这里啦!我们下期再见哟!

最后顺便给自己推荐一下嘿嘿嘿!

如果我的分享对你有用的话,欢迎关注点赞在看转发分享阿巴阿巴阿巴阿巴巴巴!这可是我的第一原动力!

蟹蟹你们的喜欢和支持!!!

参考资料

He, X. H., Li, J. R., Xu, J., Shan, H., Shen, S. Y., Gao, S. H., & Xu, H. E. (2024). AI-driven antibody design with generative diffusion models: current insights and future directions. Acta pharmacologica Sinica.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/14244.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

Collections 工具类

在 Java 编程中,集合(Collections)是处理数据的核心工具之一。为了简化集合操作并提高代码的可读性和可维护性,JDK 提供了一个强大的工具类:java.util.Collections。这个类包含了一系列静态方法,用于对集合…

机器学习引领流体动力学新纪元:CFD、Fluent与OpenFOAM的深度融合

在科技日新月异的今天,机器学习正以前所未有的力量重塑着众多学科领域,其中,流体动力学便是受益匪浅的典范。作为计算流体力学(CFD)领域的两大巨头,Fluent与OpenFOAM正携手机器学习技术,共同开启…

django入门【05】模型介绍(二)——字段选项

文章目录 1、null 和 blank示例说明⭐ null 和 blank 结合使用的几种情况总结: 2、choices**choices 在 Django 中有以下几种形式:**(1) **简单的列表或元组形式**(2) **字典映射形式**(3&#…

PL/SQL执行.sql文件

1.编写.sql文件,创建update.sql文件,文件如下: set feedback offset define off--更新表中所有人的年龄update a set age18;prompt Done. 2.打开plsql选择命令窗口,即选择File->New->Command Window; 打开后的…

论文5—《基于改进YOLOv5s的轻量化金银花识别方法》文献阅读分析报告

论文报告:基于改进YOLOv5s的轻量化金银花识别方法 论文报告文档 基于改进YOLOv5s的轻量化金银花识别方法 论文报告文档摘要国内外研究现状国内研究现状国外研究现状 研究目的研究问题使用的研究方法试验研究结果文献结论创新点和对现有研究的贡献1. 目标检测技术2. …

【数据结构】ArrayList与LinkedList详解!!!——Java

目录 一🌞、List 1🍅.什么是List? 2🍅.List中的常用方法 二🌞、ArrayList 1🍍.什么是ArrayList? 2🍍.ArrayList的实例化 3🍍.ArrayList的使用 4🍍.ArrayList的遍…

modbus协议 Mthings模拟器使用

进制转换 HEX 16进制 (0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F表示0-15) dec 10进制 n(16进制) -> 10 abcd.efg(n) d*n^0 c*n^1 b*n^2 a*n^3 e*n^-1 f*n^-2 g*n^-3(10) 10 -> n(16进制) Modbus基础概念 高位为NUM_H&…

微信版产品目录如何制作?

微信作为我国最流行的社交媒体平台,拥有庞大的用户群体。许多企业都希望通过微信来推广自己的产品,提高品牌知名度。制作一份精美、实用的微信版产品目录,是企业微信营销的重要手段。微信版产品目录的制作方法,帮助您轻松入门。 ​…

消息推送之SSE

一、简介 市面上很多系统都有 以上三种的消息提醒。但大多分为2类,一类移动端,一类web端比,通常在服务端会有若干张消息推送表,用来记录用户触发不同事件所推送不同类型的消息,前端主动查询(拉&#x…

react中如何在一张图片上加一个灰色蒙层,并添加事件?

最终效果: 实现原理: 移动到图片上的时候,给img加一个伪类 !!此时就要地方要注意了,因为img标签是闭合的标签,无法直接添加 伪类(::after),所以 我是在img外…

微搭低代码入门03函数

目录 1 函数的定义与调用2 参数与返回值3 默认参数4 将功能拆分成小函数5 函数表达式6 箭头函数7 低代码中的函数总结 在用低代码开发软件的时候,除了我们上两节介绍的变量、条件语句外,还有一个重要的概念叫函数。函数是执行特定功能的代码片段&#xf…

Zabbix中文监控指标数据乱码

1)点击主机,选择Zabbix server 中的 图形 一项,可以看到当前显示的为乱码 2) 下载字体文件: https://gitcode.com/open-source-toolkit/4a3db/blob/main/SimHei.zip 解压unzip -x SimHei.zip 3) 替换字体文…

限价订单簿中的高频交易

数量技术宅团队在CSDN学院推出了量化投资系列课程 欢迎有兴趣系统学习量化投资的同学,点击下方链接报名: 量化投资速成营(入门课程) Python股票量化投资 Python期货量化投资 Python数字货币量化投资 C语言CTP期货交易系统开…

JDBC事务管理、四大特征(ACID)、事务提交与回滚、MySQL事务管理

目录 一、什么是JDBC事务? (1)事务概念。 (2)JDBC事务的实现。 1、提交。 2、回滚。 (3)生活中可以类比 JDBC 事务的例子。 1、以网上购物为例。 二、JDBC的四大事务(ACID&#xff0…

操作系统离散存储练习题

1. (简答题)分页存储管理系统具有快表,内存访问时间为2ns,检索快表时间为0.5ns,快表命中率为80%,求有效访问时间 -分析:首先访问缓存(快表),如果没有找到访问内存(页表&…

【AI日报】2024年11月13号

我回来啦!!发现自己好久不发文章了。 在某头部AI公众号实习的过程中,学到太多太多了,也感谢某位大神的指点,也衷心祝愿他的IP可以越做越好 之后因为时间关系,可能要自己出来单干了。 在实习过程中学到的…

inline内联函数(C++)

a)⽤inline修饰的函数叫做内联函数,编译时C编译器会在调⽤的地⽅展开内联函数,这样调⽤内联函数就不需要建⽴栈帧了,就可以提⾼效率。 b)inline对于编译器⽽⾔只是⼀个建议,也就是说,你加了inl…

C++builder中的人工智能(27):如何将 GPT-3 API 集成到 C++ 中

人工智能软件和硬件技术正在迅速发展。我们每天都能看到新的进步。其中一个巨大的飞跃是我们拥有更多基于自然语言处理(NLP)和深度学习(DL)机制的逻辑性更强的AI聊天应用。有许多AI工具可以用来开发由C、C、Delphi、Python等编程语…

Harmony- List组件最后一个item显示不全

在使用List组件显示数据的时候会出现最后一个item显示不全的问题,如下 出现在高度问题上,如果List组件上下没有其他占位组件就是正常显示的 解决方案: 1.给List组件加上layoutWeight(1),使它填满父控件剩余空间; 2.还有一种情况…

neo4j desktop基本入门

下载安装不在赘述,本文只记述一些neo4j的基本入门操作 连接本地neo4j数据库 1. 点击ADD添加连接 端口一般是7687 账户名和密码忘记了,可以通过neo4j web(默认为neo4jneo4j://localhost:7687/neo4j - Neo4j Browser)重置密码 AL…