MHC-Diff 100K pMHC Structure Dataset (Multi-allele)
收藏资源简介:
# MHC-Diff 100K Dataset: Multi-Allele pMHC Structures [](https://creativecommons.org/licenses/by/4.0/) ## Overview This dataset contains **100,742 peptide-MHC class I (pMHC-I) structures** spanning 110 diverse HLA-I alleles and peptide lengths from 8 to 13 amino acids. It is designed for training and evaluating machine learning models for cross-allele pMHC structure prediction. | Property | Value | |----------|-------| | **Total structures** | 100,742 | | **X-ray structures** | 802 (from PDB and IMGT) | | **PANDORA structures** | 99,940 (computationally modeled) | | **MHC alleles** | 110 diverse HLA-I alleles | | **Peptide lengths** | 8–13 amino acids | | **Unique G-domains** | 286 | | **Number of clusters** | 10 | | **Total size** | ~47 GB | ## Data Sources - **X-ray structures**: Experimental structures from the [Protein Data Bank (PDB)](https://www.rcsb.org/) and [IMGT/3Dstructure-DB](http://www.imgt.org/3Dstructure-DB/) - **PANDORA structures**: Computationally modeled structures from the [PANDORA database](https://github.com/X-lab-3D/PANDORA) ## Clustering Strategy MHC alleles were clustered using **hierarchical clustering** on G-domain sequences (the peptide-binding groove) with **BLOSUM62** similarity scores. This ensures that test alleles have low sequence similarity to training alleles, enabling rigorous evaluation of cross-allele generalization. The varying cluster sizes reflect the natural distribution of G-domain sequence families. ### Cluster Composition | Cluster | G-domains | PANDORA | X-ray | Total | |---------|-----------|---------|-------|-------| | 1 | 2 | 59 | 0 | 59 | | 2 | 74 | 30,044 | 138 | 30,182 | | 3 | 11 | 3,412 | 18 | 3,430 | | 4 | 11 | 523 | 52 | 575 | | 5 | 54 | 26,227 | 351 | 26,578 | | 6 | 2 | 0 | 2 | 2 | | 7 | 30 | 2,337 | 78 | 2,415 | | 8 | 2 | 10,425 | 0 | 10,425 | | 9 | 99 | 26,889 | 163 | 27,052 | | 10 | 1 | 24 | 0 | 24 | ## Files ``` mhc-diff-100k-v1.0/ ├── README.md # This file ├── LICENSE # CC-BY-4.0 license ├── SHA256SUMS # Checksums for all files ├── samples.parquet # Sample index (recommended) ├── samples.tsv.gz # Sample index (alternative format) ├── split_recipes/ # Split definitions │ ├── paper_split.json # Train/val/test as used in the paper │ ├── fold_cluster1.json # Leave cluster 1 out │ ├── ... │ └── README.json # Split recipe documentation └── structures/ # HDF5 structure files ├── cluster_1.hdf5 ├── cluster_2.hdf5.gz # Gzip compressed (decompress before use) ├── ... └── cluster_10.hdf5 ``` **Note:** `cluster_2.hdf5.gz` is gzip-compressed to reduce download size. Decompress before use: ```bash gunzip structures/cluster_2.hdf5.gz ``` ## Paper Split (Recommended) | Split | Clusters | Structures | X-ray | |-------|----------|------------|-------| | **Train** | 1, 2, 5, 8, 9, 10 | 94,320 | 652 | | **Validation** | 7 | 2,415 | 78 | | **Test** | 3, 4, 6 | 4,007 | 72 | ## Data Format ### Sample Index (`samples.parquet`) | Column | Description | |--------|-------------| | `sample_id` | Unique structure identifier | | `cluster_id` | Cluster assignment (1-10) | | `source` | `xray` or `pandora` | | `structure_file` | HDF5 file containing the structure | ### HDF5 Structure Files Each HDF5 file contains multiple structures indexed by `sample_id`: **X-ray structures** (4-letter PDB codes): ```python import h5py with h5py.File('cluster_2.hdf5', 'r') as f: pdb_string = f['1AKJ'][()].decode('utf-8') # Raw PDB format ``` **PANDORA structures** (IDs starting with `BA-`): ```python with h5py.File('cluster_2.hdf5', 'r') as f: entry = f['BA-100003'] peptide_coords = entry['peptide']['atom14_gt_positions'][:, 1, :] # Cα coords protein_coords = entry['protein']['atom14_gt_positions'][:, 1, :] # Cα coords peptide_seq = entry['peptide']['aatype'][:] # Amino acid indices (0-19) ``` ## Usage ### Paper Split ```python import pandas as pd import json # Load sample index samples = pd.read_parquet('samples.parquet') # Load paper split with open('split_recipes/paper_split.json') as f: split = json.load(f) # Create splits train = samples[samples['cluster_id'].isin(split['train_clusters'])] val = samples[samples['cluster_id'].isin(split['validation_clusters'])] test = samples[samples['cluster_id'].isin(split['test_clusters'])] print(f"Train: {len(train)}, Val: {len(val)}, Test: {len(test)}") ``` ### Leave-One-Cluster-Out Cross-Validation ```python for cluster_id in range(1, 11): with open(f'split_recipes/fold_cluster{cluster_id}.json') as f: fold = json.load(f) train = samples[samples['cluster_id'].isin(fold['train_clusters'])] test = samples[samples['cluster_id'].isin(fold['test_clusters'])] ``` ## Related Datasets The **MHC-Diff 8K Dataset** is a subset of this dataset, focusing specifically on HLA-A\*02:01 with 9-mer peptides. - **MHC-Diff 8K Dataset**: [Zenodo DOI to be added] ## Citation If you use this dataset, please cite: ```bibtex @article{fruhbuss2025mhcdiff, title={MHC-Diff: Fast and Accurate Peptide-MHC Structure Prediction via an Equivariant Diffusion Model}, author={Fr{\"u}hbu{\ss}, David and Baakman, Coos and Teusink, Siem and Bekkers, Erik and Jegelka, Stefanie and Xue, Li}, year={2025} } ``` ## References 1. Berman, H.M., et al. "The Protein Data Bank." *Nucleic Acids Research* 28(1), 235–242 (2000). https://doi.org/10.1093/nar/28.1.235 2. Lefranc, M.-P., et al. "IMGT/3Dstructure-DB." *Nucleic Acids Research* 33(suppl 1), D593–D597 (2005). https://doi.org/10.1093/nar/gki010 3. Marzella, D.F., et al. "PANDORA: a fast, anchor-restrained modelling protocol for peptide:MHC complexes." *Frontiers in Immunology* 13, 878762 (2022). https://doi.org/10.3389/fimmu.2022.878762 4. Marzella, D.F., Crocioni, G., et al. "Geometric deep learning improves generalizability of MHC-bound peptide predictions." *Communications Biology* 7(1), 1661 (2024). https://doi.org/10.1038/s42003-024-07292-1 ## License This dataset is released under the [Creative Commons Attribution 4.0 International License (CC-BY-4.0)](https://creativecommons.org/licenses/by/4.0/). ## Contact - Li Xue: Li.Xue@radboudumc.nl
# MHC-Diff 100K 数据集:多等位基因肽-MHC复合物结构 [](https://creativecommons.org/licenses/by/4.0/) ## 数据集概览 本数据集包含**100742条肽-MHC I类(peptide-MHC class I, pMHC-I)结构**,涵盖110种不同的人类白细胞抗原I类(Human Leukocyte Antigen class I, HLA-I)等位基因,肽段长度范围为8至13个氨基酸。本数据集专为训练和评估用于跨等位基因pMHC结构预测的机器学习模型而构建。 | 属性 | 数值 | |----------|-------| | **总结构数** | 100,742 | | **X射线衍射结构** | 802条(来源于蛋白质数据库(Protein Data Bank, PDB)和IMGT/3D结构数据库) | | **PANDORA建模结构** | 99,940条(计算机预测建模所得) | | **MHC等位基因** | 110种多样化HLA-I等位基因 | | **肽段长度** | 8–13个氨基酸 | | **独特G结构域** | 286个 | | **聚类簇数量** | 10个 | | **总大小** | 约47 GB | ## 数据来源 - **X射线衍射结构**:实验解析结构,来源于[蛋白质数据库(Protein Data Bank, PDB)](https://www.rcsb.org/)和[IMGT/3Dstructure-DB](http://www.imgt.org/3Dstructure-DB/) - **PANDORA建模结构**:计算机预测建模结构,来源于[PANDORA数据库](https://github.com/X-lab-3D/PANDORA) ## 聚类策略 MHC等位基因的聚类基于G结构域(即肽段结合槽)的序列,通过**层级聚类(hierarchical clustering)**结合**BLOSUM62**相似性评分完成。该设计可确保测试等位基因与训练等位基因的序列相似度较低,从而实现对跨等位基因泛化能力的严格评估。 聚类簇的大小差异反映了G结构域序列家族的自然分布情况。 ### 聚类簇组成 | 聚类簇ID | G结构域数量 | PANDORA结构数 | X射线结构数 | 总结构数 | |---------|-----------|---------|-------|-------| | 1 | 2 | 59 | 0 | 59 | | 2 | 74 | 30,044 | 138 | 30,182 | | 3 | 11 | 3,412 | 18 | 3,430 | | 4 | 11 | 523 | 52 | 575 | | 5 | 54 | 26,227 | 351 | 26,578 | | 6 | 2 | 0 | 2 | 2 | | 7 | 30 | 2,337 | 78 | 2,415 | | 8 | 2 | 10,425 | 0 | 10,425 | | 9 | 99 | 26,889 | 163 | 27,052 | | 10 | 1 | 24 | 0 | 24 | ## 文件结构 mhc-diff-100k-v1.0/ ├── README.md # 本说明文件 ├── LICENSE # CC-BY-4.0许可协议 ├── SHA256SUMS # 所有文件的校验和 ├── samples.parquet # 样本索引(推荐格式) ├── samples.tsv.gz # 样本索引(备选格式) ├── split_recipes/ # 拆分定义文件夹 │ ├── paper_split.json # 论文中使用的训练/验证/测试拆分 │ ├── fold_cluster1.json # 留聚类簇1测试的拆分 │ ├── ... │ └── README.json # 拆分规则文档 └── structures/ # HDF5结构文件文件夹 ├── cluster_1.hdf5 ├── cluster_2.hdf5.gz # Gzip压缩(使用前请解压) ├── ... └── cluster_10.hdf5 **注意:`cluster_2.hdf5.gz`已进行gzip压缩以减小下载体积,使用前请先解压:** bash gunzip structures/cluster_2.hdf5.gz ## 论文预设拆分(推荐使用) | 拆分集 | 所属聚类簇 | 结构总数 | X射线结构数 | |-------|----------|------------|-------| | **训练集** | 1, 2, 5, 8, 9, 10 | 94,320 | 652 | | **验证集** | 7 | 2,415 | 78 | | **测试集** | 3, 4, 6 | 4,007 | 72 | ## 数据格式 ### 样本索引文件(`samples.parquet`) | 列名 | 描述 | |--------|-------------| | `sample_id` | 唯一结构标识符 | | `cluster_id` | 聚类簇分配(1-10) | | `source` | 数据源,取值为`xray`或`pandora` | | `structure_file` | 包含该结构的HDF5文件路径 | ### HDF5结构文件 每个HDF5文件包含多个以`sample_id`为索引的结构: **X射线衍射结构(采用4位PDB编码):** python import h5py with h5py.File('cluster_2.hdf5', 'r') as f: pdb_string = f['1AKJ'][()].decode('utf-8') # 原始PDB格式 **PANDORA建模结构(ID以`BA-`为前缀):** python with h5py.File('cluster_2.hdf5', 'r') as f: entry = f['BA-100003'] peptide_coords = entry['peptide']['atom14_gt_positions'][:, 1, :] # Cα原子坐标 protein_coords = entry['protein']['atom14_gt_positions'][:, 1, :] # Cα原子坐标 peptide_seq = entry['peptide']['aatype'][:] # 氨基酸索引(0-19) ## 使用方法 ### 论文预设拆分 python import pandas as pd import json # 加载样本索引 samples = pd.read_parquet('samples.parquet') # 加载论文预设拆分 with open('split_recipes/paper_split.json') as f: split = json.load(f) # 生成拆分数据集 train = samples[samples['cluster_id'].isin(split['train_clusters'])] val = samples[samples['cluster_id'].isin(split['validation_clusters'])] test = samples[samples['cluster_id'].isin(split['test_clusters'])] print(f"训练集样本数: {len(train)}, 验证集样本数: {len(val)}, 测试集样本数: {len(test)}") ### 留一聚类交叉验证 python for cluster_id in range(1, 11): with open(f'split_recipes/fold_cluster{cluster_id}.json') as f: fold = json.load(f) train = samples[samples['cluster_id'].isin(fold['train_clusters'])] test = samples[samples['cluster_id'].isin(fold['test_clusters'])] ## 相关数据集 **MHC-Diff 8K 数据集**是本数据集的子集,专门聚焦于HLA-A*02:01等位基因与9肽段的复合物。 - **MHC-Diff 8K 数据集**:[Zenodo DOI待补充] ## 引用方式 若使用本数据集,请引用以下文献: bibtex @article{fruhbuss2025mhcdiff, title={MHC-Diff: Fast and Accurate Peptide-MHC Structure Prediction via an Equivariant Diffusion Model}, author={Frühtbuß, David and Baakman, Coos and Teusink, Siem and Bekkers, Erik and Jegelka, Stefanie and Xue, Li}, year={2025} } ## 参考文献 1. Berman, H.M. 等. 《蛋白质数据银行》. *核酸研究* 28(1), 235–242 (2000). https://doi.org/10.1093/nar/28.1.235 2. Lefranc, M.-P. 等. 《IMGT/3Dstructure-DB》. *核酸研究* 33(suppl 1), D593–D597 (2005). https://doi.org/10.1093/nar/gki010 3. Marzella, D.F. 等. 《PANDORA:一种快速、锚点约束的肽-MHC复合物建模协议》. *免疫学前沿* 13, 878762 (2022). https://doi.org/10.3389/fimmu.2022.878762 4. Marzella, D.F., Crocioni, G. 等. 《几何深度学习提升MHC结合肽预测的泛化能力》. *通讯生物学* 7(1), 1661 (2024). https://doi.org/10.1038/s42003-024-07292-1 ## 许可协议 本数据集采用[知识共享署名4.0国际许可协议(Creative Commons Attribution 4.0 International License, CC-BY-4.0)](https://creativecommons.org/licenses/by/4.0/)发布。 ## 联系方式 - Li Xue: Li.Xue@radboudumc.nl



