You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Unigram和Bigram模型计算序列AGCTTTCGA的下一个最可能字符

用Unigram和Bigram模型预测序列下一个字符的分步指南

针对你的序列 AGCTTTCGA,我来一步步拆解如何用两种模型计算下一个最可能的字符,帮你理清条件概率公式的应用逻辑:


一、Unigram模型计算逻辑

Unigram模型只关注单个字符的出现频率,下一个字符的概率等于该字符在序列中的出现次数除以总字符数,概率最高的就是最可能的候选。

  1. 先统计每个字符的出现次数(从你列出的unigrams里整理):

    • A:出现2次
    • G:出现2次
    • C:出现2次
    • T:出现3次
    • 总字符数:9
  2. 计算每个字符的概率:

    • ( P(A) = \frac{2}{9} \approx 0.22 )
    • ( P(G) = \frac{2}{9} \approx 0.22 )
    • ( P(C) = \frac{2}{9} \approx 0.22 )
    • ( P(T) = \frac{3}{9} = 0.33 )
  3. 结论:T的概率最高,所以Unigram模型预测下一个最可能的字符是**T**。


二、Bigram模型计算逻辑

Bigram模型依赖前一个字符与当前字符的共现频率,你提到的条件概率公式 ( p(w_2|w_1) = \frac{\text{count}(w_1,w_2)}{\text{count}(w_1)} ),这里的 ( w_1 ) 是序列的最后一个字符(我们要预测它后面的字符 ( w_2 )),具体步骤如下:

  1. 先整理关键统计数据:

    • 单个字符的出现次数(和Unigram一致):A:2,G:2,C:2,T:3
    • Bigram的共现次数(从你列出的bigrams统计):
      • AG:1,GC:1,CT:1,TT:2,TC:1,CG:1,GA:1
  2. 确定目标计算:你的序列最后一个字符是A,所以我们需要计算所有可能的 ( p(X|A) )(即A后面跟着字符X的概率):

    • 对于X=G:( p(G|A) = \frac{\text{count}(AG)}{\text{count}(A)} = \frac{1}{2} = 0.5 )
    • 对于X=C:序列中没有AC这个bigram,所以( p(C|A) = \frac{0}{2} = 0 )
    • 对于X=T:序列中没有AT这个bigram,所以( p(T|A) = \frac{0}{2} = 0 )
  3. 结论:G的条件概率最高,所以Bigram模型预测下一个最可能的字符是**G**。


内容的提问来源于stack exchange,提问作者Ollu_

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 07:21:35