专利名称:一种dna序列数据压缩系统的利记博彩app
技术领域:
本发明涉及数据压缩领域,特别涉及一种基于文化基因近似重复矢量模型的DNA 序列数据无损压缩系统。
背景技术:
DNA是物种细胞内用于存储遗传指令信息的双链状聚合物,是生物生存、延续与发 展的重要物质基础。DNA序列数据是DNA物质在生物信息学(Bioinformatics)上的抽象 模型,包含了完整的遗传信息,具有重要的科研价值与社会意义。为获得各种生物的遗传信 息,各种DNA测序工程陆续展开,产生了海量的DNA序列数据,为现有数据存储与传输资源 带来巨大压力。因而需要对DNA序列数据进行压缩处理。目前学术界尚未完全了解DNA内 包含的所有信息,故只能使用无损的压缩编码方法。另一方面,由于DNA序列具有独特的生 物数据特点,传统的通用压缩算法无法对其进行有效编码,从而催生了专门针对DNA序列 数据的压缩方法。现有较为典型的DNA序列数据压缩方法为BioCompress-2系统。BioCompress-2 是首个具有实用意义的DNA序列数据压缩系统,也是后续改进系统的基础。DNA 序列具有由 A (Adenine,腺嘌呤)、T (Thymine,胸腺嘧啶)、C (Cytosine,胞 嘧啶)、G (Guanine,鸟嘌呤)四种碱基符号构成一维长字符串的数据形式。若不考虑其生 物学含义,可视作普通文本数据进行压缩编码。在BioCompress-2中,引入通用的LZ压缩 算法对输入数据进行编码处理。LZ算法可有效消除一般文本数据中的冗余。但DNA序列具 有特殊数据构成,仅使用LZ算法对其进行压缩常常会导致编码后数据量反而有所增加。为 解决这一问题,BioCompress-2系统引入对比编码前后数据量的处理方法。仅当使用LZ算 法压缩后数据体积实际有所减小时,才对输入的DNA序列数据进行编码操作,否则将维持 数据原状。此外,BioCompress-2系统在压缩编码时,不仅搜索直接重复的片段,也同样寻 找最长的回文重复序列(Palindrome)。通过使用滑动窗范围内的直接重复模型与回文重 复模型概括输入数据中的冗余信息,BioCompress-2算法可有效提升在DNA序列上的压缩 性能。BioCompress-2系统及以其为基础的改进DNA序列数据压缩系统,常包含三个主 要缺陷
第一,系统仅使用直接重复模型与回文重复模型描述DNA序列的冗余,并不足以涵盖 序列数据的所有特点。从而在压缩时,仍有很大部分的重复片段因其模式未被考虑而无法 进行编码处理。影响了压缩效果。第二,BioCompress-2系统在匹配时仅考虑了精确重复的数据。而DNA序列 来源于生物细胞内的实际遗传物质,其在复制、杂交及演化过程中会出现大量的碱基符号 变异(Mutation)与损坏(Damage)。因此DNA序列中的重复更多地以近似重复的形式存 在。压缩系统仅对精确重复片段进行搜索,将遗漏大量近似重复的数据冗余。第三,使用LZ算法进行压缩编码时,其搜索范围仅为滑动窗缓冲区内的部分序列。而源于生物实际物质的DNA序列数据与普通的文本数据有所不同,其大规模重复更可 能出现于相距较远的位置,超越了一般LZ算法滑动窗的覆盖范围。从而在搜索时,LZ算法 仅能找到小规模的片段重复,导致其编码后数据量往往反而有所膨胀。这也在很大程度上 限制了 BioCompress-2系统的压缩性能。因此,现有技术还有待于改进和发展。
发明内容
鉴于上述现有技术的不足,本发明的目的在于提供一种DNA序列数据压缩系统, 旨在解决现有技术中所存在的问题。本发明的技术方案如下
一种DNA序列数据压缩系统,其中,所述DNA序列数据压缩系统包括 MA-ARV码本设计模块,用于构造针对当前输入DNA序列数据的压缩码本; DNA序列数据压缩模块,用于根据MA-ARV码本对输入数据进行无损压缩编码; DNA序列数据解压模块,用于对压缩后的数据文件进行解压恢复操作。所述的DNA序列数据压缩系统,其中,所述DNA序列数据压缩系统还包括输入模 块、检测模块和输出模块;
所述输入模块、检测模块、DNA序列数据压缩模块与输出模块依次相连,所述检测模块 还分别与MA-ARV码本设计模块、DNA序列数据解压模块相连,所述MA-ARV码本设计模块与 DNA序列数据压缩模块相连。所述的DNA序列数据压缩系统,其中,所述MA-ARV码本设计模块将当前输入DNA 序列数据表示为MA-ARV矢量^其直接重复模式冗余片段表示为相同矢量^镜像重复片
段为矢量一;根据碱基配对原则,对于配对重复片段有矢量/,对于反转重复片段有矢量
-1* V O所述的DNA序列数据压缩系统,其中,所述DNA序列数据压缩系统在压缩数据时, 使用编码格式为[id, repeat type, {et/ii error}},其中ii/为对应MA-ARV码矢量编号, repeat ipe为重复模式,et/ii error为编辑误差信息序列。所述的DNA序列数据压缩系统,其中,所述编辑误差信息序列用{offset, edit type, symbol}的格式进行编码;其中为编辑操作碱基的位置,ei/iiij^e为操作类 型符号A表示替换、々表示删除、/表示插入,SJT^W为操作的碱基符号。一种DNA序列数据压缩方法,其中,包括以下步骤 S100、数据输入;
S200、检测输入的数据是否为原始DNA序列数据,如果是,执行S300,如果否,执行 S400 ;
S300、检测输入的数据是否包含MA-ARV码本,如果是,执行S311,如果否,执行S321 ;
5311、进入DNA序列数据压缩模块,根据MA-ARV码本对输入数据进行无损压缩编码;
5312、最后输出压缩后的DNA序列数据;
S321、进入MA-ARV码本设计模块,构造针对当前输入DNA序列数据的压缩码本,然后执 行 S311 ;
S400、进入DNA序列数据解压模块,对压缩后的数据文件进行解压恢复操作;S4lo、最后输出解压恢复的原始I)NA序列数据。
有益效果本发明提出的一种基于MA—ARV码本的I)NA序列数据无损压缩系统,可在全序列上搜索MA—ARV码矢量的近似重复片段,并使用文化基因启发式优化算法(MA)对压缩码本的构造过程进行优化,从而更全面地利用I)NA序列数据的重复特性,有效消除冗余,提升整体压缩率。
图l为I)NA序列中的直接重复模式的示意图。
图2为I)NA序列中的镜像重复模式的示意图。
图3为I)NA序列中的配对重复模式的示意图。
图4为I)NA序列中的反转重复模式的示意图。
图5为MA—ARV矢量模型旷的示意图。
图6为MA—ARV矢量模型旷的直接重复模式旷的示意图。
图7为MA—ARV矢量模型旷的镜像重复模式旷一/的示意图。
图8为MA—ARV矢量模型旷的配对重复模式旷*的示意图。
图9为MA—ARV矢量模型旷的反转重复模式旷“的示意图。
图lo为MA—ARV中的编辑误差编码的示意图。
图11为I)NA序列数据压缩系统的系统框图。
图12为基于MA—ARV的])NA序列数据压缩系统流程图。
图13为基于字典的I)NA序列数据压缩编码图。
具体实施方式
与普通文本字符串相比,I)NA序列数据具有以下三个主要显著特点第一,I)NA序列数据存在着大量的相似冗余。其中既有简单的片段重复,也有大规模的基因序列复制。I)NA序列数据的高度相似性是其压缩算法的根本依据。理论上若能使用涵盖能力足够好的数据模型描述I)NA序列数据中的冗余,便能取得较高的压缩比例。
第二,I)NA序列数据中的重复具有多种特有模式。如图l…图4所示,I)NA序列中的近似片段既有常见的直接重复 (DireCt Repeat)模式,亦有独特的镜像重复(Mirr。rRepeat)、配对重复(Pairing Repeat)和反转重复(工nVerted Repeat)等模式。其中反转重复亦即Bi。C。mpreSS一2算法中使用的回文重复。直接重复模式在一般字符串数据中普遍存在,而镜像重复则较少见,后两种模式更是I)NA序列数据所独有的,仅因为I)NA特有的双链结构及碱基配对原则才会产生。
第三,I)NA序列中的重复更多地表示为近似重复形式,即可视作各种模式的精确重复片段,通过一定数量的碱基插入(工nSerti。n) 、删减(Deleti。n) 和替换(SubStituti。n) 的编辑操作而获得。这种近似重复的特点是I)NA物质的生物属性所决定的。
由上述分析可见,BioCompress-2等传统压缩系统仅使用了这些独有数据特点中 的很小一部分,限制了其压缩能力的提升。为解决这一问题,本发明DNA序列数据压缩系统将DNA序列数据的重复特点归 纳总结,提出了基于文化基因的近似重复矢量(Memetic Algorithm Based Approximate Repeat Vector, MA-ARV)冗余描述模型,用于统一涵盖处理DNA序列的相似片段。MA-ARV是指基于文化基因算法(Memetic Algorithm,ΜΑ)的具有四种重复模式 的有向序列子串。如图5 图9所示,对于DNA序列数据的MA-ARV矢量ts其直接重复模式 冗余片段可表示为相同矢量^镜像重复片段为矢量vJ ;根据碱基配对原则,对于配对重复 片段有矢量/,对于反转重复片段有矢量一“。此处上标“_1”表示碱基符号顺序的反转, 上标“*”表示碱基的互补配对。从而在搜索过程中,DNA序列数据的4种重复模式片段可 统一使用相同的MA-ARV模型进行描述。而在压缩编码时,4种重复片段亦只需记录其对应 的单一 MA-ARV序列即可。在压缩时,MA-ARV序列的重复片段可使用格式repeat type)进行编码。其 中id为重复片段对应的MA-ARV序列编号,r印mi type为重复模式类型-.D表示直接重复 (Direct Repeat)(Mirror Repeat) ^^^KX^SS; (Pairing Repeat), /代表反转重复(Inverted R印eat)。对于近似的DNA重复片段,MA-ARV将对其碱基编辑误差信息进行单独编码。如图 10所示,对于已知MA-ARV序列^其近似重复片段中的编辑误差可以[offset, edit type, symbol]的格式进行编码。其中为编辑操作碱基的位置,ij^e为操作类型符 号A表示替换(Substitution)、々表示删除(Deletion)、/表示插入(Insertion)。式中 symbol为操作的碱基符号。例如,图10中有MA-ARV序列 ν = ‘‘ CCAGT,,
则对于重复片段Fragment 1,可视为由MA-ARV矢量ν将第3个符号“Α”替换为碱基 “C”而成,亦即其误差可编码为{3,& “C”}。其余两个片段Fragment 2及Fragment 3亦 可类似编码为{3,4及{3,I, “C”}。其中ν转换为Fragment 2时的第3个符号“A” 为需删除的冗余碱基,因此仅记录删除操作符々即可。MA-ARV模型涵盖了 DNA重复片段的三个主要数据特点,可更全面地描述序列数据 中的冗余信息。本发明DNA序列数据压缩系统使用了基于字典的压缩方法,并将MA-ARV模型引入 了 DNA序列数据的编码过程。本发明DNA序列数据压缩系统主要包含三个功能模块(1) MA-ARV码本设计模块,主要用于构造针对当前输入DNA序列数据的压缩码本;(2) DNA序列 数据压缩模块,主要用于根据MA-ARV码本对输入数据进行无损压缩编码;(3) DNA序列数 据解压模块,用于对压缩后的数据文件进行解压恢复操作。本发明DNA序列数据压缩系统还包括输入模块、检测模块和输出模块;所述输 入模块、检测模块、DNA序列数据压缩模块与输出模块依次相连,所述检测模块还分别与 MA-ARV码本设计模块、DNA序列数据解压模块相连,所述MA-ARV码本设计模块与DNA序列 数据压缩模块相连。所述输入模块用于输入DNA序列数据,所述检测模块用于检测输入是否为原始DNA序列数据和检测输入数据是否包含MA-ARV码本,所述输出模块用于输出压缩后的DNA 序列数据或解压恢复的原始DNA序列数据。本发明基于字典的DNA序列数据压缩编码的方法如图12所示 S100、数据输入;
S200、检测输入是否为原始DNA序列数据,如果是,执行S300,如果否,执行S400 ; S300、检测输入数据是否包含MA-ARV码本,如果是,执行S311,如果否,执行S321 ;
5311、进入DNA序列数据压缩模块,根据MA-ARV码本对输入数据进行无损压缩编码;
5312、最后输出压缩后的DNA序列数据;
S321、进入MA-ARV码本设计模块,构造针对当前输入DNA序列数据的压缩码本,然后执 行 S311 ;
S400、进入DNA序列数据解压模块,对压缩后的数据文件进行解压恢复操作; S410、最后输出解压恢复的原始DNA序列数据。本发明DNA序列数据压缩系统的压缩原理如图13所示,设原始DNA序列数据中包 含一组MA-ARV的近似重复片段,包括全部4种重复模式。则MA-ARV码本设计模块将在全 序列中搜索所有重复片段的位置、模式及编辑误差信息。通过将这组MA-ARM序列作为编码 矢量(Code Vector)并构造压缩码本(Codebook),算法使用重复片段的对应码矢量序号 及其编辑误差信息替换原有序列片段,以达到消除数据冗余的目的。本发明系统使用MA启 发式优化算法对MA-ARV压缩码本的构造设计过程进行优化。在压缩数据时,本发明系统使用编码格式为{ii/,re/^ai ij^e,[edit error}}, 其中ii/为对应MA-ARV码矢量编号,r印eat type为重复模式,et/ii error为编辑误差信息 序列。例如,压缩码本中位于序号i的MA-ARV码矢量为
Vi= “ CCAGT,,
在原始DNA序列数据中有片段 “…TTCTGACTCAA …” 可知其包含序列 I = ”TGACTC”
为MA-ARV矢量vi的近似重复片段,则此部分可编码为 “…TTC{i, M, {2,I, “T,,}} AA…,,
从而表示编码部分为编号i的MA-ARV码矢量&的镜像重复片段,可通过编辑操作对 码矢量第2个碱基处插入符号“T”获得。由于MA-ARV模型有效描述了 DNA序列数据的冗余,而基于字典的压缩算法可搜索 所有位置上的MA-ARV码矢量重复片段,因此本方法涵盖了 DNA序列的主要相似性数据特 点,可获得比传统方法更高的压缩能力。在解压缩时,只需根据压缩码本及编辑误差信息,替换恢复出原始的DNA序列数 据即可。本发明DNA序列数据压缩系统可产生的优点主要包括
第一,在总结归纳DNA序列独特数据重复特性的基础上,提出了概括能力更强的 MA-ARV数据模型,用于描述序列的冗余信息。通过将其应用于DNA序列数据的压缩编码处 理,可完整涵盖DNA序列的独有数据特点,搜索匹配更多重复片段,并使用统一的MA-ARV码矢量进行纪录,从而有效提升压缩性能。第二,提出了一种基于MA-ARV码本的DNA序列数据无损压缩系统,可在全序列上 搜索MA-ARV码矢量的近似重复片段,并使用文化基因启发式优化算法(MA)对压缩码本的 构造过程进行优化,从而更全面地利用DNA序列数据的重复特性,有效消除冗余,提升压缩率。应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可 以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保 护范围。
权利要求
1.一种DNA序列数据压缩系统,其特征在于,所述DNA序列数据压缩系统包括MA-ARV码本设计模块,用于构造针对当前输入DNA序列数据的压缩码本;DNA序列数据压缩模块,用于根据MA-ARV码本对输入数据进行无损压缩编码;DNA序列数据解压模块,用于对压缩后的数据文件进行解压恢复操作。
2.根据权利要求1所述的DNA序列数据压缩系统,其特征在于,所述DNA序列数据压缩 系统还包括输入模块、检测模块和输出模块;所述输入模块、检测模块、DNA序列数据压缩模块与输出模块依次相连,所述检测模块 还分别与MA-ARV码本设计模块、DNA序列数据解压模块相连,所述MA-ARV码本设计模块与 DNA序列数据压缩模块相连。
3.根据权利要求1所述的DNA序列数据压缩系统,其特征在于,所述MA-ARV码本设计 模块将当前输入DNA序列数据表示为MA-ARV矢量^其直接重复模式冗余片段表示为相同 矢量^镜像重复片段为矢量Vj ;根据碱基配对原则,对于配对重复片段有矢量/,对于反 转重复片段有矢量ν1*。
4.根据权利要求1所述的DNA序列数据压缩系统,其特征在于,所述DNA序列数据压缩 系统在压缩数据时,使用编码格式为\id, repeat type,error}},其中ii/为对应 MA-ARV码矢量编号,re/^ai ij^e为重复模式,et/ii error为编辑误差信息序列。
5.根据权利要求4所述的DNA序列数据压缩系统,其特征在于,所述编辑误差信息序列 用{0//》对,edit type, symbol、的格式进行编码;其中o/Z^ei为编辑操作碱基的位置, edit type为操作类型符号A表示替换、々表示删除、/表示插入,SjT^W为操作的碱基符 号。
6.一种DNA序列数据压缩方法,其特征在于,包括以下步骤S100、数据输入;S200、检测输入的数据是否为原始DNA序列数据,如果是,执行S300,如果否,执行 S400 ;S300、检测输入的数据是否包含MA-ARV码本,如果是,执行S311,如果否,执行S321 ; S311、进入DNA序列数据压缩模块,根据MA-ARV码本对输入数据进行无损压缩编码; S3 12、最后输出压缩后的DNA序列数据; S321、进入MA-ARV码本设计模块,构造针对当前输入DNA序列数据的压缩码本,然后执 行 S311 ; S400、进入DNA序列数据解压模块,对压缩后的数据文件进行解压恢复操作;S410、最后输出解压恢复的原始DNA序列数据。
全文摘要
本发明公开了一种DNA序列数据压缩系统,是一种基于MA-ARV码本的DNA序列数据无损压缩系统,可在全序列上搜索MA-ARV码矢量的近似重复片段,并使用文化基因启发式优化算法(MA)对压缩码本的构造过程进行优化,从而更全面地利用DNA序列数据的重复特性,有效消除冗余。
文档编号G06F19/10GK102081707SQ20111000260
公开日2011年6月1日 申请日期2011年1月7日 优先权日2011年1月7日
发明者储颖, 周家锐, 朱泽轩, 纪震 申请人:深圳大学