CN105631239A - 用于管理基因序列的方法和装置 - Google Patents
用于管理基因序列的方法和装置 Download PDFInfo
- Publication number
- CN105631239A CN105631239A CN201410599394.7A CN201410599394A CN105631239A CN 105631239 A CN105631239 A CN 105631239A CN 201410599394 A CN201410599394 A CN 201410599394A CN 105631239 A CN105631239 A CN 105631239A
- Authority
- CN
- China
- Prior art keywords
- gene order
- similarity
- compressed
- module
- sliding window
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B30/00—ICT specially adapted for sequence analysis involving nucleotides or amino acids
Landscapes
- Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Chemical & Material Sciences (AREA)
- Analytical Chemistry (AREA)
- Biophysics (AREA)
- Proteomics, Peptides & Aminoacids (AREA)
- Health & Medical Sciences (AREA)
- Engineering & Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Biotechnology (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Theoretical Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了用于管理基因序列的方法和装置。在一个实施方式中,提供了一种用于确定第一基因序列与第二基因序列之间的相似性的方法,包括:分别在第一基因序列和第二基因序列上移动预定长度的滑动窗口;在滑动窗口的第i次移动期间,提取所述第一基因序列在所述滑动窗口内的第一部分、和所述第二基因序列在所述滑动窗口内的第二部分;以及基于第一部分和第二部分确定第一基因序列与第二基因序列之间的相似性。在其他实施方式中,还用于压缩基因序列的方法、以及用于对经压缩的基因序列进行解压缩的方法。采用本发明,可以以更加适合于基因序列的自身特点的方式来度量两个基因序列之间的相似性,还可以基于该相似性来找到参考数据库中的最为匹配参考基因序列,并压缩基因序列。
Description
技术领域
本发明的各实施方式涉及数据管理,更具体地,涉及用于管理基因序列(genesequence)的方法和装置。
背景技术
随着生物学的发展,人类对于生物基因的研究已经越来越深入,例如,已经涉及到了诸如人类健康、药物研发、动植物新品种以及关于微生物等诸多方面。
通过对生物的基因序列进行测序(sequencing),可以获得构成该生物的染色体的碱基对的序列。通常,将测量一个物种的第一个样本的基因序列的过程称为测序,而将测量该物种的其他样本的基因序列的过程称为重测序(re-sequencing)。测序和重测序技术已经实现了突破,并且随着所涉及的各项成本的降低,越来越多的个人或者团体开始认识到基因序列的重要性,并且目前已经通过测序/重测序过程而获得了大量物种的基因序列数据。
基因序列包括大量数据,仅以人类基因为例,人类基因包括大约30亿个碱基对,按照现有的表示方式,人类的基因序列将包括大约60亿个字符(字符A、G、T、C)。因而,在基因数据库中存储的每个基因序列将会占用大量的存储空间。进一步,当需要存储大量基因序列、或者当需要针对基因序列进行拷贝和传输时,将会面临数据存储/数据传输效率方面的更多挑战。
生物学家已经发现,同一物种的各个样本的基因序列之间存在一定的相似性。例如,人类的基因序列之间的相似性远远高于人类与其他物种的基因序列之间的相似性;进一步,黄色人种的基因序列之间的相似性通常会高于黄色人种与白色人种的基因序列之间的相似性。因而基于相似性,目前已经提出了参考基因序列的概念,参考基因序列可以是在以往的数据处理期间获得的具有代表性的典型基因序列。
例如,对于人类而言,黄色人种的男性的基因序列中可能会存在某些共同的部分,例如,控制皮肤颜色、头发颜色、性别的基因序列片段可能是相同的或者仅存在较小差异。因而,可以将某个黄色人种男性的基因序列作为参考基因序列。当需要存储另一个黄色人种男性的基因序列时,可以将该另一男性的基因序列与参考基因序列进行比较,并且仅需要存储两个基因序列之间数据差异和参考基因序列的标识符即可。以此方式,可以大大降低待存储的数据量,因而实现数据压缩的目的。
应当注意,由于黄色人种的男性的基因序列中的很多部分是相同的,并且差异数据所占的比例通常并不太高。因而上述方法可以大大降低带存储基因序列所占用的数据空间。可以在参考数据库中存储大量参考基因序列,并且基于相似性搜索来从参考数据库中选择与待存储基因序列最为匹配的参考基因序列。然而,由于每个基因序列的数据量通常极大,并且包括字符A、G、T、C的各种组合,这些特点使得现有的相似性搜索算法并不十分适合于基因序列。
在基因序列处理的技术领域中,如何确定两个基因序列之间的相似性是选择参考基因序列以及其他后续处理的基础,因而如何基于基因序列的特征而提供更有效的确定相似性的方法,成为目前基因序列处理领域中的一个研究热点。
发明内容
因而,期望能够充分考虑基因序列的自身特点,来提供用于确定第一基因序列与第二基因序列之间的相似性的更加有效的技术方案。进一步,期望可以基于该确定相似性的方法来找到更加匹配于待存储基因序列的参考基因序列,以便降低待存储基因序列和参考基因序列之间的差异数据的数据量,进而实现更好的数据压缩效果。
在本发明的一个实施方式中,提供了一种用于确定第一基因序列与第二基因序列之间的相似性的方法,包括:分别在第一基因序列和第二基因序列上移动预定长度的滑动窗口;在滑动窗口的第i次移动期间,提取所述第一基因序列在所述滑动窗口内的第一部分String1i、和所述第二基因序列在所述滑动窗口内的第二部分String2i;以及基于第一部分String1i和第二部分String2i确定第一基因序列与第二基因序列之间的相似性。
在本发明的一个实施方式中,提供了一种用于压缩基因序列的方法,包括:响应于获取基因序列以及至少一个参考基因序列,采用根据本发明的方法,确定至少一个参考基因序列中的每个参考基因序列与基因序列之间的至少一个相似性;响应于至少一个相似性中的最小值小于或者等于预定阈值,选择相似性为最小值的参考基因序列作为当前参考基因序列;以及生成经压缩的基因序列,经压缩的基因序列包括当前参考基因序列的标识符以及基因序列与当前参考基因序列之间的差异数据。
在本发明的一个实施方式中,提供了一种用于对经压缩的基因序列进行解压缩的方法,包括:响应于接收到根据本发明方法进行压缩的经压缩的基因序列,从经压缩的基因序列中提取当前参考基因序列的标识符以及差异数据;基于当前参考基因序列的标识符从参考数据库中获取当前参考基因序列;以及基于参考基因序列和差异数据,对经压缩的基因序列进行解压缩。
在本发明的一个实施方式中,提供了一种用于确定第一基因序列与第二基因序列之间的相似性的装置,包括:移动模块,配置用于分别在第一基因序列和第二基因序列上移动预定长度的滑动窗口;提取模块,配置用于在滑动窗口的第i次移动期间,提取所述第一基因序列在所述滑动窗口内的第一部分String1i、和所述第二基因序列在所述滑动窗口内的第二部分String2i;以及确定模块,配置用于基于第一部分String1i和第二部分String2i确定第一基因序列与第二基因序列之间的相似性。
在本发明的一个实施方式中,提供了一种用于压缩基因序列的装置,包括:确定模块,配置用于响应于获取基因序列以及至少一个参考基因序列,采用根据本发明的装置,确定至少一个参考基因序列中的每个参考基因序列与基因序列之间的至少一个相似性;选择模块,配置用于响应于至少一个相似性中的最小值小于或者等于预定阈值,选择相似性为最小值的参考基因序列作为当前参考基因序列;以及生成模块,配置用于生成经压缩的基因序列,经压缩的基因序列包括当前参考基因序列的标识符以及基因序列与当前参考基因序列之间的差异数据。
在本发明的一个实施方式中,提供了一种用于对经压缩的基因序列进行解压缩的装置,包括:提取模块,配置用于响应于接收到根据本发明的装置进行压缩的经压缩的基因序列,从经压缩的基因序列中提取当前参考基因序列的标识符以及差异数据;获取模块,配置用于基于当前参考基因序列的标识符从参考数据库中获取当前参考基因序列;以及解压模块,配置用于基于参考基因序列和差异数据,对经压缩的基因序列进行解压缩。
采用根据本发明的实施方式所述的技术方案,可以以更加适合于基因序列的自身特点的方式来度量两个基因序列之间的相似性;进一步,还可以基于该相似性来找到参考数据库中的最为匹配参考基因序列,进而以压缩方式来存储待存储基因序列。
附图说明
结合附图并参考以下详细说明,本发明各实施方式的特征、优点及其他方面将变得更加明显。本发明附图中,相同的标号表示相同或相似的元素。在附图中:
图1示意性示出了适于实现本发明实施方式的示例性计算系统的框图;
图2示意性示出了用于针对生物进行测序所得的基因序列的数据结构的示意;
图3示意性示出了根据本发明一个实施方式的用于确定第一基因序列与第二基因序列之间的相似性的技术方案的框图;
图4示意性示出了根据本发明一个实施方式的用于确定第一基因序列与第二基因序列之间的相似性的方法的流程图;
图5示意性示出了根据本发明一个实施方式的用于确定第一基因序列与第二基因序列之间的相似性的过程的示意图;
图6示意性示出了根据本发明一个实施方式的用于压缩基因序列的方法的流程图;
图7A和图7B分别示意性示出了根据本发明一个实施方式的在压缩期间处理注释和分段的框图;
图8示意性示出了根据本发明一个实施方式的对经压缩的基因序列进行解压缩的方法的流程图;以及
图9A示意性示出了根据本发明一个实施方式的用于确定第一基因序列与第二基因序列之间的相似性的装置的框图,图9B示意性示出了根据本发明一个实施方式的用于压缩基因序列的装置的框图,以及图9C示意性示出了根据本发明一个实施方式的用于对经压缩的基因序列进行解压缩的装置的框图。
具体实施方式
图1示出了适于用来实现本发明实施方式的示例性计算机系统/服务器12的框图。图1显示的计算机系统/服务器12仅仅是一个示例,不应对本发明实施方式的功能和使用范围带来任何限制。
如图1所示,计算机系统/服务器12以通用计算设备的形式表现。计算机系统/服务器12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机系统/服务器12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机系统/服务器12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。计算机系统/服务器12可以进一步包括其他可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图1未显示,通常称为“硬盘驱动器”)。尽管图1中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其他光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施方式的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括——但不限于——操作系统、一个或者多个应用程序、其他程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施方式中的功能和/或方法。
计算机系统/服务器12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器12交互的设备通信,和/或与使得该计算机系统/服务器12能与一个或多个其他计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机系统/服务器12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机系统/服务器12的其他模块通信。应当明白,尽管图中未示出,可以结合计算机系统/服务器12使用其他硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
图2示意性示出了用于针对生物进行测序所得的基因序列的数据结构的示意200。图2中的附图标记210示出了染色体的示意图,附图标记220示出了基因序列的示意图。简言之,生物的基因序列可以由脱氧核糖核酸(DeoxyribonucleicAcid,DNA)的碱基对的精确排列来描述。换言之,基因序列可以表示为由A、G、T、C这四个碱基构成的有序序列。不同生物的基因序列的长度不同,例如,人类基因序列包括30亿个碱基对(即,60亿个字符),而其他生物的基因序列可以具有不同长度。
应当注意,在本发明的上下文中的基因序列不必包括一个生物样本的全部碱基对(例如,对人类而言是30亿个碱基对),而是可以仅包括全部碱基对中的一部分,例如,仅包括与外貌特征相关联的部分。
尽管可以以文本字符串来表示基因序列,然而基因序列还具有诸多特性。在常规的度量文本字符串的相似性的技术方案中,通常基于逐个比较字符(或者词(word))来确定两个字符串的相似性。然而,基因序列是由A、G、T、C四个碱基形成的长度数量级为数十亿的字符序列,当将针对普通文本字符串的度量相似性的方法应用于基因序列领域时,度量效果并不理想。
应当注意,基因序列中的单独的碱基(即,字符)并不能表示生物样本的特征,而是由多个字符组成的字符串才能描述生物样本的特征。因而,现有技术中的逐个字符地比较文本字符串中的字符的方法并不适合处理基因序列。
另一方面,由于基因序列中包括连续排列的碱基,尽管可以基于基因序列中各个部分的功能而将基因序列划分为多个片段,然而不同于常规的文本串(例如,以自然语言的表示的文章等),在基因序列中并不存在词的概念。因而现有技术中基于词来确定相似性的方法在基因序列领域也是无效的。
基于现有技术中的上述缺陷,在本发明的实施方式中提出了一种基于滑动窗口来确定两个基因序列之间的相似性的技术方案。具体地,提出了一种用于确定第一基因序列与第二基因序列之间的相似性的方法,包括:分别在第一基因序列和第二基因序列上移动预定长度的滑动窗口;在滑动窗口的第i次移动期间,提取所述第一基因序列在所述滑动窗口内的第一部分String1i、和所述第二基因序列在所述滑动窗口内的第二部分String2i;以及基于第一部分String1i和第二部分String2i确定第一基因序列与第二基因序列之间的相似性。
具体地,图3示意性示出了根据一个实施方式的用于确定第一基因序列与第二基因序列之间的相似性的技术方案的框图300。在图3中示出了第一基因序列310和第二基因序列320,两个基因序列都是包括字符A、G、T、C的字符串。如图3所示,可以以长度为K(在此示例中K=7)的滑动窗口(例如,滑动窗口330、332、334)在第一基因序列310和第二基因序列320上移动,并且基于比较在每次移动期间在滑动窗口内的第一部分和第二部分,来确定两个基因序列之间的相似性。
具体地,在滑动窗口的第一次移动期间,滑动窗口位于参考数字330的位置,此时第一部分是字符串“TCTAGCC”,而第二部分是字符串“GCTGCCC”。在滑动窗口的第二次移动期间,滑动窗口位于参考数字332的位置,此时第一部分是字符串“CTAGCCA”,而第二部分是字符串“CTGCCCA”。在滑动窗口的第三次移动期间,滑动窗口位于参考数字334的位置,此时第一部分是字符串“TAGCCAG”,而第二部分是字符串“TGCCCAG”。
在此实施方式中,可以将每次移动期间分别位于滑动窗口内的第一基因序列和第二基因序列中的部分,作为进行相似性比较的基本单位。继而,可以基于在滑动窗口的每次移动期间对基本单位的比较,来确定两个基因序列之间的相似性。
在下文中,将参见附图详细描述本发明的各个实施方式的具体细节。具体地,图4示意性示出了根据本发明一个实施方式的用于确定第一基因序列与第二基因序列之间的相似性的方法的流程图400。在步骤S402中,分别在第一基因序列和第二基因序列上移动预定长度的滑动窗口。在此步骤中,本领域技术人员可以自定义滑动窗口的预定长度。
在步骤S404中,在滑动窗口的第i次移动期间,提取所述第一基因序列在所述滑动窗口内的第一部分String1i、和所述第二基因序列在所述滑动窗口内的第二部分String2i。应当注意,由于长度较短(例如,小于或者等于3)的符号序列并不能表示生物样本的生物特征,因而不宜将滑动窗口的长度设置为过短。
本领域技术人员可以理解,在本发明的上下文中,i是正整数,并且数值小于或者等于滑动窗口在所述两个基因序列上移动的次数。i的最大值依赖于基因序列的长度、滑动窗口的长度以及移动步长,本领域技术人员可以基于滑动窗口的原理来计算,在此省略细节。
还应当注意,滑动窗口的长度越长,则第一部分和第二部分的相匹配的概率越低。当滑动窗口的长度太大(例如等于20)时,只有当第一部分中的20个字符与第二部分中的20个字符完全相同时,才认为第一部分和第二部分是相同的。因而滑动窗口长度过大可能会导致忽略第一基因序列和第二基因序列内的某些长度较短的字符串之间的匹配。
在本发明的一个实施方式中,本领域技术人员可以自定义滑动窗口的长度,例如,本领域技术人员可以基于具体应用环境的要求,从4-12的范围内选择该长度,具体地,可以将滑动窗口的长度定义为7或者其他数值。
在步骤S406中,基于第一部分String1i和第二部分String2i确定第一基因序列与第二基因序列之间的相似性。在此步骤中,本领域技术人员可以基于上文参见图3描述的过程来确定两个基因序列之间的相似性。
在本发明的一个实施方式中,分别在第一基因序列和第二基因序列上移动预定长度的滑动窗口包括:以小于或者等于预定长度的步长来移动滑动窗口。本领域技术人员应当注意,由于需要以连续方式比较第一基因序列和第二基因序列内的各个部分,因而可以将滑动步长设置为小于或者等于滑动窗口的预定长度。
具体地,例如可以将滑动步长设置为1。以此方式,每次滑动1个字符的距离,可以更全面地考虑基因序列中的每个字符串以及各个字符串之间的前后顺序关系,从而更准确地确定两个基因序列之间的相似性。备选地,在考虑到以字符表示的碱基是以成对方式出现的情况下,例如还可以将滑动步长设置为2。
应当注意,在本发明的各个实施方式中,第一基因序列和第二基因序列的长度可以是相同的或者是不同的。当两者的长度为相同时,随着滑动窗口的移动,可以一一对应地比较每次滑动期间所形成的第一部分和第二部分。当两者长度为不同时,可以以空(null)字符来补齐缺少的字符。例如,假设第一基因序列比第二基因序列多2个字符并且滑动窗口的长度为7时,则在滑动窗口的最后一次移动期间,第一基因序列中的第一部分可以包括7个字符,而第二基因序列的第二部分仅包括5个字符。此时,可以认为第二部分的末尾处还包括两个空字符。
在本发明的一个实施方式中,基于第一部分String1i和第二部分String2i确定第一基因序列与第二基因序列之间的相似性包括:在滑动窗口的第i次移动期间,计算第一部分String1i和第二部分String2i之间的局部相似性similarityi;以及基于局部相似性similarityi确定第一基因序列与第二基因序列之间的相似性。
在此实施方式中,局部相似性similarityi是指在滑动窗口的一次移动期间的第一部分和第二部分之间的文本相似性。本领域技术人员可以基于目前已知的或者将在未来开发的各种算法来确定局部相似性similarityi。
在本发明的一个实施方式中,计算第一部分String1i和第二部分String2i之间的局部相似性similarityi包括:基于第一部分String1i和第二部分String2i之间的编辑距离(EditDistance)di计算局部相似性similarityi。
编辑距离又称Levenshtein距离,是指从一个字符串转成另一字符串所需的最少编辑操作的次数。允许的编辑操作包括:将一个字符替换成另一个字符、插入一个字符,删除一个字符。
例如将kitten一字转成sitting,需要如下3次编辑操作:
sitten(k→s)
sittin(e→i)
sitting(→g)
本领域技术人员应当理解,由于基因序列仅涉及4个字符A、G、T和C的各种组合,因而在本发明的上下文中还可以针对不同的字符来设置不同的权重,或者针对不同的操作类型设置不同的权重,等等。进一步,本领域技术人员还可以基于各个字符的组合的生物学含义来修改计算编辑距离的具体公式。
图5示意性示出了根据本发明一个实施方式的用于确定第一基因序列与第二基因序列之间的相似性的过程的示意图500。如图5所示,滑动窗口330内的两个字符串之间的编辑距离d1=37.2,滑动窗口332内的两个字符串之间的编辑距离d2=35.9,滑动窗口334内的两个字符串之间的编辑距离d3=36.5。本领域技术人员还可以基于计算编辑距离的公式来计算在滑动窗口的每次移动期间在两个字符串之间的编辑距离。应当注意,在此实施方式中所示的三个编辑距离仅仅是示意性的,本领域技术人员可以自行设计具体计算公式。
在本发明的一个实施方式中,可以直接将编辑距离di作为第一部分String1i和第二部分String2i之间的局部相似性similarityi;在本发明的另一个实施方式中,还可以基于编辑距离di的函数来计算局部相似性similarityi,例如,定义或者,本领域技术人员还可以基于其他公式来计算局部相似性similarityi。继而,可以基于滑动窗口的每次移动期间所得的局部相似性similarityi,计算两个基因序列的相似性。
在本发明的一个实施方式中,基于局部相似性similarityi确定第一基因序列与第二基因序列之间的相似性包括:基于以下公式计算相似性其中N为滑动窗口移动的次数。
在此实施方式中,可以将在滑动窗口的每次移动期间所得的局部相似性similarityi进行求和,来获取第一基因序列和第二基因序列之间的相似性。或者,本领域技术人员还可以采用其他公式来计算相似性。
在本发明的一个实施方式中,其中:第一基因序列是来自第一序列的一部分,以及第二基因序列是来自第二序列的一部分。应当注意,由于基因序列的长度通常极大,例如当确定描述人类基因信息的第一基因序列(包括60亿个字符)与描述人类基因信息的第二基因序列(包括60亿个字符)之间的相似性时,将会涉及极大的计算量。因而,可以将基因序列划分为多个分段(例如,每个分段可以包括1万个字符串),并且每次仅针对具有较小长度的分段内的数据进行处理。
在本发明的一个实施方式中,并不限定所划分的各个分段之间是否存在重叠区域。例如,可以使得各个分段之间包括重叠区域,以便于将划分所得的各个分段拼接为原始基因序列。
应当注意,尽管在上文中仅示意性示出了如何计算两个基因序列之间的相似性的具体示例,本领域技术人员应当理解,在从参考数据库中选择合适的参考基因序列时,还需要计算待存储的基因序列与参考数据库中的各个参考基因序列之间的相似性。
在本发明的一个实施方式中,当存在多个参考基因序列时,确定待存储基因序列与多个参考基因序列(例如,n个)之间的相似性将会耗费较多的时间。因而,例如可以按照如图5所示的方式将待存储基因序列与n个参考基因序列对准,并且从各个基因序列的头部开始移动滑动窗口。以此方式,在滑动窗口的每次移动期间,可以同时获得待处理基因序列以及n个参考基因序列在该滑动窗口内的部分。继而,可以分别将待存储基因序列在滑动窗口内的部分分别与n个参考基因序列在滑动窗口内的相应部分进行比较,以获取相应的局部相似性。
为了加快计算速度,可以预先计算在计算相似性期间可能使用到的编辑距离,并在数据表中存储预先计算的编辑距离。或者,还可以随着滑动窗口的移动来不断计算新的编辑距离,并且在数据表中存储曾经出现的两个字符串之间的编辑距离,以便后续处理期间可以直接使用该编辑距离。
备选地,为了加快计算速度,还可以设置用于辅助计算的查找表,该查找表中可以包括:将滑动窗口沿着各个参考基因序列移动期间、落在滑动窗口内的字符串;以及记录上述各个字符串曾经出现在哪些参考基因序列中的信息。具体地,参见附图5,假设第一基因序列310是待存储的基因序列,而第二基因序列320是参考基因序列,当滑动窗口位于附图标记330所示的位置时,参考基因序列中的在滑动窗口内的字符串为“GCTGCCC”。如果该字符串还出现在第3参考基因序列、...、第i参考基因序列、...、以及第n参考基因序列中时,则查找表可以如下文表1所示。
表1查找表
序号 | 字符串 | 参考基因序列 |
1 | GCTGCCC | 1,3,...,i,...,n |
... | ... | ... |
应当注意,在表1中仅仅示意性示出了包括字符串“GCTGCCC”的多个参考基因序列,本领域技术人员还可以基于上文所述的原理,获得包括其他字符串的相应参考基因序列的序列。通过使用如表1所示的查找表,可以在查找表中包括找到包括字符串“GCTGCCC”的全部参考基因序列,因而可以将待存储基因序列与这些找到的参考基因序列中的每个参考基因序列之间的相似性增加字符串“TCTAGCC”和“GCTGCCC”之间的编辑距离(在图5所示的实施方式中,该编辑距离为37.2)。基于查找表来将编辑距离进行累计求和,即可获得待存储基因序列与各个参考基因序列之间的相似性。
应当注意,本发明的确定相似性的方法可以作为处理基因序列的一个基本操作,并且本发明的上述确定相似性的方法还可以进一步作为从参考数据库中选择合适的参考基因序列、基于多个基因序列之间的相似性而将该多个基因序列进行聚类、确定聚类中心等各种处理的子步骤。
在下文中,将参见附图详细描述如何选择参考基因序列进而对待存储的基因序列进行压缩和解压缩的方法的详细信息。目前已经存在许多组织可以提供参考基因序列,并且可以通过网络来方便地访问参考基因序列。根据本发明的实施方式,在压缩基因序列时只需要存储该基因序列与参考基因序列之间的差异数据以及参考基因序列的标识符,即可以基于所存储的差异数据和经由网络访问而获得的参考基因序列,来获得基因序列的原始数据。
在本发明的一个实施方式中,提出了一种用于压缩基因序列的方法,包括:响应于获取基因序列以及至少一个参考基因序列,采用根据本发明的方法,确定至少一个参考基因序列中的每个参考基因序列与基因序列之间的至少一个相似性;响应于至少一个相似性中的最小值小于或者等于预定阈值,选择相似性为最小值的参考基因序列作为当前参考基因序列;以及生成经压缩的基因序列,经压缩的基因序列包括当前参考基因序列的标识符以及基因序列与当前参考基因序列之间的差异数据。
图6示意性示出了根据本发明一个实施方式的用于压缩基因序列的方法的流程图600。在步骤S602中,响应于获取基因序列以及至少一个参考基因序列,采用根据上文的方法,确定至少一个参考基因序列中的每个参考基因序列与基因序列之间的至少一个相似性。本领域技术人员可以基于上文参见附图3-5描述的方法,逐个计算每个参考基因序列与待压缩的基因序列之间的相似性。
在步骤S604中,响应于至少一个相似性中的最小值小于或者等于预定阈值,选择相似性为最小值的参考基因序列作为当前参考基因序列。在此实施方式中,当以“距离”来衡量两个基因序列之间的相似性时,可以选择相似性的数值为最小的参考基因序列作为当前使用的参考基因序列。备选地,当以“相似程度”来作为衡量标准时,则可以选择相似性的数值为最大的参考基因序列作为当前使用的参考基因序列。本领域技术人员可以基于本发明的原理来自定义具体实现方式。
在步骤S606中,生成经压缩的基因序列,经压缩的基因序列包括当前参考基因序列的标识符以及基因序列与当前参考基因序列之间的差异数据。由于选择的当前参考基因序列是在参考数据库中与待压缩的基因序列的相似程度最高的参考基因序列,因而通过仅存储当前参考基因序列的标识符以及待压缩基因序列与当前参考基因序列之间的差异数据,即可保存该待压缩基因序列的全部信息。
由于经压缩的基因序列并不包括待压缩基因序列与当前参考基因序列之间相同的基因序列,因而,可以大大降低经压缩基因序列所占用的空间。当参考数据库中仅包括一个参考基因序列时,无需在经压缩的基因序列中包括该参考基因序列的标识符;而当参考数据库中包括多个参考基因序列时,还需要在经压缩的基因序列中包括该参考基因序列的标识符,以便可以通过该标识符找到在执行压缩时使用了哪个参考基因序列。
在本发明的一个实施方式中,生成经压缩的基因序列包括:响应于基因序列中存在注释,在经压缩的基因序列中包括注释的位置和标识符;以及在经压缩的基因序列中包括基因序列中的一部分与当前参考基因序列的相应部分之间的差异数据,基因序列中的一部分是无关于注释的部分。
随着人类对基因序列的研究,目前已经能够确定某些基因序列片段的含义。因而,目前的基因序列的存储已经支持针对基因序列的片段加入注释。在此的注释信息例如可以是描述某起始位置和终止位置之间区间的基因序列的功能的注释信息。例如,假设起始位置和终止位置分别为1和10000之间的基因序列是与黑色头发有关的基因序列片段,则可以针对位置1-10000之间的片段添加注释,表明此部分基因序列与黑色头发有关。由于与某种功能相关的基因序列片段内容通常是固定的(或者仅存在较小差距),因而可以在经压缩的基因序列中仅记录注释的标识符,而不需要记录与该注释相关联的基因序列片段本身。
另外,由于人类属于哺乳动物,因而人类的基因序列中会包括一些与较为低等哺乳动物相同的保守基因序列片段,尽管人类还可以细分为白色人种、黄色人种等人种,然而各色人种的基因组中都会包括这些固定基因序列片段。因而可以以注释的标识符来代替这些固定基因序列片段。以此方式,可以大大节省存储空间。
具体地,图7A示意性示出了根据本发明一个实施方式的在压缩期间处理注释的框图700A。如图7A所示,假设待压缩基因序列710中的一个片段上包括注释712A,而其他片段714A和716A并不包括注释,因而在生成经压缩基因序列的过程中,不必针对包括注释712A的部分获取与参考基因序列之间的差异数据,而是只需记录该注释712A的标识符即可。对于不包括注释的其他部分(即,片段714A和716A),则可以按照本发明上文中所述的方法,获取这两个片段与参考基因序列中的相应片段(724A和726A)之间的差异数据730。
应当注意,尽管在图7A中仅仅示意性示出了包括一个注释的情况,当待压缩基因序列710A中包括多个注释时,本领域技术人员还可以基于上文记载的原理来针对每个注释进行处理。
在本发明的一个实施方式中,生成经压缩的基因序列包括:将基因序列划分为多个分段;针对多个分段中的每个分段,在当前参考基因序列内搜索与每个分段相匹配的部分;在经压缩的基因序列中包括相匹配的部分在当前参考基因序列中的位置、以及每个分段与相匹配的部分之间的差异数据。
当待压缩基因序列的长度过长并且不便于寻找适合的参考基因序列时,还可以将该待压缩的基因序列划分为多个分段,并且针对每个分段逐个进行处理。例如,可以将待压缩基因序列划分为定长的分段,或者还可以基于基因序列的生物学含义来划分分段。
具体地,图7B示意性示出了根据本发明一个实施方式的在压缩期间处理分段的框图700B。如图7B所示,假设基因序列710B中包括分段712B,则可以在参考基因序列720B中寻找与该分段712B相匹配的部分,例如,在参考基因序列720B中找到分段722B。因而可以记录分段722B在参考基因序列720B中的位置,并获取基因序列710B中的分段712B与参考基因序列720B中的分段722B之间的差异数据。
应当注意,尽管在图7B中仅仅示意性示出了包括一个分段的情况,当待压缩基因序列710B中包括多个分段时,本领域技术人员还可以基于上文记载的原理来针对每个分段进行处理。
在本发明的一个实施方式中,进一步包括:响应于至少一个相似性中的最小值大于预定阈值,将基因序列与其他待压缩基因序列划分至至少一个聚类,其中其他待压缩基因序列中的每个基因序列与至少一个参考基因序列中的任一参考基因序列之间的相似性大于预定阈值;以及生成经压缩的基因序列,经压缩的基因序列包括基因序列所属于的聚类的聚类中心的指示符、以及基因序列与聚类中心之间的差异数据。
在此实施方式中,如果获得的至少一个相似性中的最小值大于预定阈值,则表示不存在与待压缩基因序列相匹配的参考基因序列时。在此情况下,可以对该待压缩基因序列和其他的未找到相匹配的参考基因序列的基因序列进行聚类,并将所获得的聚类中心作为新的参考基准来进行压缩。
在本发明的一个实施方式中,可以逐步向参考数据库中加入新的参考基因序列,例如,可以在对基因序列进行压缩期间逐步更新参考数据库。具体地,对于一个新输入的基因序列A,当在参考数据库中不能找到相似性较高的参考基因序列时,可以认为该基因序列A可能属于一个新的物种,因而可以将该基因序列A加入候选列表。当候选列表中的基因序列达到一定数量时,可以采用聚类方法并将聚类所得的最具代表性的待压缩基因序列加入参考数据库。
在本发明的一个实施方式中,还提供了将根据上文所述的方法而获得的经压缩基因序列进行解压缩的方法。具体地,提供了一种用于对经压缩的基因序列进行解压缩的方法,包括:响应于接收到根据本发明的压缩方法获得的经压缩的基因序列,从经压缩的基因序列中提取当前参考基因序列的标识符以及差异数据;基于当前参考基因序列的标识符从参考数据库中获取当前参考基因序列;以及基于参考基因序列和差异数据,对经压缩的基因序列进行解压缩。
图8示意性示出了根据本发明一个实施方式的对经压缩的基因序列进行解压缩的方法的流程图800。具体地,在步骤S802中,响应于接收到根据本发明的压缩方法进行压缩的经压缩的基因序列,从经压缩的基因序列中提取当前参考基因序列的标识符以及差异数据。
在步骤S804中,基于当前参考基因序列的标识符从参考数据库中获取当前参考基因序列。可以从参考数据库中获取当前参考基因序列。由于经压缩的基因序列保存了在压缩基因序列时使用的当前基因序列的标识符,因而可以经由该标识符来从参考数据库中获取参考基因序列。
在步骤S806中,基于参考基因序列和差异数据,对经压缩的基因序列进行解压缩。由于经压缩的基因序列中的差异数据保存了该基因序列与当前参考基因序列之间的差异数据,可以向参考基因序列应用差异数据,以便从经压缩的基因序列中恢复原始基因序列。
前面已经参考附图描述了实现本发明的方法的各个实施方式。本领域技术人员可以理解的是,上述方法既可以以软件方式实现,也可以以硬件方式实现,或者通过软件与硬件相结合的方式实现。并且,本领域技术人员可以理解,通过以软件、硬件或者软硬件相结合的方式实现上述方法中的各个步骤,可以提供一种基于相同发明构思的一种设备。即使该设备在硬件结构上与通用处理设备相同,由于其中所包含的软件的作用,使得该设备表现出区别于通用处理设备的特性,从而形成本发明的各个实施方式的设备。本发明中所述设备包括若干装置或模块,所述装置或模块被配置为执行相应步骤。本领域的所述技术人员通过阅读本说明书可以理解如何编写程序实现所述装置或模块执行的动作。由于所述设备与方法基于相同的发明构思,因此其中相同或相应的实现细节同样适用于与上述方法对应的装置或模块,由于其在上文中已经进行了详细和完整的描述,因此在下文中可能不再进行赘述。
图9A示意性示出了根据本发明一个实施方式的用于确定第一基因序列与第二基因序列之间的相似性的装置的框图900A。具体地,提供了一种用于确定第一基因序列与第二基因序列之间的相似性的装置,包括:移动模块910A,配置用于分别在第一基因序列和第二基因序列上移动预定长度的滑动窗口;提取模块920A,配置用于在滑动窗口的第i次移动期间,提取所述第一基因序列在所述滑动窗口内的第一部分String1i、和所述第二基因序列在所述滑动窗口内的第二部分String2i;以及确定模块930A,配置用于基于第一部分String1i和第二部分String2i确定第一基因序列与第二基因序列之间的相似性。
在本发明的一个实施方式中,移动模块910A包括:窗口移动模块,配置用于以小于或者等于预定长度的步长来移动滑动窗口。
在本发明的一个实施方式中,确定模块930包括:计算模块,配置用于在滑动窗口的第i次移动期间,计算第一部分String1i和第二部分String2i之间的局部相似性similarityi;以及相似性确定模块,配置用于基于局部相似性similarityi确定第一基因序列与第二基因序列之间的相似性。
在本发明的一个实施方式中,计算模块包括:局部相似性计算模块,配置用于基于第一部分String1i和第二部分String2i之间的编辑距离di计算局部相似性similarityi。
在本发明的一个实施方式中,相似性确定包括:求解模块,配置用于基于以下公式计算相似性其中N为滑动窗口移动的次数。
图9B示意性示出了根据本发明一个实施方式的用于压缩基因序列的装置的框图900B。具体地,提供了一种用于压缩基因序列的装置,包括:确定模块910B,配置用于响应于获取基因序列以及至少一个参考基因序列,采用根据本发明的装置,确定至少一个参考基因序列中的每个参考基因序列与基因序列之间的至少一个相似性;选择模块920B,配置用于响应于至少一个相似性中的最小值小于或者等于预定阈值,选择相似性为最小值的参考基因序列作为当前参考基因序列;以及生成模块930B,配置用于生成经压缩的基因序列,经压缩的基因序列包括当前参考基因序列的标识符以及基因序列与当前参考基因序列之间的差异数据。
在本发明的一个实施方式中,生成模块930B包括:注释处理模块,配置用于响应于基因序列中存在注释,在经压缩的基因序列中包括注释的位置和标识符;以及第一插入模块,配置用于在经压缩的基因序列中包括基因序列中的一部分与当前参考基因序列的相应部分之间的差异数据,基因序列中的一部分是无关于注释的部分。
在本发明的一个实施方式中,生成模块930B包括:划分模块,配置用于将基因序列划分为多个分段;搜索模块,配置用于针对多个分段中的每个分段,在当前参考基因序列内搜索与每个分段相匹配的部分;第二插入模块,配置用于在经压缩的基因序列中包括相匹配的部分在当前参考基因序列中的位置、以及每个分段与相匹配的部分之间的差异数据。
在本发明的一个实施方式中,进一步包括:聚类模块,配置用于响应于至少一个相似性中的最小值大于预定阈值,将基因序列与其他待压缩基因序列划分至至少一个聚类,其中其他待压缩基因序列中的每个基因序列与至少一个参考基因序列中的任一参考基因序列之间的相似性大于预定阈值;以及第二生成模块,配置用于生成经压缩的基因序列,经压缩的基因序列包括基因序列所属于的聚类的聚类中心的指示符、以及基因序列与聚类中心之间的差异数据。
图9C示意性示出了根据本发明一个实施方式的用于对经压缩的基因序列进行解压缩的装置的框图900C。具体地,提供了一种用于对经压缩的基因序列进行解压缩的装置,包括:提取模块910C,配置用于响应于接收到根据本发明的装置进行压缩的经压缩的基因序列,从经压缩的基因序列中提取当前参考基因序列的标识符以及差异数据;获取模块920C,配置用于基于当前参考基因序列的标识符从参考数据库中获取当前参考基因序列;以及解压模块930C,配置用于基于参考基因序列和差异数据,对经压缩的基因序列进行解压缩。
采用根据本发明的实施方式所述的技术方案,可以以更加适合于基因序列的自身特点的方式来度量两个基因序列之间的相似性;进一步,还可以基于该相似性来找到参考数据库中的最为匹配参考基因序列,进而以压缩方式来存储待存储基因序列。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是——但不限于——电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言-诸如Smalltalk、C++等,以及常规的过程式编程语言-诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络-包括局域网(LAN)或广域网(WAN)-连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施方式中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施方式的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其他可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程数据处理装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其他可编程数据处理装置、或其他设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施方式的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本发明的各实施方式,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施方式。在不偏离所说明的各实施方式的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施方式的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其他普通技术人员能理解本文披露的各实施方式。
Claims (20)
1.一种用于确定第一基因序列与第二基因序列之间的相似性的方法,包括:
分别在所述第一基因序列和所述第二基因序列上移动预定长度的滑动窗口;
在所述滑动窗口的第i次移动期间,提取所述第一基因序列在所述滑动窗口内的第一部分String1i、和所述第二基因序列在所述滑动窗口内的第二部分String2i;以及
基于所述第一部分String1i和所述第二部分String2i确定所述第一基因序列与所述第二基因序列之间的相似性。
2.根据权利要求1所述的方法,其中所述分别在所述第一基因序列和所述第二基因序列上移动所述预定长度的所述滑动窗口包括:
以小于或者等于所述预定长度的步长来移动所述滑动窗口。
3.根据权利要求1或2所述的方法,其中所述基于所述第一部分String1i和所述第二部分String2i确定所述第一基因序列与所述第二基因序列之间的所述相似性包括:在所述滑动窗口的所述第i次移动期间,
计算所述第一部分String1i和所述第二部分String2i之间的局部相似性similarityi;以及
基于所述局部相似性similarityi确定所述第一基因序列与所述第二基因序列之间的相似性。
4.根据权利要求3所述的方法,其中所述计算所述第一部分String1i和所述第二部分String2i之间的所述局部相似性similarityi包括:
基于所述第一部分String1i和所述第二部分String2i之间的编辑距离di计算所述局部相似性similarityi。
5.根据权利要求3所述的方法,其中所述基于所述局部相似性similarityi确定所述第一基因序列与所述第二基因序列之间的所述相似性包括:
基于以下公式计算所述相似性其中N为所述滑动窗口移动的次数。
6.一种用于压缩基因序列的方法,包括:
响应于获取所述基因序列以及至少一个参考基因序列,采用根据权利要求1-5中的任一项所述的方法,确定所述至少一个参考基因序列中的每个参考基因序列与所述基因序列之间的至少一个相似性;
响应于所述至少一个相似性中的最小值小于或者等于预定阈值,选择相似性为所述最小值的所述参考基因序列作为当前参考基因序列;以及
生成经压缩的基因序列,所述经压缩的基因序列包括所述当前参考基因序列的标识符以及所述基因序列与所述当前参考基因序列之间的差异数据。
7.根据权利要求6所述的方法,其中所述生成所述经压缩的基因序列包括:
响应于所述基因序列中存在注释,在所述经压缩的基因序列中包括所述注释的位置和标识符;以及
在所述经压缩的基因序列中包括所述基因序列中的一部分与所述当前参考基因序列的相应部分之间的差异数据,所述基因序列中的所述一部分是无关于所述注释的部分。
8.根据权利要求6所述的方法,其中所述生成经压缩的基因序列包括:
将所述基因序列划分为多个分段;
针对所述多个分段中的每个分段,
在所述当前参考基因序列内搜索与所述每个分段相匹配的部分;
在所述经压缩的基因序列中包括所述相匹配的部分在所述当前参考基因序列中的位置、以及所述每个分段与所述相匹配的部分之间的差异数据。
9.根据权利要求6所述的方法,进一步包括:
响应于所述至少一个相似性中的所述最小值大于所述预定阈值,将所述基因序列与其他待压缩基因序列划分至至少一个聚类,其中所述其他待压缩基因序列中的每个基因序列与所述至少一个参考基因序列中的任一参考基因序列之间的相似性大于所述预定阈值;以及
生成经压缩的基因序列,所述经压缩的基因序列包括所述基因序列所属于的聚类的聚类中心的指示符、以及所述基因序列与所述聚类中心之间的差异数据。
10.一种用于对经压缩的基因序列进行解压缩的方法,包括:
响应于接收到根据权利要求6-8中的任一项所述的方法进行压缩的经压缩的基因序列,从所述经压缩的基因序列中提取当前参考基因序列的标识符以及差异数据;
基于所述当前参考基因序列的标识符从参考数据库中获取当前参考基因序列;以及
基于所述参考基因序列和所述差异数据,对所述经压缩的基因序列进行解压缩。
11.一种用于确定第一基因序列与第二基因序列之间的相似性的装置,包括:
移动模块,配置用于分别在所述第一基因序列和所述第二基因序列上移动预定长度的滑动窗口;
提取模块,配置用于在所述滑动窗口的第i次移动期间,提取所述第一基因序列在所述滑动窗口内的第一部分String1i、和所述第二基因序列在所述滑动窗口内的第二部分String2i;以及
确定模块,配置用于基于所述第一部分String1i和所述第二部分String2i确定所述第一基因序列与所述第二基因序列之间的相似性。
12.根据权利要求11所述的装置,其中所述移动模块包括:
窗口移动模块,配置用于以小于或者等于所述预定长度的步长来移动所述滑动窗口。
13.根据权利要求11或12所述的装置,其中所述确定模块包括:
计算模块,配置用于在所述滑动窗口的所述第i次移动期间,计算所述第一部分String1i和所述第二部分String2i之间的局部相似性similarityi;以及
相似性确定模块,配置用于基于所述局部相似性similarityi确定所述第一基因序列与所述第二基因序列之间的相似性。
14.根据权利要求13所述的装置,其中所述计算模块包括:
局部相似性计算模块,配置用于基于所述第一部分String1i和所述第二部分String2i之间的编辑距离di计算所述局部相似性similarityi。
15.根据权利要求13所述的装置,其中所述相似性确定包括:
求解模块,配置用于基于以下公式计算所述相似性其中N为所述滑动窗口移动的次数。
16.一种用于压缩基因序列的装置,包括:
确定模块,配置用于响应于获取所述基因序列以及至少一个参考基因序列,采用根据权利要求11-15中的任一项所述的装置,确定所述至少一个参考基因序列中的每个参考基因序列与所述基因序列之间的至少一个相似性;
选择模块,配置用于响应于所述至少一个相似性中的最小值小于或者等于预定阈值,选择相似性为所述最小值的所述参考基因序列作为当前参考基因序列;以及
生成模块,配置用于生成经压缩的基因序列,所述经压缩的基因序列包括所述当前参考基因序列的标识符以及所述基因序列与所述当前参考基因序列之间的差异数据。
17.根据权利要求16所述的装置,其中所述生成模块包括:
注释处理模块,配置用于响应于所述基因序列中存在注释,在所述经压缩的基因序列中包括所述注释的位置和标识符;以及
第一插入模块,配置用于在所述经压缩的基因序列中包括所述基因序列中的一部分与所述当前参考基因序列的相应部分之间的差异数据,所述基因序列中的所述一部分是无关于所述注释的部分。
18.根据权利要求16所述的装置,其中所述生成模块包括:
划分模块,配置用于将所述基因序列划分为多个分段;
搜索模块,配置用于针对所述多个分段中的每个分段,在所述当前参考基因序列内搜索与所述每个分段相匹配的部分;
第二插入模块,配置用于在所述经压缩的基因序列中包括所述相匹配的部分在所述当前参考基因序列中的位置、以及所述每个分段与所述相匹配的部分之间的差异数据。
19.根据权利要求16所述的装置,进一步包括:
聚类模块,配置用于响应于所述至少一个相似性中的所述最小值大于所述预定阈值,将所述基因序列与其他待压缩基因序列划分至至少一个聚类,其中所述其他待压缩基因序列中的每个基因序列与所述至少一个参考基因序列中的任一参考基因序列之间的相似性大于所述预定阈值;以及
第二生成模块,配置用于生成经压缩的基因序列,所述经压缩的基因序列包括所述基因序列所属于的聚类的聚类中心的指示符、以及所述基因序列与所述聚类中心之间的差异数据。
20.一种用于对经压缩的基因序列进行解压缩的装置,包括:
提取模块,配置用于响应于接收到根据权利要求16-18中的任一项所述的装置进行压缩的经压缩的基因序列,从所述经压缩的基因序列中提取当前参考基因序列的标识符以及差异数据;
获取模块,配置用于基于所述当前参考基因序列的标识符从参考数据库中获取当前参考基因序列;以及
解压模块,配置用于基于所述参考基因序列和所述差异数据,对所述经压缩的基因序列进行解压缩。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410599394.7A CN105631239B (zh) | 2014-10-30 | 2014-10-30 | 用于管理基因序列的方法和装置 |
US14/926,051 US10586609B2 (en) | 2014-10-30 | 2015-10-29 | Managing gene sequences |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410599394.7A CN105631239B (zh) | 2014-10-30 | 2014-10-30 | 用于管理基因序列的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105631239A true CN105631239A (zh) | 2016-06-01 |
CN105631239B CN105631239B (zh) | 2018-08-17 |
Family
ID=55912402
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410599394.7A Active CN105631239B (zh) | 2014-10-30 | 2014-10-30 | 用于管理基因序列的方法和装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10586609B2 (zh) |
CN (1) | CN105631239B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106469144A (zh) * | 2016-08-29 | 2017-03-01 | 东软集团股份有限公司 | 文本相似度计算方法及装置 |
CN107688727A (zh) * | 2016-08-05 | 2018-02-13 | 深圳华大基因股份有限公司 | 生物序列聚类和全长转录组中转录本亚型识别方法和装置 |
WO2019076177A1 (zh) * | 2017-10-20 | 2019-04-25 | 人和未来生物科技(长沙)有限公司 | 基因测序数据压缩预处理、压缩、解压方法、系统及计算机可读介质 |
CN109698703A (zh) * | 2017-10-20 | 2019-04-30 | 人和未来生物科技(长沙)有限公司 | 基因测序数据解压方法、系统及计算机可读介质 |
CN109698702A (zh) * | 2017-10-20 | 2019-04-30 | 人和未来生物科技(长沙)有限公司 | 基因测序数据压缩预处理方法、系统及计算机可读介质 |
CN109887547A (zh) * | 2019-03-06 | 2019-06-14 | 苏州浪潮智能科技有限公司 | 一种基因序列比对滤波加速处理方法、系统及装置 |
CN110990063A (zh) * | 2019-11-28 | 2020-04-10 | 中国科学院计算技术研究所 | 一种用于基因相似性分析的加速装置、方法和计算机设备 |
WO2020078341A1 (zh) * | 2018-10-15 | 2020-04-23 | 智慧芽信息科技(苏州)有限公司 | 基因序列的权利范围标注、检索及信息标注方法、系统 |
CN111063394A (zh) * | 2019-12-13 | 2020-04-24 | 人和未来生物科技(长沙)有限公司 | 基于基因序列的物种快速查找及建库方法、系统和介质 |
WO2020082224A1 (zh) * | 2018-10-23 | 2020-04-30 | 深圳华大智造科技有限公司 | 基于fpga的重测序分析方法和装置 |
US20200279205A1 (en) * | 2019-02-28 | 2020-09-03 | Autodesk, Inc. | Techniques for tailoring fabrication environments based on user, task, and expertise |
CN111653313A (zh) * | 2020-05-25 | 2020-09-11 | 中国人民解放军海军军医大学第三附属医院 | 一种变异序列的注释方法 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110021368B (zh) * | 2017-10-20 | 2020-07-17 | 人和未来生物科技(长沙)有限公司 | 比对型基因测序数据压缩方法、系统及计算机可读介质 |
CN110111851B (zh) * | 2017-10-20 | 2020-07-24 | 人和未来生物科技(长沙)有限公司 | 基因测序数据压缩方法、系统及计算机可读介质 |
CN111540409B (zh) * | 2020-04-20 | 2023-06-27 | 中南大学 | 基于隐私保护的基因相似度计算方法及基因信息获取方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1530668A (zh) * | 2003-03-11 | 2004-09-22 | Lg电子有限公司 | 前滤波器以及具有该滤波器的等离子显示装置 |
CN103093121A (zh) * | 2012-12-28 | 2013-05-08 | 深圳先进技术研究院 | 双向多步deBruijn图的压缩存储和构造方法 |
US20130311435A1 (en) * | 2012-05-18 | 2013-11-21 | International Business Machines Corporation | Minimization of surprisal data through application of hierarchy filter pattern |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6401043B1 (en) * | 1999-04-26 | 2002-06-04 | Variagenics, Inc. | Variance scanning method for identifying gene sequence variances |
JP4035600B2 (ja) | 2002-05-22 | 2008-01-23 | 国立大学法人 東京大学 | イマチニブに対する感受性の判定方法 |
US8032310B2 (en) * | 2004-07-02 | 2011-10-04 | The United States Of America As Represented By The Secretary Of The Navy | Computer-implemented method, computer readable storage medium, and apparatus for identification of a biological sequence |
US20080215251A1 (en) * | 2006-08-31 | 2008-09-04 | Pioneer Hi-Bred International, Inc. | Computational method for choosing nucleotide sequences to specifically silence genes |
US10090857B2 (en) | 2010-04-26 | 2018-10-02 | Samsung Electronics Co., Ltd. | Method and apparatus for compressing genetic data |
US8594951B2 (en) | 2011-02-01 | 2013-11-26 | Life Technologies Corporation | Methods and systems for nucleic acid sequence analysis |
EP2729107A4 (en) * | 2011-07-06 | 2014-12-31 | Fred Bergman Healthcare Pty Ltd | IMPROVEMENTS ON EVENT RECORDING ALGORITHMS |
WO2013006776A2 (en) | 2011-07-06 | 2013-01-10 | President And Fellows Of Harvard University | Systems and methods for genetic data compression |
KR101922129B1 (ko) | 2011-12-05 | 2018-11-26 | 삼성전자주식회사 | 차세대 시퀀싱을 이용하여 획득된 유전 정보를 압축 및 압축해제하는 방법 및 장치 |
EP2608096B1 (en) | 2011-12-24 | 2020-08-05 | Tata Consultancy Services Ltd. | Compression of genomic data file |
US20140108323A1 (en) | 2012-10-12 | 2014-04-17 | Bonnie Berger Leighton | Compressively-accelerated read mapping |
-
2014
- 2014-10-30 CN CN201410599394.7A patent/CN105631239B/zh active Active
-
2015
- 2015-10-29 US US14/926,051 patent/US10586609B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1530668A (zh) * | 2003-03-11 | 2004-09-22 | Lg电子有限公司 | 前滤波器以及具有该滤波器的等离子显示装置 |
US20130311435A1 (en) * | 2012-05-18 | 2013-11-21 | International Business Machines Corporation | Minimization of surprisal data through application of hierarchy filter pattern |
CN103093121A (zh) * | 2012-12-28 | 2013-05-08 | 深圳先进技术研究院 | 双向多步deBruijn图的压缩存储和构造方法 |
Non-Patent Citations (5)
Title |
---|
PATSARAPORN SOMBOONSAK ET.AL: "A New Edit Distance Method for Finding Similarity in DNA Sequence", 《INTERNATIONAL JOURNAL OF BIOMOLECULAR, AGRICULTURAL, FOOD AND BIOTECHNOLOGICAL ENGINEERING》 * |
吴柏宏: "Convolution and Its Applications to Sequence", 《国立暨南国际大学咨询工程系》 * |
孙勇: "基于关键字树和滑动窗口的大规模生物遗传序列算法研究", 《中国优秀硕士学位论文全文数据库》 * |
王怡 等: "Signal-LMS:一种局部序列匹配相似度预测信号肽的方法", 《生物物理学报》 * |
赵汀 等: "Vector cleaner: 一种新的去除测序目的基因载体序列的方法", 《南京农业大学学报》 * |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107688727A (zh) * | 2016-08-05 | 2018-02-13 | 深圳华大基因股份有限公司 | 生物序列聚类和全长转录组中转录本亚型识别方法和装置 |
CN106469144A (zh) * | 2016-08-29 | 2017-03-01 | 东软集团股份有限公司 | 文本相似度计算方法及装置 |
CN109698703B (zh) * | 2017-10-20 | 2020-10-20 | 人和未来生物科技(长沙)有限公司 | 基因测序数据解压方法、系统及计算机可读介质 |
CN109698703A (zh) * | 2017-10-20 | 2019-04-30 | 人和未来生物科技(长沙)有限公司 | 基因测序数据解压方法、系统及计算机可读介质 |
CN109698702A (zh) * | 2017-10-20 | 2019-04-30 | 人和未来生物科技(长沙)有限公司 | 基因测序数据压缩预处理方法、系统及计算机可读介质 |
US11551785B2 (en) | 2017-10-20 | 2023-01-10 | Genetalks Bio-Tech (Changsha) Co., Ltd. | Gene sequencing data compression preprocessing, compression and decompression method, system, and computer-readable medium |
CN109698702B (zh) * | 2017-10-20 | 2020-10-23 | 人和未来生物科技(长沙)有限公司 | 基因测序数据压缩预处理方法、系统及计算机可读介质 |
WO2019076177A1 (zh) * | 2017-10-20 | 2019-04-25 | 人和未来生物科技(长沙)有限公司 | 基因测序数据压缩预处理、压缩、解压方法、系统及计算机可读介质 |
WO2020078341A1 (zh) * | 2018-10-15 | 2020-04-23 | 智慧芽信息科技(苏州)有限公司 | 基因序列的权利范围标注、检索及信息标注方法、系统 |
WO2020082224A1 (zh) * | 2018-10-23 | 2020-04-30 | 深圳华大智造科技有限公司 | 基于fpga的重测序分析方法和装置 |
CN113168888A (zh) * | 2018-10-23 | 2021-07-23 | 深圳华大智造科技股份有限公司 | 基于fpga的重测序分析方法和装置 |
US11836430B2 (en) | 2018-10-23 | 2023-12-05 | Mgi Tech Co., Ltd. | FPGA-based resequencing analysis method and device |
US20200279205A1 (en) * | 2019-02-28 | 2020-09-03 | Autodesk, Inc. | Techniques for tailoring fabrication environments based on user, task, and expertise |
CN109887547A (zh) * | 2019-03-06 | 2019-06-14 | 苏州浪潮智能科技有限公司 | 一种基因序列比对滤波加速处理方法、系统及装置 |
CN110990063A (zh) * | 2019-11-28 | 2020-04-10 | 中国科学院计算技术研究所 | 一种用于基因相似性分析的加速装置、方法和计算机设备 |
CN111063394B (zh) * | 2019-12-13 | 2023-07-11 | 人和未来生物科技(长沙)有限公司 | 基于基因序列的物种快速查找及建库方法、系统和介质 |
CN111063394A (zh) * | 2019-12-13 | 2020-04-24 | 人和未来生物科技(长沙)有限公司 | 基于基因序列的物种快速查找及建库方法、系统和介质 |
CN111653313A (zh) * | 2020-05-25 | 2020-09-11 | 中国人民解放军海军军医大学第三附属医院 | 一种变异序列的注释方法 |
CN111653313B (zh) * | 2020-05-25 | 2022-07-29 | 中国人民解放军海军军医大学第三附属医院 | 一种变异序列的注释方法 |
Also Published As
Publication number | Publication date |
---|---|
US10586609B2 (en) | 2020-03-10 |
CN105631239B (zh) | 2018-08-17 |
US20160132636A1 (en) | 2016-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105631239A (zh) | 用于管理基因序列的方法和装置 | |
US10679727B2 (en) | Genome compression and decompression | |
Li | Minimap and miniasm: fast mapping and de novo assembly for noisy long sequences | |
Hu et al. | OSA: a fast and accurate alignment tool for RNA-Seq | |
Handfield et al. | Unsupervised clustering of subcellular protein expression patterns in high-throughput microscopy images reveals protein complexes and functional relationships between proteins | |
US20150100246A1 (en) | System and method for predicting colon cancer recurrence | |
CN112687332B (zh) | 用于确定致病风险变异位点的方法、设备和存储介质 | |
Roberts et al. | Updating RNA-Seq analyses after re-annotation | |
CN111913999B (zh) | 基于多组学与临床数据的统计分析方法、系统和存储介质 | |
CN106844518A (zh) | 一种基于子空间学习的不完整跨模态检索方法 | |
CN116994745B (zh) | 一种基于多模态模型的癌症患者预后预测方法及装置 | |
CN114821137A (zh) | 一种多模态肿瘤数据融合方法和装置 | |
CN114420309A (zh) | 建立药物协同作用预测模型的方法、预测方法及对应装置 | |
US20220367056A1 (en) | System and method for diagnostics and prognostics of mild cognitive impairment using deep learning | |
US20220344051A1 (en) | System and method for diagnostics and prognostics of mild cognitive impairment using deep learning | |
Wang et al. | Lung cancer subtype diagnosis using weakly-paired multi-omics data | |
CA3056303A1 (en) | Systems and methods for determining effects of genetic variation on splice site selection | |
Qattous et al. | PaCMAP-embedded convolutional neural network for multi-omics data integration | |
Wang et al. | Deep learning integrates histopathology and proteogenomics at a pan-cancer level | |
Huang et al. | Bidirectional deep neural networks to integrate RNA and DNA data for predicting outcome for patients with hepatocellular carcinoma | |
CN113961720A (zh) | 预测实体关系的方法和关系预测模型的训练方法、装置 | |
Palmal et al. | Integrative prognostic modeling for breast cancer: Unveiling optimal multimodal combinations using graph convolutional networks and calibrated random forest | |
EP4327332A1 (en) | High dimensional spatial analysis | |
CN114429786A (zh) | 组学数据处理方法、装置、电子设备和存储介质 | |
US11177018B2 (en) | Stable genes in comparative transcriptomics |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |