想象一场十项全能运动会。裁判把100米、跳远、铅球等十个项目的成绩分别按官方计分表折算成分数,再加成一个总分。总分高的拿金牌——因为综合能力强;总分低的,哪怕单项拿了冠军也排不上号。 多基因风险评分(PRS)打分的对象,是你的“基因组”。人体内上千万个基因变异位点,单个位点对疾病的影响微乎其微,但这些微小的效应叠加起来,就足以说明一个人站在人群里的先天风险有多高。把这个“基因十项全能”的总分算出来,就是PRS。 这套系统里有两拨“裁判”:GWAS(全基因组关联分析)负责给每个位点制定计分规则,即估计效应量;PRS算法负责把分加总。可计分规则怎么定才公平?哪些“比赛项目”太水不该计入?欧洲裁判定的计分表能否直接用于亚洲赛场?这四个问题,正好对应PRS领域的四大核心:GWAS效应估计、PRS构建、阈值优化、人群迁移。本文就用这场“十项全能运动会”做主线,把多基因风险评分完整讲透。

岗位关联

理解PRS是AI从业者进入精准医疗与健康管理赛道的钥匙。掌握GWAS效应估计、阈值优化与人群迁移问题,能帮你在医疗健康场景构建更稳健的风险预测模型,避免“换个人群就失效”的工程陷阱。

目录
  1. 可视化演示
  2. 基因组学基础:品读运动员的先天档案
  3. GWAS效应估计:制定公平的计分表
  4. PRS构建方法:给总分算明细账
  5. 阈值优化:划定最优入围线
  6. 人群迁移挑战:计分表换赛场就失灵
  7. 疾病预测应用:总分定奖牌
  8. AI 应用场景
  9. Python 演示
  10. 常见误区
  11. 面试题

可视化演示

通过GWAS扫描、P阈值优化与跨人群迁移三个维度,交互式展示PRS从效应估计到临床应用的完整流程。

本节配有交互动效(进入视口后自动加载,约 3KB)。

基因组学基础:品读运动员的先天档案

十项全能开赛前,裁判会先翻看运动员的档案:身高、体重、擅长项目、既往成绩。不了解这些基本盘,后面任何计分都无从谈起。基因组学之于PRS,就扮演着“运动员档案”的角色——在给一个人算风险总分之前,得先认识他的基因组长什么样、有哪些常见变异、位点之间如何关联。

人类基因组由约30亿个碱基对组成,A、T、C、G四种碱基像字母一样排列在23对染色体上。任何两个人之间,99.9%的序列一模一样,差异只藏在剩下的0.1%里。最常见的差异是单个碱基被替换,比如某个位置多数人是A、少数人是G——这种单碱基变异被称为SNP(单核苷酸多态性)。一个SNP位点上不同的碱基版本叫做等位基因,携带频率较低的那个称为次要等位基因,其占比记作MAF。频率太低的变异(比如低于1%)在几万人的样本里都难见到几个,统计检测的把握就非常小,好比一个冷门到没人参加的比赛项目,裁判根本无法判断参赛者水平。

更让PRS头疼的是SNP之间的“搭伙遗传”。如果两个SNP在染色体上离得很近,它们的等位基因往往不会独立组合,而是倾向于一起传给后代。这种非随机的共遗传现象叫做连锁不平衡(LD)。判断两个位点是否处于LD,要用到下面的D统计量:

回到运动会的比喻:十个高度连锁的SNP,就像同一场比赛被裁判用十个角度重复计了十次分——信息本质只有一份,却让总分虚胖。所以在构建PRS之前,必须先做LD修剪,只保留每个“搭伙团伙”里的代表位点。档案没读透,后面算得越精细,错得越离谱。

Dij=f(AiBj)−f(Ai)×f(Bj)\displaystyle D_{ij} = f(A_i B_j) - f(A_i) \times f(B_j)
  1. 单倍型实际频率 $f(A_iB_j)$群体中,位点i的等位基因A与位点j的等位基因B同时出现在同一条染色体上的真实比例。
    f(AiBj)f(A_i B_j)
  2. 随机组合期望频率 $f(A_i) \times f(B_j)$假如两个位点完全独立遗传,A和B组合出现的理论概率,等于两个等位基因各自频率的乘积。
    f(Ai)×f(Bj)f(A_i) \times f(B_j)
  3. 差值 $D$实际频率减去期望频率。D显著不为0,说明两个位点的遗传并非独立,存在连锁不平衡。
    Dij=f(AiBj)−f(Ai)×f(Bj)D_{ij} = f(A_i B_j) - f(A_i) \times f(B_j)

GWAS效应估计:制定公平的计分表

十项全能的计分表不是随便拍的:国际田联根据历史大赛数据,测算出每个项目成绩对应的分数——百米跑进10秒给多少分,铅球扔出20米给多少分,都有明确规则。PRS的“计分表”来自GWAS(全基因组关联分析),它的任务是在大规模人群里,逐个位点地统计检验:某个基因变异到底跟疾病有没有关系?关系多大?

具体来说,GWAS收集成千上万人的基因型与表型(患病与否、身高血脂等),对每一个SNP位点拟合一个简单的回归模型:

光有β还不够,还得知道这个β是不是“碰巧”估计出来的。统计上要计算t统计量 \(t=\hat{\beta}/SE(\hat{\beta})\),再换算成P值:P值越小,说明观察到的关联越不可能是随机噪声。GWAS通常要检验几十万甚至上百万个位点,为避免“假阳性”,显著性门槛被严格压低到5×10⁻⁸(相当于把0.05除以一百万)。与此同时,几乎所有复杂疾病都呈“多基因结构”:没有哪个位点能单独解释疾病,成千上万个微效位点(每个β都很小)共同决定风险。

所以GWAS这位“总裁判”非常严谨:样本量要够大、回归要调好、P值门槛要够严。因为任何一条不公平的计分规则,都会直接影响后面所有运动员的总分——计分表定得好不好,决定了PRS这座大厦的地基稳不稳。

yi=μ+βxij+εi\displaystyle y_i = \mu + \beta x_{ij} + \varepsilon_i
  1. 表型 $y_i$个体i的观测结果,如患病(记为1)或健康(记为0),也可以是身高等连续数值。
    yiy_i
  2. 基线 $\mu$当个体不携带风险等位基因时(x=0),表型的平均水平。
    μ\mu
  3. 基因型 $x_{ij}$个体i在第j个位点上携带的风险等位基因个数,取值为0、1或2,相当于该项目的“原始成绩”。
    xijx_{ij}
  4. 效应量 $\beta$每增加一个风险等位基因,表型平均上升多少。β越大,这个位点对疾病的影响越强。
    β\beta
  5. 噪声 $\varepsilon_i$环境、测量误差等非遗传因素造成的随机波动。
    εi\varepsilon_i

PRS构建方法:给总分算明细账

计分表到手,接下来就是最核心的一步:加总分。十项全能的总分是十个项目得分的算术和,而PRS则是所有选定位点上“风险等位基因个数×效应量”的加权和。这条公式就是PRS的定义本身:

总分虽然公式简单,工程细节却不少。第一步是选择位点:最简单的策略是“P值低于某阈值就入选”,因为把大量P值不显著的噪声位点加进来,等于往总分里掺水。第二步是LD修剪:把处于连锁不平衡的位点按P值或效应排序,只保留每个LD区段的代表位点,避免重复计分。第三步是标准化:把PRS转换成均值为0、方差为1的Z分数,这样不同队列算出的PRS才具备可比性——就像十项全能最终成绩要按同一套单位排名。最后,必须在独立验证集(不参与GWAS的样本)上评估PRS效果,防止“跟训练数据对答案”。

加总分看似小学生都会,但正是这些细节——选谁进总分、谁的权重是多少、分数如何标准化——决定了PRS到底是一张可靠的成绩单,还是一张自欺欺人的草稿纸。

PRSi=∑j=1mβ^jxij\displaystyle PRS_i = \sum_{j=1}^{m} \hat{\beta}_j x_{ij}
  1. 位点数目 $m$经过筛选后纳入PRS的SNP数量,可能从几十到上百万不等。
    mm
  2. GWAS效应量 $\hat{\beta}_j$第j个位点在发现队列中估计出的效应量,决定了该位点在总分中的权重,相当于“计分表的单项分值”。
    β^j\hat{\beta}_j
  3. 风险基因型 $x_{ij}$个体i在第j个位点上携带的风险等位基因个数(0/1/2),相当于这个项目的“原始成绩”。
    xijx_{ij}
  4. 加权求和 $\sum_{j=1}^{m}$把所有位点的“成绩×权重”逐个相加,得到个体的PRS原始总分。
    ∑j=1mβ^jxij\sum_{j=1}^{m} \hat{\beta}_j x_{ij}

阈值优化:划定最优入围线

运动会组委会要决定:哪些比赛项目计入总分?有些项目成绩受偶然因素影响大、区分度低,计入总分反而干扰对运动员真实水平的判断。PRS面对的“项目入选线”就是P值阈值:P值越小,位点入选的门槛越严格,只有证据最强的位点才能进入总分。

阈值选多少,不能拍脑袋。实践中做一次“阈值扫描”:从最严格(P<1e-8,只留几十个顶尖位点)到最宽松(P<1,全部位点),按一定间隔取一系列阈值,在每个阈值下重建PRS并在验证集上测预测精度,最后选预测精度最高的那一个。形式化地写:

阈值扫描必须搭配一个配角——交叉验证。若只在同一个验证集上反复调阈值,阈值本身会“记住”这个数据集的个性,换一个新人群就失灵,这就是过拟合。K折交叉验证把数据切成K份,轮流拿一份当测试集、其余当训练集,把K次结果平均,能有效缓解过拟合。此外,阈值与样本量存在权衡:样本量越大,GWAS估计越准,就可以放宽阈值、纳入更多弱效应位点来提升预测力。

阈值选择就像划定高考录取线:分数线太高,只录几个状元,样本太少统计不稳;分数线太低,阿猫阿狗都进,整体水平被稀释。最优的“线”永远是在信号与噪声之间找到的那个平衡点。

T∗=arg⁡max⁡TR2(T)\displaystyle T^* = \arg\max_{T} R^2(T)
  1. 阈值 $T$候选的P值入围线,控制入选位点的数量与质量。
    T∈[10−8,1]T \in [10^{-8}, 1]
  2. 预测精度 $R^2(T)$用阈值T构建的PRS在验证集上解释表型变异的比例,等于 \(1 - SS_{res}/SS_{tot}\),数值越大说明预测越准。
    R2(T)=1−SSresSStot\displaystyle R^2(T) = 1 - \frac{SS_{res}}{SS_{tot}}
  3. 选择算子 $\arg\max$在所有候选阈值里,挑出使R²最大的那一个。
    arg⁡max⁡TR2(T)\arg\max_{T} R^2(T)
  4. 最优阈值 $T^*$最终选定的入围线,也是PRS落地时使用的核心参数。
    T∗T^*

人群迁移挑战:计分表换赛场就失灵

男子十项全能的计分表,能直接给女子十项全能用吗?当然不行。两个赛场的生理基线不同,同样的成绩对应的“含金量”完全不同。PRS也一样:在某个祖先人群(比如欧洲人)里估计的GWAS效应量,搬到另一个祖先人群(比如东亚人、非洲人)里,往往水土不服。这就是PRS的人群迁移问题。

根源出在三个层面。第一,人群分层:人类按地理与历史分成不同亚群,亚群之间的交配并不完全随机,导致遗传结构存在系统性差异。第二,等位基因频率差异:同一个风险等位基因,在欧洲人群里频率可能是40%,在东亚人群里只有5%——频率太低时,效应量估计的可信度骤降。第三,LD模式差异:不同人群的“搭伙遗传”形态不同,在欧洲人群与疾病关联的那个位点,可能只是“代表”了旁边的因果位点,而到了东亚人群,这个代表与真正的因果位点关系就变了。跨人群的PRS预测精度,通常比同人群显著下降。

人群分化程度可以用F_ST量化:

正因如此,从欧洲人群数据训练出的优秀PRS,挪到非洲人群可能退化成“掷硬币”。目前研究界的主流对策是做人群特异的GWAS、用目标人群的LD参考面板重新校准,或者干脆在同一祖先人群内部完成训练与部署。计分表要按赛场定制——这个道理,遗传学家和运动会组委会都深有体会。

FST=σp2pˉ(1−pˉ)\displaystyle F_{ST} = \frac{\sigma_p^2}{\bar{p}(1 - \bar{p})}
  1. 平均频率 $\bar{p}$所有亚群中某等位基因频率的算术平均。
    pˉ=1K∑k=1Kpk\displaystyle \bar{p} = \frac{1}{K}\sum_{k=1}^{K} p_k
  2. 频率方差 $\sigma_p^2$各亚群频率围绕平均值的离散程度,方差越大说明亚群间差异越大。
    σp2=1K∑k=1K(pk−pˉ)2\displaystyle \sigma_p^2 = \frac{1}{K}\sum_{k=1}^{K}(p_k - \bar{p})^2
  3. 分母 $\bar{p}(1-\bar{p})$二项分布下频率波动的理论上限,用于把方差标准化到0到1区间。
    pˉ(1−pˉ)\bar{p}(1 - \bar{p})
  4. 指标 $F_{ST}$取值0到1,0表示亚群间无分化,1表示完全分化。F_ST越大,跨人群搬运PRS越危险。
    FST∈[0,1]F_{ST} \in [0, 1]

疾病预测应用:总分定奖牌

运动会闭幕式上,裁判按总分给运动员颁发金银铜牌。PRS的终极应用也是“按分定等级”:把人群按PRS百分位划分成低风险、中风险、高风险三个梯队,比如后20%为低风险、前20%为高风险——目标不是精确预言谁一定生病,而是把高风险人群从茫茫人海中筛出来,优先安排筛查和干预。

预测能力的强弱,常用“风险倍数”来表述:对比最高20%与最低20%人群的患病率。假设高PRS组的患病率是20%,低PRS组是5%,则风险倍数用优势比(OR)刻画:

PRS落地的正确姿势是“辅助而非替代”。临床上它常与年龄、血压、生活方式、家族史等传统因素一起进入风险模型,帮助医生决定:血脂轻度升高且PRS高的人,要不要提前用药;携带高PRS的乳腺癌风险人群,要不要加密筛查频率。在新药研发中,PRS还可以用来筛选高风险受试者入组,以提高临床试验的统计功效。但必须记住,PRS目前只能解释复杂疾病10%-30%的遗传方差,对个体的预测精度有限;加上隐私保护、保险歧视、伦理公平等议题,PRS在临床上仍需谨慎落地。

金牌不是冠军的保证书,总分只是对综合能力的概率性估计。PRS报告也从来不是诊断书,而是一张“站在哪个梯队”的参考凭证。把十项全能的智慧用在医疗上,最重要的不是算出那个分数,而是知道分数能做什么、不能做什么。

OR=ph/(1−ph)pl/(1−pl)\displaystyle OR = \frac{p_h / (1 - p_h)}{p_l / (1 - p_l)}
  1. 高风险组患病概率 $p_h$PRS排名前20%的人在未来某段时间内患病的比例。
    php_h
  2. 患病优势 $p_h/(1-p_h)$高风险组内“病了对没病”的比率,体现疾病在该组内的相对权重。
    ph1−ph\frac{p_h}{1 - p_h}
  3. 低风险组患病优势 $p_l/(1-p_l)$同理,低风险组(后20%)的患病与未患病之比。
    pl1−pl\frac{p_l}{1 - p_l}
  4. 风险倍数 $OR$两个优势比相除。OR=3表示高PRS组的患病优势是低PRS组的3倍。
    OR=ph/(1−ph)pl/(1−pl)\displaystyle OR = \frac{p_h/(1-p_h)}{p_l/(1-p_l)}

AI 应用场景

健康管理平台的慢性病风险预警

阶段:模型应用与风险评估

解决的问题:传统体检只看单一指标(血糖、血压、血脂),难以整合数千个基因位点的微弱信号。PRS把基因风险加总成一个直观分数,与临床指标结合,能绘制出个性化的“先天风险画像”,让预防措施有的放矢。

具体案例:某健康管理平台为用户计算冠心病PRS,将PRS排名前20%的人群配合低密度脂蛋白筛查,早期动脉粥样硬化的检出比例提升了2.3倍,高风险用户被提前引导至生活方式干预课程。

新药研发中的遗传分层入组

阶段:数据分析与目标人群选择

解决的问题:临床试验中,异质性人群会稀释药效信号,导致“明明有效却测不出来”。用PRS筛选出遗传高风险人群入组,可以大幅提升试验的统计功效,降低研发成本。

具体案例:一款降脂新药在II期试验中,用PRS筛选冠心病高风险受试者入组,在同等统计功效下受试人数减少了30%,试验周期缩短了将近一个季度。

医院多基因风险门诊的临床决策支持

阶段:临床决策支持

解决的问题:医生面对海量基因位点数据往往无从下手。PRS把几十万个位点压缩成一个分数,再叠加临床因素生成结构化报告,辅助医生做筛查与用药决策。

具体案例:某三甲医院心内科开设多基因风险门诊,医生根据“PRS高风险+血脂临界值”的患者组合,优先启用他汀类药物干预;一年后该组合人群的心血管事件发生率较对照组下降18%。

Python 演示

python71 行
import mathimport numpy as np  def normal_cdf(z):    """Standard normal CDF via error function."""    return 0.5 * (1 + math.erf(z / math.sqrt(2)))  def simulate_gwas(n_var=2000, n_causal=60, n_train=800,                  n_test=400, h2=0.30, seed=42):    """Simulate GWAS discovery cohort and independent test set.     Returns summary statistics from discovery cohort,    plus test genotypes and phenotypes for PRS evaluation.    """    rng = np.random.default_rng(seed)    maf = rng.uniform(0.05, 0.5, n_var)    beta_true = np.zeros(n_var)    causal_idx = rng.choice(n_var, n_causal, replace=False)    beta_true[causal_idx] = rng.normal(0, 0.12, n_causal)     def make_genotypes(n):        g = rng.binomial(2, maf, size=(n, n_var)).astype(float)        return (g - g.mean(axis=0)) / (g.std(axis=0) + 1e-8)     g_train = make_genotypes(n_train)    g_test = make_genotypes(n_test)     def make_phenotype(g):        genetic = g @ beta_true        noise_scale = np.sqrt(np.var(genetic) * (1 - h2) / h2)        return genetic + rng.normal(0, noise_scale, g.shape[0])     y_train = make_phenotype(g_train)    y_test = make_phenotype(g_test)     y_c = y_train - y_train.mean()    xy = g_train.T @ y_c    xx = np.sum(g_train ** 2, axis=0) + 1e-10    beta_hat = xy / xx    rss = np.sum(y_c ** 2) - xy ** 2 / xx    se = np.sqrt(rss / (n_train - 2) / xx)    t_stat = beta_hat / se    p_values = 2 * (1 - normal_cdf(np.abs(t_stat)))    return beta_hat, p_values, g_test, y_test  def compute_prs(genotypes, beta):    """PRS: weighted sum of risk allele dosage."""    return genotypes @ beta  def threshold_scan(beta_hat, p_values, g_test, y_test, cutoffs):    """Scan p-value thresholds, report correlation on test set."""    results = []    for cutoff in cutoffs:        mask = p_values < cutoff        prs = compute_prs(g_test[:, mask], beta_hat[mask])        corr = np.corrcoef(prs, y_test)[0, 1]        results.append((cutoff, int(mask.sum()), corr))    return results  if __name__ == "__main__":    beta_hat, p_values, g_test, y_test = simulate_gwas()    grid = [1e-8, 1e-6, 1e-4, 0.01, 0.05, 0.2, 0.5, 1.0]    print(f"{'Pcut':>8}  {'Snps':>6}  {'TestCorr':>9}")    for cutoff, n_sel, corr in threshold_scan(            beta_hat, p_values, g_test, y_test, grid):        print(f"{cutoff:10.1e}  {n_sel:6d}  {corr:+10.3f}")
目的:完整模拟“GWAS发现队列估计效应量 → 独立验证集上阈值扫描 → 评估PRS预测能力”的经典流程,直观展示不同P值阈值对入选位点数和预测精度的影响。
  1. beta_true[causal_idx] = rng.normal(0, 0.12, n_causal)给60个因果位点赋予真实效应量,其余位点效应为0
  2. g = rng.binomial(2, maf, size=(n, n_var)).astype(float)按次要等位基因频率模拟每个个体在每个位点上的风险等位基因个数0/1/2
  3. genetic = g @ beta_true遗传组分 = 基因型矩阵 × 真实效应向量,这就是模拟的“遗传总分”
  4. beta_hat = xy / xxGWAS逐个位点做简单线性回归,估计效应量β
  5. p_values = 2 * (1 - normal_cdf(np.abs(t_stat)))由t统计量换算P值,P值越小关联越可信
  6. return genotypes @ betaPRS的本质:风险等位基因个数 × 效应量的加权和
  7. mask = p_values < cutoff按P值阈值筛出“入围位点”,对应正文的阈值优化
  8. corr = np.corrcoef(prs, y_test)[0, 1]用验证集上PRS与真实表型的相关系数衡量预测精度

常见误区

误区“把GWAS里所有位点都放进PRS,信息量最大,预测肯定最准。”

正解位点多≠准。GWAS的效应估计自带噪声,把大量与疾病无关的位点(P值很大)加权进来,等于把噪声也加进了总分。就像十项全能里把“评委拍脑袋的表演项目”也计入总分,总分反而不能反映真实水平。正确的做法是在验证集上做阈值扫描,找到信号与噪声的平衡点。

为何常见:直觉上“信息越多越好”,却忽略了估计误差会随噪声位点数量累积。

误区“测个基因算一下PRS,就能判定我将来一定会得糖尿病。”

正解PRS是概率性的风险分层,不是定论。它只能解释复杂疾病10%-30%的遗传方差,环境与生活方式的影响同样重要。就像十项全能总分高说明综合能力强,但不代表每场比赛都稳赢。临床上PRS必须结合年龄、血压、家族史等综合判断,不能单独作为诊断依据。

为何常见:媒体宣传常把“风险预测”简化为“基因决定命运”,导致大众误解PRS的性质。

误区“在欧洲人群里训练的PRS模型,交叉验证R²挺高,直接部署到任何国家的医院都能用。”

正解跨人群迁移是PRS最大的“坑”之一。不同人群的等位基因频率、LD模式、环境暴露都存在差异,欧洲人群构建的PRS放到东亚或非洲人群时,预测精度会大幅下降——这正是F_ST刻画的群体分化。男子十项全能计分表不能直接给女子比赛用,换人群必须先做校准或重训。

为何常见:把“通用大模型”的思维照搬到遗传预测,忽略了群体遗传结构的地域性。

误区“GWAS里P值最小的位点,肯定是对疾病影响最强的。”

正解P值衡量的是“统计显著性”(证据强度),β才是效应量(影响大小)。大样本下,即使效应很微弱的位点也能获得极小P值;反之,小样本里强效应位点的P值也可能不显著。就像裁判的“打分把握”和“选手的真实实力”是两回事,不能混为一谈。

为何常见:混淆了假设检验与效应估计两个不同的统计概念。

面试题

Q1. 多基因风险评分(PRS)的核心思想是?

单选题 · easy

  • A.把多个微效基因位点的效应加总← 正确答案
  • B.只看单个基因的致病突变
  • C.完全忽略遗传因素的影响
  • D.用环境指标替代基因数据

答案:A。PRS的精髓在于“多基因”——复杂疾病由成千上万个微效位点共同作用,PRS把它们的效应加权求和,就像十项全能把十个项目的分数加总。单基因突变、忽略遗传或只用环境指标,都不是PRS的定义。

Q2. GWAS中效应量β表示什么?

单选题 · easy

  • A.每个风险等位基因对表型平均影响← 正确答案
  • B.样本中基因突变发生总次数多少
  • C.环境因素对疾病贡献的大小程度
  • D.位点之间连锁不平衡的强弱水平

答案:A。在回归模型 y=μ+βx+ε 中,β表示每多一个风险等位基因,表型平均增加的量,相当于计分表的“单项分值”。它衡量的是影响大小,与突变总数、环境贡献、LD强弱都不是一回事。

Q3. PRS公式 ∑βⱼxᵢⱼ 中,xᵢⱼ的含义是?

单选题 · easy

  • A.个体i在位点j上的风险等位基因个数← 正确答案
  • B.个体i在整个基因组上的变异总数
  • C.位点j在GWAS中估算出的效应量大小
  • D.位点j的P值经过对数变换后的值

答案:A。xᵢⱼ是基因型剂量,取值0、1、2,代表个体i在第j个位点上携带的风险等位基因个数,相当于运动员在某个项目上的“原始成绩”。效应量是βⱼ,P值则是筛选位点时用的统计量,两者都对应不同的符号。

Q4. 关于P值阈值扫描优化PRS,下列说法正确的是?

多选题 · mid

  • A.阈值太严会丢失大量弱效应位点← 正确答案
  • B.阈值太松会纳入过多噪声位点← 正确答案
  • C.最优阈值应在验证集上交叉验证确定← 正确答案
  • D.阈值选取对PRS预测精度没有影响

答案:ABC。阈值扫描是在“信号”与“噪声”之间找平衡:太严只留少数顶尖位点、信息浪费;太松噪声混入、虚增权重;而最优阈值必须用交叉验证在独立验证集上确定,否则会过拟合。D与事实完全相反。

Q5. 为什么PRS构建前通常要做LD修剪?

单选题 · mid

  • A.连锁位点携重复信息,会虚增权重← 正确答案
  • B.为了降低样本测序的成本开销
  • C.为了删除所有不显著的位点
  • D.为了让基因型数据变为连续值

答案:A。连锁不平衡使相邻SNP携带重复的遗传信息,全部计入等于同一场比赛被重复计分,会虚高风险分数。LD修剪只保留每个“搭伙团伙”的代表位点,与测序成本、显著性筛选、数据类型转换都无关。

Q6. 交叉验证在PRS阈值优化中的作用是?

单选题 · mid

  • A.防止最优阈值在验证集上过拟合← 正确答案
  • B.提高GWAS原始数据的基因分型质量
  • C.让所有位点的效应量变得更大
  • D.消除环境因素对表型的影响

答案:A。如果反复在同一个验证集上调阈值,模型会“记住”该数据集的个性,换个人群就失效。交叉验证把数据切分成多份轮流测试,给出更可信的泛化估计。它不改变基因型质量、不放大效应量,也消除不了环境噪声。

Q7. 以下哪些因素会导致PRS跨人群预测能力下降?

多选题 · hard

  • A.不同人群的等位基因频率存在差异← 正确答案
  • B.不同人群的连锁不平衡模式不同← 正确答案
  • C.发现人群与目标人群遗传结构不同← 正确答案
  • D.目标人群的基因组不包含任何变异

答案:ABC。跨人群预测衰减的三大根源正是频率差异、LD模式差异和人群分层导致的遗传结构差异——它们让“发现人群的计分表”在目标人群里失灵。D是荒谬选项,任何人群的基因组都包含丰富的变异。

Q8. F_ST数值增大,说明什么?

单选题 · mid

  • A.各亚群间的等位基因频率分化加剧← 正确答案
  • B.各亚群内的基因型完全相同
  • C.该位点的遗传效应随之迅速增大
  • D.跨人群PRS的预测精度显著提高

答案:A。F_ST衡量的是亚群间等位基因频率的分化程度,数值越大说明“欧洲人身上A多、非洲人身上G多”这类差异越明显,跨人群迁移PRS越危险。它与亚群内基因型、位点效应量的大小无关,更不会提高预测精度。

Q9. 评价PRS预测性能时,哪些做法是合理的?

多选题 · hard

  • A.独立验证集计算相关系数或AUC← 正确答案
  • B.只报告训练集上的预测性能
  • C.交叉验证评估阈值泛化表现← 正确答案
  • D.GWAS的P值可当作预测精度

答案:AC。PRS必须拿到独立验证集或交叉验证中去评估,用相关系数、AUC等指标衡量真实预测力。只报训练集性能是典型的过拟合自欺;而GWAS的P值只刻画关联检验的显著性,不能代表预测精度。

Q10. PRS在临床应用的正确定位是?

单选题 · hard

  • A.与临床因素结合做风险分层辅助决策← 正确答案
  • B.完全取代基因测序直接确诊疾病
  • C.能准确预测个体发病的确切时间
  • D.仅适用于单基因遗传病检测

答案:A。PRS输出的是概率性风险分层,必须与年龄、血压、家族史等临床因素结合,辅助医生做筛查与干预决策。它不能替代确诊手段,无法精确预测发病时间,且主要面向多基因复杂疾病而非单基因病——金牌只是参考,不是判决书。