思路一:索引法
局部联配,所以对两段相似度较高的碱基序列就不要求处于临近的位置,通过比较哈希索引的偏移,我们可以方便地实现这一点。
思路二:最大期望算法(expectation maximization:EM)
对这种迭代算法一个通常的比喻是:要均匀地把饭分到两个碗里面,先随机分配,看到那个碗里面饭比较多,就从中舀一些到另外一个碗里面去,直到看上去两个碗里面的饭完全一样为止。
- 将多条序列随机排列形成一个多序列联配结果
- 选择一个联配宽度
- 基于联配结果和宽度构建初始PSSM矩阵
- 利用该PSSM对每条序列进行逐位点扫描
- 计算每条序列各个位点与PSSM的匹配概率
- 合计一条序列的所有匹配概率值,将上一步算出的匹配概率与这个总和相除。
- 对所有序列进行上述运算
- 基于上述步骤获得的匹配概率值更新该PSSM
- 重复步骤4~8一百次以上,直到PSSM各列的碱基频率不再变化为止。
示意图见下: