序列纠错方法、装置、设备和存储介质制造方法及图纸

技术编号:27747417 阅读:25 留言:0更新日期:2021-03-19 13:42
公开了一种序列纠错方法、装置、设备和存储介质,属于计算机技术领域。包括:获取m条副本序列,每条副本序列与原始序列相比有k个位置的元素不同;将m条副本序列中在各个位置上占比最大的元素作为目标序列中处于对应位置的元素;若存在至少一条副本序列与目标序列相比有少于或多于k个位置的元素不同,则确定m条副本序列中每条副本序列与目标序列相比元素不同的位置,得到m个位置集合;根据m个位置集合中的位置值对目标序列中的元素进行替换,直至目标序列与每条副本序列相比均有k个位置的元素不同后,将目标序列作为结果序列。本申请根据m个位置集合纠正目标序列来得到正确的结果序列,提高了根据副本序列还原原始序列时的成功率。

【技术实现步骤摘要】
序列纠错方法、装置、设备和存储介质
本申请涉及计算机
,特别涉及一种序列纠错方法、装置、设备和存储介质。
技术介绍
DNA(Deoxyribonucleicacid,脱氧核糖核酸)存储技术中,在进行数据写入(即DNA合成)时,会由原始的DNA链复制得到多条DNA副本链,该多条DNA副本链中的每条DNA副本链与原始的DNA链相比有且仅有2个位置的碱基复制出错。在进行数据读取(即DNA测序)时,需要对该多条DNA副本链进行纠错,以得到正确的DNA结果链。目前,在对多条DNA副本链进行纠错时,是通过纵向比较该多条DNA副本链中相同位置的碱基占比,将该多条DNA副本链中在各个位置上占比最大的碱基作为正确碱基并记录在DNA结果链的对应位置处。然而,上述纠错方式中,可能在某一位置出现多个碱基的占比相同且均是最大,此时将无法选择出正确碱基。并且,多条DNA副本链中的多数DNA副本链可能会在某一位置因复制出错而出现同一错误碱基,继而会导致DNA结果链在此位置处记录的是此错误碱基。如此,导致根据副本序列还原原始序列时的成功率较低。
技术实现思路
本申请实施例提供了一种序列纠错方法、装置、设备和存储介质,可以提高根据副本序列还原原始序列时的成功率。所述技术方案如下:第一方面,提供了一种序列纠错方法,所述方法包括:获取m条副本序列,所述m条副本序列中每条副本序列均是根据原始序列得到,所述每条副本序列包括多种类型的元素,所述每条副本序列与所述原始序列相比有k个位置的元素不同,所述m和所述k均为正整数;将所述m条副本序列中在各个位置上占比最大的元素作为目标序列中处于对应位置的元素,得到所述目标序列;若所述m条副本序列中存在至少一条副本序列与所述目标序列相比有少于k个位置或多于k个位置的元素不同,则确定所述m条副本序列中每条副本序列与所述目标序列相比元素不同的位置,得到m个位置集合;根据所述m个位置集合中的位置值对所述目标序列中的元素进行替换,直至所述目标序列与所述m条副本序列中每条副本序列相比均有k个位置的元素不同后,将所述目标序列作为结果序列。在本申请中,可以根据m个位置集合中的位置值对目标序列进行纠正,以得到正确的结果序列,从而提高了根据副本序列还原原始序列时的成功率。本申请实施例适用于对存在固定个数(即k个)错误的副本序列的复原,从而不仅可以应用于DNA存储
,在DNA测序阶段使用,也可以应用于密码学
,在解密阶段使用。可选地,所述序列为DNA序列,所述元素为碱基;或者,所述序列为字符序列,所述元素为字符。可选地,所述根据所述m个位置集合中的位置值对所述目标序列中的元素进行替换,包括:依次根据所述m个位置集合中的每个位置值对所述目标序列中对应位置的元素进行替换,直至所述目标序列与所述m条副本序列中每条副本序列相比均有k个位置的元素不同为止。可选地,所述根据所述m个位置集合中的位置值对所述目标序列中的元素进行替换,包括:按照位置值出现次数由大到小的顺序,对所述m个位置集合中的所有位置值进行排序;依次根据排序后的所有位置值中的每个位置值对所述目标序列中对应位置的元素进行替换,直至所述目标序列与所述m条副本序列中每条副本序列相比均有k个位置的元素不同为止。可选地,所述根据所述m个位置集合中的位置值对所述目标序列中的元素进行替换,包括:根据所述目标序列末尾的n个元素获取所述原始序列的序列信息,所述n为正整数;根据所述原始序列的序列信息,以及根据所述m个位置集合、所述目标序列、所述目标序列中处于所述m个位置集合对应的各个位置的元素中的至少一项,对所述m个位置集合中的所有位置值进行排序;依次根据排序后的所有位置值中的每个位置值对所述目标序列中对应位置的元素进行替换,直至所述目标序列与所述m条副本序列中每条副本序列相比均有k个位置的元素不同为止。可选地,所述原始序列的序列信息包括所述原始序列中各种类型的元素的占比、所述原始序列中各种类型的元素的个数、根据所述原始序列得到所述副本序列时的易出错位置中的至少一项。可选地,所述根据所述m个位置集合中的位置值对所述目标序列中的元素进行替换,包括:根据所述m个位置集合中每个位置集合的位置值个数,确定所述每个位置集合中的位置值对应的位置是第一位置还是第二位置,所述第一位置是所述目标序列与所述原始序列相比元素不同的位置,所述第二位置是所述副本序列与所述原始序列相比元素不同的位置;对所述目标序列中处于所述第一位置的元素进行替换,直至所述目标序列与所述m条副本序列中每条副本序列相比均有k个位置的元素不同为止。第二方面,提供了一种序列纠错装置,所述装置包括:第一获取模块,用于获取m条副本序列,所述m条副本序列中每条副本序列均是根据原始序列得到,所述每条副本序列包括多种类型的元素,所述每条副本序列与所述原始序列相比有k个位置的元素不同,所述m和所述k均为正整数;第二获取模块,用于将所述m条副本序列中在各个位置上占比最大的元素作为目标序列中处于对应位置的元素,得到所述目标序列;确定模块,用于在所述m条副本序列中存在至少一条副本序列与所述目标序列相比有少于k个位置或多于k个位置的元素不同的情况下,确定所述m条副本序列中每条副本序列与所述目标序列相比元素不同的位置,得到m个位置集合;替换模块,用于根据所述m个位置集合中的位置值对所述目标序列中的元素进行替换,直至所述目标序列与所述m条副本序列中每条副本序列相比均有k个位置的元素不同后,将所述目标序列作为结果序列。可选地,所述序列为DNA序列,所述元素为碱基;或者,所述序列为字符序列,所述元素为字符。可选地,所述替换模块用于:依次根据所述m个位置集合中的每个位置值对所述目标序列中对应位置的元素进行替换,直至所述目标序列与所述m条副本序列中每条副本序列相比均有k个位置的元素不同为止。可选地,所述替换模块用于:按照位置值出现次数由大到小的顺序,对所述m个位置集合中的所有位置值进行排序;依次根据排序后的所有位置值中的每个位置值对所述目标序列中对应位置的元素进行替换,直至所述目标序列与所述m条副本序列中每条副本序列相比均有k个位置的元素不同为止。可选地,所述替换模块用于:根据所述目标序列末尾的n个元素获取所述原始序列的序列信息,所述n为正整数;根据所述原始序列的序列信息,以及根据所述m个位置集合、所述目标序列、所述目标序列中处于所述m个位置集合对应的各个位置的元素中的至少一项,对所述m个位置集合中的所有位置值进行排序;依次根据排序后的所有位置值中的每个位置值对所述目标序列中对应位置的元素进行替换,直至所述目标序列与所述m条副本序列中每条副本序列相比均有k个位置的元素不同为止。可选地,所述原始序列的序列信息包括所述原始序列中各种类型的元素的占比、所述原始序列中各种类型的元素的个数、根据所本文档来自技高网
...

【技术保护点】
1.一种序列纠错方法,其特征在于,所述方法包括:/n获取m条副本序列,所述m条副本序列中每条副本序列均是根据原始序列得到,所述每条副本序列包括多种类型的元素,所述每条副本序列与所述原始序列相比有k个位置的元素不同,所述m和所述k均为正整数;/n将所述m条副本序列中在各个位置上占比最大的元素作为目标序列中处于对应位置的元素,得到所述目标序列;/n若所述m条副本序列中存在至少一条副本序列与所述目标序列相比有少于k个位置或多于k个位置的元素不同,则确定所述m条副本序列中每条副本序列与所述目标序列相比元素不同的位置,得到m个位置集合;/n根据所述m个位置集合中的位置值对所述目标序列中的元素进行替换,直至所述目标序列与所述m条副本序列中每条副本序列相比均有k个位置的元素不同后,将所述目标序列作为结果序列。/n

【技术特征摘要】
1.一种序列纠错方法,其特征在于,所述方法包括:
获取m条副本序列,所述m条副本序列中每条副本序列均是根据原始序列得到,所述每条副本序列包括多种类型的元素,所述每条副本序列与所述原始序列相比有k个位置的元素不同,所述m和所述k均为正整数;
将所述m条副本序列中在各个位置上占比最大的元素作为目标序列中处于对应位置的元素,得到所述目标序列;
若所述m条副本序列中存在至少一条副本序列与所述目标序列相比有少于k个位置或多于k个位置的元素不同,则确定所述m条副本序列中每条副本序列与所述目标序列相比元素不同的位置,得到m个位置集合;
根据所述m个位置集合中的位置值对所述目标序列中的元素进行替换,直至所述目标序列与所述m条副本序列中每条副本序列相比均有k个位置的元素不同后,将所述目标序列作为结果序列。


2.如权利要求1所述的方法,其特征在于,所述序列为脱氧核糖核酸DNA序列,所述元素为碱基;或者,所述序列为字符序列,所述元素为字符。


3.如权利要求1或2所述的方法,其特征在于,所述根据所述m个位置集合中的位置值对所述目标序列中的元素进行替换,包括:
依次根据所述m个位置集合中的每个位置值对所述目标序列中对应位置的元素进行替换,直至所述目标序列与所述m条副本序列中每条副本序列相比均有k个位置的元素不同为止。


4.如权利要求1或2所述的方法,其特征在于,所述根据所述m个位置集合中的位置值对所述目标序列中的元素进行替换,包括:
按照位置值出现次数由大到小的顺序,对所述m个位置集合中的所有位置值进行排序;
依次根据排序后的所有位置值中的每个位置值对所述目标序列中对应位置的元素进行替换,直至所述目标序列与所述m条副本序列中每条副本序列相比均有k个位置的元素不同为止。


5.如权利要求1或2所述的方法,其特征在于,所述根据所述m个位置集合中的位置值对所述目标序列中的元素进行替换,包括:
根据所述目标序列末尾的n个元素获取所述原始序列的序列信息,所述n为正整数;
根据所述原始序列的序列信息,以及根据所述m个位置集合、所述目标序列、所述目标序列中处于所述m个位置集合对应的各个位置的元素中的至少一项,对所述m个位置集合中的所有位置值进行排序;
依次根据排序后的所有位置值中的每个位置值对所述目标序列...

【专利技术属性】
技术研发人员:戴俊彪高鲁娜李敏黄小罗
申请(专利权)人:中国科学院深圳先进技术研究院
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1