肿瘤新抗原预测¶
一句话概述¶
利用pVACtools、NetMHCpan、MHCflurry进行HLA分型和肿瘤新抗原(neoantigen)预测,筛选可被T细胞识别的突变衍生肽段,为个体化肿瘤疫苗和免疫治疗提供候选靶标。
核心知识点总览¶
| 知识点 | 关键内容 | 重要程度 |
|---|---|---|
| 新抗原概念 | 体细胞突变→异常肽→MHC呈递→T细胞 | ⭐⭐⭐⭐⭐ |
| HLA分型 | OptiType/HLA-HD从NGS推断HLA等位基因 | ⭐⭐⭐⭐⭐ |
| MHC结合预测 | NetMHCpan/MHCflurry亲和力预测 | ⭐⭐⭐⭐⭐ |
| pVACtools | 整合流水线预测新抗原 | ⭐⭐⭐⭐⭐ |
| 肽段处理呈递 | TAP转运/蛋白酶体切割预测 | ⭐⭐⭐⭐ |
| 优先级排序 | 表达量/克隆性/结合力综合评分 | ⭐⭐⭐⭐ |
| MHC-I vs MHC-II | CD8+ vs CD4+ T细胞新抗原 | ⭐⭐⭐ |
| 免疫原性验证 | T细胞反应性验证策略 | ⭐⭐⭐ |
各步骤详解¶
第一步:新抗原预测的基本原理¶
白话解释: 肿瘤细胞携带体细胞突变,这些突变可能产生正常细胞没有的异常蛋白片段(新抗原/neoantigen)。这些异常肽段被MHC分子呈递到细胞表面后,可被T细胞识别并杀死肿瘤细胞。预测哪些突变能产生有效的新抗原,是个体化肿瘤疫苗设计的核心问题。
技术细节: 新抗原产生的条件链: 1. 体细胞突变存在(SNV/InDel/融合基因) 2. 突变基因被转录(RNA表达) 3. 突变蛋白被翻译和降解为肽段 4. 肽段被蛋白酶体正确切割 5. 肽段通过TAP转运到内质网 6. 肽段与患者特异的HLA等位基因结合 7. MHC-肽复合物稳定呈递到细胞表面 8. 存在能识别该新抗原的T细胞克隆
第二步:HLA分型¶
白话解释: 每个人的HLA型别不同(如HLA-A*02:01),决定了能呈递哪些肽段。要预测新抗原,首先需要知道患者的HLA型别。OptiType和HLA-HD可以从NGS数据中直接推断HLA等位基因。
技术细节:
# === HLA分型 ===
# 方法1:OptiType(HLA class I,最常用)
# 从BAM提取HLA区域reads
samtools view -b tumor.bam chr6:29691116-33054976 > hla_reads.bam
samtools fastq hla_reads.bam > hla_reads.fq
# 运行OptiType
OptiTypePipeline.py -i hla_reads.fq \
--dna --outdir optitype_results/
# 输出示例:HLA-A*02:01, HLA-A*11:01, HLA-B*07:02, HLA-B*44:02, HLA-C*07:01, HLA-C*05:01
# 方法2:HLA-HD(更全面,class I + II)
hlahd.sh -t 16 \
-m 100 \
-f freq_data/ \
tumor_R1.fq.gz tumor_R2.fq.gz \
gene_split_fasta/ \
hlahd_output/
# 方法3:从正常组织WES/WGS推断(更准确避免体细胞LOH影响)
OptiTypePipeline.py -i normal_hla_reads.fq --dna --outdir optitype_normal/
第三步:pVACtools新抗原预测¶
白话解释: pVACtools是最完整的新抗原预测流水线。它从注释好的VCF开始,生成所有可能的突变肽段,调用多个MHC结合预测工具,然后综合评分和过滤,输出候选新抗原列表。
技术细节:
# === pVACtools (pVACseq) ===
pip install pvactools
# 前提:已有VEP注释的体细胞突变VCF
# VEP必须包含以下插件:Frameshift, Wildtype
# 运行VEP注释
vep --input_file somatic.vcf --output_file somatic.vep.vcf \
--format vcf --vcf --symbol --terms SO \
--plugin Frameshift --plugin Wildtype \
--offline --cache --assembly GRCh38
# 运行pVACseq
pvacseq run \
somatic.vep.vcf \
TUMOR_SAMPLE \
"HLA-A*02:01,HLA-A*11:01,HLA-B*07:02,HLA-B*44:02,HLA-C*07:01,HLA-C*05:01" \
NetMHCpan MHCflurry NetMHCIIpan \
pvacseq_output/ \
-e1 8,9,10,11 \
-e2 15 \
--iedb-install-directory /path/to/iedb/ \
-t 16 \
--normal-sample-name NORMAL_SAMPLE \
--normal-cov 5 --tdna-cov 10 --trna-cov 10 \
--normal-vaf 0.02 --tdna-vaf 0.25 --trna-vaf 0.25 \
--binding-threshold 500 \
--top-score-metric median
# 参数说明:
# -e1 8,9,10,11: MHC-I肽段长度(8-11mer)
# -e2 15: MHC-II肽段长度(15mer)
# --binding-threshold 500: IC50阈值(<500nM为结合物)
# 强结合物:IC50 < 150nM
# 弱结合物:150 < IC50 < 500nM
# pVACseq结果解析
import pandas as pd
# 读取结果
results = pd.read_csv("pvacseq_output/MHC_Class_I/TUMOR_SAMPLE.filtered.tsv", sep="\t")
# 关键列:
# Chromosome, Start, Stop, Variant Type
# Gene Name, Mutation, HLA Allele
# MT Epitope Seq (突变肽), WT Epitope Seq (野生型肽)
# Median MT Score (突变肽结合IC50)
# Median WT Score (野生型肽结合IC50)
# Tumor DNA VAF, Tumor RNA VAF
# Agretopicity (MT_score / WT_score,值<1说明突变增强了结合)
# 高优先级新抗原筛选
top_neoantigens = results[
(results['Median MT Score'] < 150) & # 强结合
(results['Tumor RNA VAF'] > 0.1) & # 有表达
(results['Median WT Score'] > 500) # 野生型不结合(免疫原性高)
].sort_values('Median MT Score')
print(f"Top neoantigen candidates: {len(top_neoantigens)}")
print(top_neoantigens[['Gene Name', 'Mutation', 'HLA Allele',
'MT Epitope Seq', 'Median MT Score']].head(20))
第四步:MHC结合预测工具详解¶
白话解释: MHC结合预测是新抗原预测的核心步骤。不同工具使用不同的机器学习方法(神经网络、矩阵等)预测肽段与特定HLA等位基因的结合亲和力。多工具共识能提高预测可靠性。
技术细节:
# === NetMHCpan 4.1b ===
# 人工神经网络,覆盖MHC-I所有等位基因
# 注意:4.1b是修正数据后的重训练版本,应优先使用;最新版4.2(2025)引入迁移学习
netMHCpan -a HLA-A02:01 -l 9 -f peptides.fasta -BA > netmhcpan_results.txt
# -BA: 输出结合亲和力预测(IC50)
# %Rank < 0.5: 强结合
# %Rank < 2.0: 弱结合
# === MHCflurry 2.0 ===
# 深度学习模型,快速且准确
mhcflurry-predict --alleles HLA-A0201 HLA-B0702 \
--peptides YLQPRTFLL SLYNTVATL GILGFVFTL \
--out predictions.csv
# === NetMHCIIpan 4.3 (MHC-II) ===
# 用于CD4+ T细胞新抗原预测
# 4.3版(2023)改进了HLA-DP/DR预测,是当前最新版
netMHCIIpan -a DRB1_0101 -inptype 1 -l 15 -f peptides.fasta
# MHCflurry Python API
from mhcflurry import Class1PresentationPredictor
predictor = Class1PresentationPredictor.load()
# 预测
results = predictor.predict(
peptides=["YLQPRTFLL", "SLYNTVATL", "GILGFVFTL"],
alleles=["HLA-A0201"],
verbose=0
)
print(results[['peptide', 'mhcflurry_affinity', 'mhcflurry_presentation_score']])
# presentation_score考虑了切割和TAP转运,更接近真实呈递概率
第五步:新抗原优先级排序¶
白话解释: MHC结合力只是一个维度。一个好的新抗原候选还需要:突变被表达(RNA水平)、是克隆性突变(所有肿瘤细胞都有)、与野生型肽差异大(免疫原性高)、不会导致自身免疫。综合这些因素进行排序。
技术细节:
# === 新抗原综合评分 ===
# 评分维度:
# 1. MHC结合亲和力(IC50 < 150nM = high affinity)
# 2. DAI (Differential Agretopicity Index) = WT_IC50 / MT_IC50
# DAI > 1: 突变增强了结合
# 3. 肿瘤VAF(VAF高=克隆突变,应优先)
# 4. RNA表达水平(TPM > 1)
# 5. 突变蛋白酶体切割概率
# 6. 新抗原与已知免疫原性肽的相似性
# 综合评分函数
score_neoantigen <- function(mt_ic50, wt_ic50, vaf, tpm, clonality) {
binding_score <- max(0, 1 - mt_ic50/500) # 0-1, IC50越低越好
dai_score <- min(wt_ic50/mt_ic50, 10) / 10 # 0-1
expression_score <- min(log2(tpm + 1) / 5, 1) # 0-1
clonality_score <- vaf # 0-1
total <- 0.3 * binding_score + 0.2 * dai_score +
0.2 * expression_score + 0.3 * clonality_score
return(total)
}
# 应用评分
neoantigens$priority_score <- mapply(score_neoantigen,
neoantigens$MT_IC50, neoantigens$WT_IC50,
neoantigens$VAF, neoantigens$TPM, neoantigens$CCF)
# 排序取top
top_candidates <- neoantigens %>% arrange(desc(priority_score)) %>% head(20)
第六步:新抗原质量过滤¶
白话解释: 需要过滤掉可能的假阳性和不适合临床使用的候选:如突变可能是germline变异、肽段与自身蛋白高度相似可能引起自身免疫、低复杂度肽段等。
技术细节:
# === pVACtools质量过滤 ===
pvacseq top_score_filter \
pvacseq_output/MHC_Class_I/TUMOR_SAMPLE.all_epitopes.tsv \
pvacseq_output/filtered_top.tsv \
--top-score-metric median
pvacseq binding_filter \
pvacseq_output/filtered_top.tsv \
pvacseq_output/filtered_binding.tsv \
--binding-threshold 500
pvacseq coverage_filter \
pvacseq_output/filtered_binding.tsv \
pvacseq_output/filtered_final.tsv \
--normal-cov 5 --tdna-cov 10 --trna-cov 10 \
--normal-vaf 0.02 --tdna-vaf 0.25 --trna-vaf 0.25
第七步:新抗原负荷(TMB/TNB)与免疫治疗响应¶
白话解释: 肿瘤突变负荷(TMB)和新抗原负荷(TNB)是预测免疫检查点抑制剂响应的重要生物标志物。TMB高=更多新抗原=更容易被免疫系统识别=免疫治疗更可能有效。
技术细节:
# === 新抗原负荷计算 ===
# TMB (Tumor Mutational Burden)
total_mutations <- nrow(somatic_variants)
exome_size_mb <- 33 # WES覆盖约33Mb
tmb <- total_mutations / exome_size_mb
cat(sprintf("TMB: %.1f mutations/Mb\n", tmb))
# TMB > 10: 高TMB
# TNB (Tumor Neoantigen Burden)
# 预测的强结合新抗原数量
tnb <- nrow(top_neoantigens[top_neoantigens$MT_IC50 < 500, ])
cat(sprintf("TNB: %d neoantigens\n", tnb))
# 克隆性新抗原负荷(更好的预测指标)
clonal_neoantigens <- top_neoantigens[top_neoantigens$VAF > 0.3, ]
clonal_tnb <- nrow(clonal_neoantigens)
cat(sprintf("Clonal TNB: %d\n", clonal_tnb))
实战命令速查¶
# 完整新抗原预测流程
# 1. HLA分型
OptiTypePipeline.py -i hla_reads.fq --dna --outdir hla/
# 2. VEP注释突变
vep --input somatic.vcf --plugin Frameshift --plugin Wildtype --vcf
# 3. pVACseq预测
pvacseq run somatic.vep.vcf TUMOR "HLA-A*02:01,HLA-B*07:02" \
NetMHCpan MHCflurry output/ -e1 8,9,10,11
面试常问点¶
Q1: 为什么新抗原预测要同时考虑突变肽和野生型肽的结合力?¶
A: 如果突变肽结合MHC但野生型肽也同样结合(即DAI≈1),说明该肽段正常情况下也会被呈递,免疫系统对其已经形成耐受。只有突变显著增强了MHC结合(DAI>>1)或改变了TCR接触面的新抗原才可能被T细胞识别为"外来"。理想候选:MT_IC50<150nM且WT_IC50>500nM。
Q2: 为什么克隆性新抗原比亚克隆性更有价值?¶
A: 克隆性新抗原存在于所有肿瘤细胞中,针对它们的免疫反应可以杀死整个肿瘤。亚克隆性新抗原只在部分肿瘤细胞中存在,免疫应答只能清除部分肿瘤细胞,残存的不含该新抗原的细胞可能耐药增殖。个体化疫苗设计应优先选择克隆性新抗原。
Q3: NetMHCpan和MHCflurry的区别和选择?¶
A: NetMHCpan 4.1b使用人工神经网络训练on binding affinity + eluted ligand data,覆盖最广泛的HLA等位基因(包括罕见型);最新4.2版(2025)引入迁移学习和结构特征进一步提升预测。MHCflurry 2.0使用ensemble of neural networks,额外建模了antigen processing(切割+TAP),提供presentation score。实际应用中推荐多工具取共识(如pVACtools默认用多个工具的中位数)。
Q4: 新抗原预测的主要假阳性来源?¶
A: (1) 突变未被转录/翻译——需RNA-seq验证表达;(2) MHC结合预测不等于呈递——蛋白酶体可能不在正确位置切割;(3) 被呈递不等于免疫原性——TCR识别是另一个筛选步骤;(4) 体细胞突变调用假阳性——germline变异被误认为体细胞;(5) HLA LOH——肿瘤可能丢失了呈递该新抗原的HLA等位基因。
Q5: HLA LOH对新抗原呈递有什么影响?¶
A: 肿瘤细胞可通过丢失HLA等位基因(LOH at HLA locus)逃逸免疫监视——如果呈递新抗原的HLA等位基因丢失了,新抗原就无法被呈递和识别。预测新抗原时应检查肿瘤是否有HLA LOH(通过LOHHLA工具),如果目标HLA丢失则该通道的新抗原候选无效。
易错点¶
1. 使用肿瘤而非正常组织做HLA分型¶
肿瘤可能有HLA LOH,导致HLA分型不完整。应使用配对正常组织做HLA分型。
2. VEP注释缺少必要插件¶
pVACseq要求VEP注释包含Frameshift和Wildtype插件。缺少这些会导致InDel和移码突变的肽段无法正确生成。
3. IC50阈值过于严格或宽松¶
IC50<50nM过于严格会丢失有效新抗原;>1000nM过于宽松包含太多假阳性。推荐使用%Rank<2(弱结合)或%Rank<0.5(强结合)作为主要标准。
4. 忽略突变的表达验证¶
没有RNA-seq支持的突变可能不被转录。应要求肿瘤RNA VAF>0且位点有reads覆盖。
5. 对所有突变类型一视同仁¶
框移突变(frameshift)产生的新肽段更"外来"(与正常蛋白完全不同),免疫原性通常优于点突变(missense)。排序时应给予框移突变额外权重。
补充知识¶
新抗原疫苗临床进展¶
- mRNA疫苗(如BioNTech的BNT111/autogene cevumeran)
- 多肽疫苗(如NeoVax)
- DC疫苗负载新抗原肽
相关工具¶
- pVACtools:完整新抗原预测流水线
- MuPeXI:新抗原优先级排序
- PRIME:预测呈递的免疫原性肽
- DeepImmuno:深度学习预测免疫原性
- LOHHLA:检测HLA LOH
引用推荐¶
- pVACtools: Hundal et al., Cancer Immunology Research, 2020
- NetMHCpan 4.1b: Reynisson et al., NAR, 2020(4.1b为修正IEDB数据后的重训练版)
- NetMHCpan 4.2: Nilsson et al., Frontiers in Immunology, 2025
- NetMHCIIpan 4.3: Nilsson et al., Science Advances, 2023
- MHCflurry 2.0: O'Donnell et al., Cell Systems, 2020
- Neoantigen review: Schumacher & Schreiber, Science, 2015