基于子口袋的分子生成

生成与靶蛋白具有高结合亲和力的分子(也称为基于结构的药物设计,structure-based drug design)是药物发现中的一项基本且具有挑战性的任务。最近,深度生成模型在生成以蛋白质口袋为条件的3D分子方面取得了显著成功。然而,大多数现有的方法独立地考虑蛋白质口袋的分子生成,而忽略了潜在的联系,如子口袋水平的相似性。子口袋是配体片段(ligand fragments)的局部蛋白质环境,具有相似子口袋的口袋可能结合相同的分子片段(基序,motif),即使它们的整体结构不同。因此,在实际应用中,训练的模型很难推广到看不见的蛋白质口袋。因此,作者提出了一种新的基于结构的药物设计方法DrugGPS。实验结果表明,在具有挑战性的分布外环境中,模型在生成具有高亲和力的现实候选药物方面表现优秀。

来自:Learning Subpocket Prototypes for Generalizable Structure-based Drug Design

目录

  • 背景概述
  • 方法
    • motif词汇表构建
    • 层次上下文编码
    • 全局交互
    • 基于原型的motif生成
    • 训练
  • 实验

背景概述

基于结构的药物设计(SBDD),即设计与靶蛋白口袋具有高亲和力的分子,是药物发现中一项关键且具有挑战性的任务。传统上,这是通过基于分子对接和分子动力学模拟等规则从分子数据库中识别候选分子的虚拟筛选。然而,这种详尽的搜索对于生成数据库中不存在的新分子来说是不可行的。最近,一系列工作利用深度生成模型直接在结合口袋内生成3D分子。

然而,现有的方法存在泛化问题。高质量蛋白质-配体复合物数据(protein-ligand complex data)的数量相当有限,并且靶蛋白质口袋可能不在训练数据集中。在实践中,当发生新冠肺炎等不可预测事件时,需要生成模型来生成新蛋白质靶点(例如SARS-CoV-2的主要蛋白酶)的分子。此外,在这些工作中只考虑和编码了原子级的相互作用,逐原子生成可能导致具有不切实际的3D结构的无效分子。

在本文中,作者提出了DrugGPS(Drug design method that is Generalizable with Protein Subpocket),这是一种基于结构的药物设计方法,可通过蛋白质子口袋原型进行泛化。首先,将原子级别的graph和残差级别的graph重建表达为结合上下文。其次,为了构建能推广到unseen靶蛋白口袋的SBDD模型,作者在模型设计中加入了一个有效的生信先验:尽管两个蛋白口袋总体上可能不同,但如果它们共享相似的子口袋,它们仍可能结合同一配体片段。子口袋被定义为蛋白质-配体复合物中配体片段的局部蛋白质环境。例如,在图1中,具有低序列相似性(≤10%)的两种蛋白质(PDB ID:2avd和1p1r)具有相似的子口袋,并与相似的配体片段结合。为了捕捉结合口袋之间的子口袋水平相似性或不变性,作者提出学习子口袋原型,并构建全局交互图来对训练过程中子口袋原型和分子基序(片段)之间的交互进行建模。

为了进一步加强子口袋基序相互作用,作者使用了一种有效的结合分析工具BINANA(Binana 2: Characterizing receptor-ligand interactions in python and javascript)来识别极性接触polar contacts(氢键hydrogen bonds)。在生成过程中,通过全局信息融合加强上下文表示,并按照基序生成配体分子。

在实验中,为了模拟真实世界,作者基于序列相似性和口袋相似性来分割数据集,并构建两个分布外(OOD)设置。实验结果表明,该方法可以很好地推广到测试集中看不见的口袋。所产生的分子不仅表现出更高的结合亲和力和药物相似性,而且比最先进的基线方法包含更真实的子结构。
fig1

  • 图1a:两种序列相似性低(≤10%)的蛋白质(PDB ID:2avd和1p1r)具有相似的子口袋,并与相似的配体片段结合。2avd为黄色,1p1r为白色。子口袋对齐并用红色虚线框突出显示。
  • 图1b:配体与蛋白质2avd和1p1r结合的分子图。子口袋中的相似分子片段用绿色椭圆标记。

极性接触和非共价键相互作用在蛋白质-配体相互作用中起着重要作用,两者之间有一定的关系。

  • 极性接触:极性接触在蛋白质-配体相互作用中通常指的是蛋白质和配体之间的极性残基(如氨基酸的羟基、氨基等)之间的相互作用。这种相互作用可以通过氢键等形式发生,使得蛋白质和配体之间在特定位置形成稳定的结合。极性接触在确定蛋白质-配体结合位点和增强结合亲和性方面具有关键作用。
  • 非共价键相互作用:非共价键相互作用是指蛋白质-配体相互作用中除了共价键外的其他相互作用形式。它包括范德华力、静电相互作用、氢键、疏水效应等。这些作用通常是临时的、非永久性的,但在蛋白质-配体相互作用中起到了稳定和增强结合的作用。

关系:

  • 极性接触和非共价键相互作用在蛋白质-配体相互作用中密切相关。极性接触通常通过氢键等形式在蛋白质的极性残基和配体之间建立特定的相互作用,从而促进结合的发生。而非共价键相互作用则可以包括极性接触,同时也包括其他非共价键作用,共同形成蛋白质-配体复合物的稳定结构

在配体-蛋白质复合物中,非共价键相互作用占计算的主导:
fig0


方法

首先将基于结构的药物设计问题形式化。给定蛋白质口袋配体复合物,配体分子的3D几何结构可以表示为一组原子 G m o l = { ( a i m o l , r i m o l ) } G^{mol}=\left\{(a_{i}^{mol},r_{i}^{mol})\right\} Gmol={(aimol,rimol)},蛋白质口袋(结合位点,binding site)表示为 G p r o = { ( a j p r o , r j p r o ) } G^{pro}=\left\{(a_{j}^{pro},r_{j}^{pro})\right\} Gpro={(ajpro,rjpro)}。其中, a i m o l a_{i}^{mol} aimol a j p r o a_{j}^{pro} ajpro为表示原子类型的one-hot向量, r i m o l ∈ R 3 r_{i}^{mol}\in R^{3} rimolR3 r j p r o ∈ R 3 r_{j}^{pro}\in R^{3} rjproR3为3D笛卡尔坐标矢量。形式上,目标是学习一个条件生成模型 p ( G m o l ∣ G p r o ) p(G^{mol}|G^{pro}) p(GmolGpro)

具体来说,将给定结合口袋的分子生成公式化为一个顺序决策过程。令 ϕ \phi ϕ为生成模型, G t m o l G^{mol}_{t} Gtmol为第 t t t步的中间分子,生成过程定义如下: G t m o l = ϕ ( G t − 1 m o l , G p r o ) , t > 1 G_{t}^{mol}=\phi(G^{mol}_{t-1},G^{pro}),t>1 Gtmol=ϕ(Gt1mol,Gpro),t>1 G t m o l = ϕ ( G p r o ) , t = 1 G_{t}^{mol}=\phi(G^{pro}),t=1 Gtmol=ϕ(Gpro),t=1注意,这是逐个基序生成分子,即在每一步中,来自新基序的一组原子都包含在 G t m o l G^{mol}_{t} Gtmol中。图2a展示了一个生成步骤中的四个主要部分,包括:a上下文编码和焦点基序选择,b下一个基序预测,c基序附着预测和d旋转角度预测。
fig2

  • 图2a:生成步骤的四个部分
  • 图2b:DrugGPS中的层次上下文编码器。全局交互信息通过加权GNN被进一步编码到子口袋嵌入 h c h_c hc中。

motif词汇表构建

基序词汇构建旨在从整个数据集中的配体分子中提取常见的分子基序,构建基序词汇表 V M = { M i } V_{M}=\left\{M_{i}\right\} VM={Mi}是为了后续的分子生成。为了便于提取基序,分子可以表示为2D图 G m o l = ( V , E ) G^{mol}=(V,E) Gmol=(V,E) V V V为原子集合, E E E为共价键集合。类似的,一个基序 M i = ( V i , E i ) M_{i}=(V_i,E_i) Mi=(Vi,Ei)表示分子的子图,每个分子可以表示为基序的集合 V = ∪ i V i V=\cup_{i}V_{i} V=iVi E = ∪ i E i E=\cup_{i}E_{i} E=iEi

图3a显示了切片分子和构建基序词汇表的程序。为了提取结构基序,首先分解分子 G m o l G^{mol} Gmol为分子子结构 G 1 , . . . , G n G_{1},...,G_{n} G1,...,Gn(通过提取和分离所有不会违反化学有效性的可旋转键)。如果切割分子中的键会产生分子的两个连接成分,每个成分至少有两个原子,那么分子中的一个键是可旋转的。如果 G i G_{i} Gi在整个训练集中的出现次数大于 τ \tau τ,则选择 G i G_{i} Gi作为基序。可以选择超参数 τ τ τ来控制 V M V_M VM的大小。如果 G i G_i Gi没有被选为基序,则进一步将其分解为更精细的环和键,再从中选择基序。由于基序中的键长和角度在很大程度上是固定的,作者使用RDkit来有效地确定基序的3D结构,并训练神经网络来预测可旋转键的扭转角。
fig3

  • 图3a:分子基序提取示意图。图3b:采样的子口袋原型。图3c:构建的子口袋原型-分子基序相互作用graph。

层次上下文编码

受蛋白质内在层次结构的启发,作者提出了一种基于graph Transformer的层次上下文编码器来捕获结合位点的上下文信息。具体地,它包括如下所述的原子级编码器和残基级编码器。

对于原子级编码,首先从 G t m o l ∪ G p r o G^{mol}_{t}\cup G^{pro} GtmolGpro中的 K a K_{a} Ka最近邻居原子构建一个上下文3D graph C t − 1 a C_{t-1}^{a} Ct1a。原子属性首先被线性变换层映射到节点嵌入 h k ( 0 ) h^{(0)}_k hk(0)。边的嵌入 e i j e_{ij} eij是通过用高斯函数对原子对距离进行编码而获得的。3D graph Transformer由 L L L个Transformer层组成。每个Transformer层有两个部分:多头自注意(MHA)模块和前馈网络(FFN)。对于第 l l l层的MHA,query由当前节点嵌入 h i ( l ) h_{i}^{(l)} hi(l)得到,key和value由邻居节点的关系信息 r i j ( l ) = C o n c a t ( h j ( l ) , e i j ) r^{(l)}_{ij}=Concat(h_{j}^{(l)},e_{ij}) rij(l)=Concat(hj(l),eij)得到: q i ( l ) = W Q h i ( l ) , k i j ( l ) = W K r i j ( l ) , v i j ( l ) = W V r i j ( l ) q_{i}^{(l)}=W_{Q}h_{i}^{(l)},k_{ij}^{(l)}=W_{K}r_{ij}^{(l)},v_{ij}^{(l)}=W_{V}r_{ij}^{(l)} qi(l)=WQhi(l),kij(l)=WKrij(l),vij(l)=WVrij(l)在每一个注意力头中,比如第 m m m个注意力头,注意力计算为: h e a d i m = ∑ j ∈ N ( i ) s o f t m a x ( q i ( l ) T ⋅ k i j ( l ) d ) v i j ( l ) head_{i}^{m}=\sum_{j\in N(i)}softmax(\frac{q_{i}^{(l)T}\cdot k_{ij}^{(l)}}{\sqrt{d}})v_{ij}^{(l)} headim=jN(i)softmax(d qi(l)Tkij(l))vij(l)其中, N ( i ) N(i) N(i)表示 C t − 1 a C_{t-1}^{a} Ct1a中原子 i i i的邻居, d d d为embedding的维数。最后,输出为: M H A i = C o n c a t ( h e a d i 1 , . . . , h e a d i M ) W O MHA_{i}=Concat(head_{i}^{1},...,head_{i}^{M})W_{O} MHAi=Concat(headi1,...,headiM)WO经过FFN,原子级编码器的输出是一组原子表示 { h i } \left\{h_{i}\right\} {hi}

残基级编码器只保留每个残基的 C α C_{\alpha} Cα原子,并在残基级构建 K r K_r Kr最近邻图 C t − 1 r e s C^{res}_{t−1} Ct1res。第 i i i个残基 r e s i res_{i} resi可以被一个向量 f i f_{i} fi表示(该向量描述了残基的几何和化学特征,包括二面角、体积、极性、电荷、亲水性和氢键相互作用),作者将残基特征和残基内的原子级嵌入 h k h_{k} hk的总和拼接,作为初始残基的表示: f ‾ i = C o n c a t ( f i , ∑ k ∈ r e s i h k ) \overline{f}_{i}=Concat(f_i,\sum_{k\in res_{i}}h_{k}) fi=Concat(fi,kresihk)然后为每个残基建立局部坐标系,并计算残基之间的边缘特征 e i j r e s e^{res}_{ij} eijres,描述相邻残基之间的距离、方向。最后,编码器将节点和边缘特征带入残基级graph Transformer,以计算残基的最终表示。残基级graph Transformer架构类似于原子级编码器。

总之,层次编码器的输出是一组残基的表示 { f i } \left\{f_i\right\} {fi}和原子的表示 { h i } \left\{h_i\right\} {hi}。考虑到口袋-配体相互作用的距离范围,作者将聚焦原子6˚A内的所有残基表示相加为子口袋表示(图3b)。由于编码器基于原子/残基属性和成对相对距离,因此它在旋转和平移上是等变的。

全局交互

大多数现有方法独立考虑蛋白质口袋的分子生成,而忽略了子口袋水平相似性的潜在联系,作者构建了一个全局交互graph,以对整个数据集中的子口袋和配体片段之间的相互作用进行建模。由于数据集中有许多子口袋,作者提出对子口袋嵌入进行聚类,并导出具有代表性的子口袋原型(图3b)。因此,在全局交互graph中有两种节点:子口袋原型节点和基序词汇中的分子基序节点(图3c)。子口袋原型和分子基序的嵌入在训练过程中动态更新。如果属于原型簇的子口袋与训练数据集中的基序结合,就在子口袋原型节点和分子基序节点之间添加一条边。由于相互作用的强度不同,我们将TF-IDF值计算为子
口袋原型 i i i和基序 j j j之间的边缘权重 W i j W_{ij} Wij W i j = C i j ( l o g 1 + N 1 + N i + 1 ) W_{ij}=C_{ij}(log\frac{1+N}{1+N_{i}}+1) Wij=Cij(log1+Ni1+N+1)其中, C i j C_{ij} Cij是基序 j j j与属于原型 i i i的子口袋结合的次数, N N N是子口袋原型的总数, N i N_i Ni是与基序 i i i结合的子口袋原型数量。如果基序 j j j与原型 i i i的共现率较高,并且与较少的其他原型结合(特异性较高),则边缘具有较大的权重。

为了进一步强调子口袋和分子基序之间的相互作用,作者使用了一种有效的结合分析工具BINANA,该工具能够分析详细的相互作用,包括氢键、π-π stacking、阳离子-π相互作用、静电吸引和相对于每个原子的疏水性。当计算相互作用图的边权 W i j W_{ij} Wij时,只计算具有至少一个氢键的子口袋-分子基序对,这对结合亲和力有很大贡献。在模型训练过程中,使用K-Means动态更新子口袋原型。

基于原型的motif生成

这种原型增强基序生成的直觉是根据相似性原理:源自相似子口袋的分子基序可能以高亲和力与靶蛋白口袋结合。

在生成过程中,首先从层次上下文编码器中获得原子和残基的嵌入,子口袋嵌入 h c h_c hc可以通过对聚焦原子6˚A内的所有残基嵌入进行求和来获得。为了利用来自全局交互graph的知识,作者在图2b中采取了全局信息融合步骤:在子口袋embedding和全局交互图中的 K p K_p Kp最相似子口袋原型之间添加边,边权重设置为1。然后,使用加权GNN来传播全局信息,并将输出的子口袋表示取为 h ^ c \widehat{h}_c h c。相关的子口袋原型-基序相互作用信息可以编码在 h ^ c \widehat{h}_c h c中,用于下一个基序预测。

Focal motif预测:在预测下一个基序之前,首先选择下一个基序所连接的聚焦基序。使用两个原子级MLP作为分类器:蛋白质原子分类器(对于 t = 1 t=1 t=1)和分子原子分类器(针对 t ≥ 2 t≥2 t2):

  • t = 1 t=1 t=1时,所有已知的上下文信息都是蛋白质口袋。蛋白质原子分类器将蛋白质原子的隐表示作为输入,并预测是否可以在4˚A内产生新的配体原子。
  • 对于 t ≥ 2 t≥2 t2,分子原子分类器从先前 t − 1 t−1 t1步骤中生成的配体原子中选择一个聚焦原子。选择聚焦原子所属的基序作为聚焦基序。如果没有选择原子/基序作为焦点,则生成过程完成。

Next Motif Prediction:给定聚焦motif M f M_{f} Mf,下一个motif的标签预测为: P m = s o f t m a x M ∈ V M ( M L P M ( e ( M f ) , ∑ i ∈ M f h i , h ^ c ) ⋅ e ( M ) ) P_{m}=softmax_{M\in V_{M}}(MLP^{M}(e(M_{f}),\sum_{i\in M_{f}}h_{i},\widehat{h}_{c})\cdot e(M)) Pm=softmaxMVM(MLPM(e(Mf),iMfhi,h c)e(M))其中 P m P_m Pm是基序词汇表 V M V_M VM上的概率分布, e ( M ) e(M) e(M)表示基序嵌入, ∑ i ∈ M f h i \sum_{i\in M_{f}}h_{i} iMfhi为聚焦基序中的原子嵌入之和, h ^ c \widehat{h}_{c} h c为增强后的子口袋表示。由于在第一步( t = 1 t=1 t=1)没有聚焦基序,作者将无基序视为一种特殊的基序类型,并在训练中学习其嵌入。

motif附着预测:对于预测的基序,下一步是将新的基序连接到生成的分子上。该步骤是不确定的,因为有多种连接方案,见图2a。这里的目标是选择最合适的附着点。具体来说,作者列举了不同的有效附着,并形成了一个候选集 C C C。使用GIN来编码候选分子图,并且挑选每个附着的概率 P a P_a Pa计算为: P a = s o f t m a x G ′ ∈ C ( M L P a ( G I N ( G ′ ) , h ^ c ) ) P_{a}=softmax_{G'\in C}(MLP^{a}(GIN(G'),\widehat{h}_{c})) Pa=softmaxGC(MLPa(GIN(G),h c))

旋转角度预测:由于分子结构的灵活性很大程度上取决于可旋转键的程度,此步骤专注于预测DrugGPS中的旋转角度。在附加新的基序并获得初始坐标后,再次应用编码器来获得更新的原子嵌入。设 X X X Y Y Y表示可旋转键的两个末端原子(设 Y Y Y表示连接新基序的原子)。预测扭转角的变化 ∆ α ∆α α ∆ α = M L P α ( h X , h Y , h G ) m o d 2 π ∆α=MLP^{\alpha}(h_{X},h_{Y},h_{G})mod2\pi α=MLPα(hX,hY,hG)mod2π其中 h X h_X hX h Y h_Y hY X X X Y Y Y的嵌入; h G h_G hG表示分子的嵌入,这是通过sum pooling获得的。 ∆ α ∆α α也是旋转和平移不变的,因为预测是基于等变编码器的表示。最后,通过绕 X − Y X-Y XY线旋转 ∆ α ∆α α来更新新基序中原子坐标。至于生成中的第一个基序,由于没有参考配体原子,作者对其坐标使用基于距离的初始化。

训练

在训练阶段,分子的基序被随机掩蔽,DrugGPS被训练以恢复掩蔽的基序。具体而言,对于每个口袋-配体对,从均匀分布中采样掩模比,并掩模相应数量的分子基序。对于聚焦原子/基序预测,使用二元交叉熵损失对聚焦原子进行分类。对于基序类型和附着预测,使用交叉熵损失进行分类。至于扭转角预测,用Von Mises分布拟合角度。

在模型训练过程中,作者随机掩盖训练集中配体分子的部分基序,训练模型从距离蛋白口袋最近的基序开始,以广度优先的方式生成被掩盖的基序。数据集为包含2250万个蛋白质分子对的CrossDocked。

实验

作者以PDB ID分别为4AAW和4M7T的两个靶蛋白为例,对DrugGPS的分子生成能力进行案例研究,结果如图8所示。可见DrugGPS针对两个特定靶标蛋白的口袋结构生成了具有高QED、SA以及合理的子结构的全新分子,进一步证明了DrugGPS在实际的药物设计任务中的性能。
fig4


对于一个待处理的靶蛋白,输入模型的是蛋白质活性位点的局部结构,这包括活性位点周围的氨基酸残基和其构成的空间结构。基于这些局部结构,分子生成算法可以通过模拟分子的构建和优化来生成与蛋白质口袋相互作用的分子配体。


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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

tomcat优化

目录 tomcat tomcat优点 tomcat核心组件 Web容器 其他 功能组件 connector container tomcat处理请求过程 目录文件内容 内存池 堆区 JVM优化 ajp-nio-8009 启动速度优化 配置文件优化 tomcat tomcat是基于Java代码开发的开放源代码的web应用服务器 tomcat就…

STM32入门——定时器

内容为江科大STM32标准库学习记录 TIM简介 TIM(Timer)定时器定时器可以对输入的时钟进行计数,并在计数值达到设定值时触发中断16位计数器、预分频器、自动重装寄存器的时基单元,在72MHz计数时钟下可以实现最大59.65s的定时&…

c语言——三子棋

基本框架 三个文件: 其中.cpp文件用于游戏具体函数设计&#xff0c;.h文件为游戏的函数声明&#xff0c;test.cpp文件用于测试游戏运行。 需要用到的头文件&#xff1a; #include <stdio.h> #include <stdlib.h>//rand&srand #include <time.h>//时间相…

ElasticSearch:项目实战(2)

ElasticSearch: 项目实战 (1) 需求&#xff1a; 新增文章审核通过后同步数据到es索引库 1、文章服务中添加消息发送方法 在service层文章新增成功后&#xff0c;将数据通过kafka消息同步发送到搜索服务 Autowiredprivate KafkaTemplate<String,String> kafkaTemplate;/…

vi 编辑器入门到高级

vi 编辑器的初级用法vi 编辑器的工作模式1. 命令模式2. 文本输入模式3. 状态行vi 工作模式切换存储缓冲区 vi 编辑器命令1. 启动 vi2. 文本输入3. 退出 vi4. 命令模式下的 光标移动5. 命令模式下的 文本修改6. 从 命令模式 进入 文本输入模式7. 搜索字符串8. vi 在线帮助文档 v…

TS协议之PES(ES数据包)

TS协议之PAT&#xff08;节目关联表&#xff09;TS协议之PMT&#xff08;节目映射表&#xff09;TS协议之PES&#xff08;ES数据包&#xff09; 该文档已上传&#xff1a;下载地址 1. 概要 1.1 TS数据包&#xff08;PES&#xff09;协议数据组成 TSTS头PES头ES。TS&#xf…

Rust 原生支持龙架构指令集

导读近日&#xff0c;Rust 开源社区发布 1.71.0 版本&#xff0c;实现对龙架构&#xff08;LoongArch&#xff09;指令集的原生支持。 龙架构操作系统发行版和开发者可基于上游社区源代码构建或直接下载 Rust 开源社区发布的龙架构二进制版本。Rust 开发者将在龙架构平台上获得…

uniapp 格式化时间刚刚,几分钟前,几小时前,几天前…

效果如图&#xff1a; 根目录下新建utils文件夹&#xff0c;文件夹下新增js文件&#xff0c;文件内容&#xff1a; export const filters {dateTimeSub(data) {if (data undefined) {return;}// 传进来的data必须是日期格式&#xff0c;不能是时间戳//将字符串转换成时间格式…

机器学习深度学习——序列模型(NLP启动!)

&#x1f468;‍&#x1f393;作者简介&#xff1a;一位即将上大四&#xff0c;正专攻机器学习的保研er &#x1f30c;上期文章&#xff1a;机器学习&&深度学习——卷积神经网络&#xff08;LeNet&#xff09; &#x1f4da;订阅专栏&#xff1a;机器学习&&深度…

vue消息订阅与发布,实现任意组件间通讯

第一步&#xff1a;下载第三方消息订阅与发布库&#xff0c;例如常用的pubsub.js,他可以在任何框架中使用包括vue、react、anglar等等。 命令&#xff1a;npm i pubsub-js 注意是pubsub-js(不是点); 第二步&#xff1a;引入库&#xff1b; import pubsub from pubsub-js 第…

Die2Die(D2D)和chip2chip(C2C)之间的高速互联接口

随着chiplet的兴起&#xff0c;Die2Die的高速互联越来越重要&#xff0c;相比于传统的C2C(chip2chip)的互联&#xff0c;D2D的片间距离很近(10mm量级)&#xff0c;且这些小的chip(裸片)最终形成一个封装【多芯片模块&#xff08;MCM&#xff09;】。所以D2D的互联信道短&#x…

修改Egohands公开数据集,用于YOLOv5训练通用手部检测模型

〇、背景&#xff1a; 项目需要&#xff0c;需要利用摄像头对人手进行实时监测&#xff0c;最先考虑到的就是简单易用且高效的YOLOv5&#xff0c;很快找到了公开数据集&#xff1a;Egohands EgoHands: A Dataset for Hands in Complex Egocentric Interactions | IU Computer…