4.2 BLAST 与序列相似性搜索:识别序列的身份


4.2 BLAST 与序列相似性搜索:识别序列的身份

本节摘要:BLAST 是生物信息学使用量最大的工具,回答"这段序列与库里什么相似"。本节讲局部比对的思路、E 值的统计含义、五类 BLAST 的分工,以及结果表里每个数字怎么指导判断。

序列相似意味着什么

一段未知序列的第一问永远是"你是谁"。相似性搜索的逻辑地基在 2.7 节已经铺过:演化保守的序列通常功能也保守,所以找到显著相似的已知序列,就能推断未知序列的身份与功能。BLAST(Basic Local Alignment Search Tool)1990 年问世,用启发式的局部比对把大库搜索做到了秒级,三十年后它依然是这个问题的默认答案。

局部比对与全局比对的区别是考点也是实操分岔:局部比对(BLAST、Smith-Waterman 算法)只对齐相似的区段,容忍两端差异——适合找共享结构域的远缘序列;全局比对(Needleman-Wunsch 算法,ClustalW 内核)从头到尾对齐——适合同源序列的精细比较与建树。先 BLAST 找亲戚,再全局比对看差异,是这个问题的标准两步。

E 值:结果的统计脊梁

BLAST 结果表里最重要的是 E 值(期望值):在这么大的库里,纯靠随机能期望看到多少条与目标序列匹配得这么好的结果。E 值 0.001 的意思是"这个相似度随机出现不到千分之一"——它是匹配长度、一致性比例与库大小的综合函数。判读经验:E 值小于 1e-5 视为显著相似(论文常用阈值),1e-20 以下基本是同源实锤;E 值大于 1 则没有任何证据力,哪怕一致性百分比看着很高(短片段碰巧相似很常见)。

与 E 值配套看两个数:一致性百分比(identities)——对齐区内相同残基的占比;覆盖率(query coverage)——查询序列有多大比例参与了对齐。高一致性加高覆盖率是强同源;高一致性但覆盖率低,往往只是共享了一个结构域;覆盖率好但一致性只有三成,可能是远缘同源(蛋白比对里这仍有意义,核酸比对里要警惕)。蛋白比对用 blastp,核酸对蛋白用 blastx——未知转录本先翻译成蛋白再搜,因为蛋白比对能穿越更多的演化时间。

程序 查询 典型用途
blastn 核酸 核酸 物种鉴定、引物验证
blastp 蛋白 蛋白 找同源蛋白、功能推断
blastx 核酸 蛋白 新转录本的身份查询
tblastn 蛋白 核酸(六框翻译) 在未注释基因组里找蛋白
tblastx 核酸 核酸(双翻译) 比较非编码区,较少用

动手跑一次完整查询

以"新测序菌株的一段 16S 序列"为例:

# 远程版(网页 NCBI 的镜像库,小查询够用) blastn -query 16s_unknown.fasta -db nt -remote \ -outfmt "6 qseqid sseqid pident length evalue stitle" \ -max_target_seqs 10 -evalue 1e-5 # 输出为制表符分隔:查询名、命中名、一致性%、对齐长度、E 值、物种描述 # 示例:16s_01 NR_042112.1 99.5 1421 0.0 Bacillus subtilis strain XY-1 # 本地库(大查询、重复查询建本地索引更快) makeblastdb -in my_genomes.fa -dbtype nucl -out local_genomes blastn -query batch16s.fasta -db local_genomes -num_threads 8 \ -outfmt 6 -out hits.tsv

判读这次示例结果:99.5% 的一致性配 0.0 的 E 值,覆盖几乎全长——鉴定为枯草芽孢杆菌近缘株,置信度足够写进论文。若第二名的 E 值与第一名接近但物种不同,说明查询落在属级保守区,鉴定就只能报到属——引物设计在最可变区才能把种分开,就是这个道理。

家族比对:ClustalW 与多序列对齐

单序列问身份,一组序列问关系。多序列比对(MSA)把同源序列排成列,列上保守的位点提示功能约束——催化残基所在列在所有序列里几乎不变。ClustalW 是教学经典(渐进式比对:先两两建距离树,再按树序逐步对齐),如今更常用的 MAFFT 与 MUSCLE 在大序列量下又快又准。MSA 的两个后继用途:剪掉低质量列(trimAl)后喂给建树软件(2.7 节的演化树);在比对上标注催化位点与结构域,用于发表图。注意 MSA 的质量对下游极敏感:一条错序列会把整列拉歪,先查再排是纪律。

什么时候不用 BLAST

BLAST 的启发式在两种场景下要换武器。第一种是短序列(短于 30 bp 的引物、sgRNA、miRNA):启发式种子不够长,漏检严重——直接用精确匹配工具(bowtie 短读模式或单纯的字符串搜索)。第二种是海量查询(百万条读长的分类):BLAST 单条逐搜太慢,改用 Kraken2(k-mer 分类)或 MMseqs2(快速相似性搜索)这类面向通量的工具。BLAST 依然是单条或批量少条查询的王者,但要清楚它是"相似性搜索"这个工具箱里的一员而非全部。

一组真实命中的判读演练

把判读规则落在几行模拟输出上。假设查询是一段未知的转录本序列,blastx 对蛋白库的前三行命中如下:命中一,一致性 41%、覆盖率 92%、E 值 3e-42;命中二,一致性 88%、覆盖率 18%、E 值 1e-15;命中三,一致性 30%、覆盖率 95%、E 值 0.002。判读:命中一跨越长区段、E 值极小,是可靠的远缘同源——蛋白层面的四成一致性已经足够支撑同源与功能推断;命中二一致性很高但只覆盖一小段,判为共享结构域的半截命中,不能据此认亲;命中三覆盖率虽好,但 E 值贴地、一致性三成,属于"有嫌疑但证据不足",标记待查而不是下结论。这三行的组合判读方式,比背任何阈值表都更能防误判。

远缘同源还有一招加成:把多条候选同源序列做多序列比对后重查保守性——真同源会在关键催化残基上保持一致,假的相似在保守位点上露馅。相似性搜索回答"像不像",比对上的保守模式回答"是不是真亲戚",两步连用是这个问题的完整答案。

💡 关键直觉:E 值回答的是"这个相似是不是巧合",覆盖率回答的是"相似有多大范围"。两个指标合起来读,才不会被一条高一致性、低覆盖的半截命中骗去认亲。

序列的身份问题解决了,下一节给整个领域的"粮仓"画张地图:数据与知识都存在哪些公共库。


作者与出处
原作者: 灏天文库
来源:灏天文库
整理: 灏天文库整理
由灏天文库平台收录,内容或由平台用户上传,仅供学习交流
发布者: 作者: 灏天文库 转发
评论区 (0)
U