[发明专利]一种生物基因序列的概要数据生成方法及系统有效
申请号: | 202110551818.2 | 申请日: | 2021-05-20 |
公开(公告)号: | CN113496762B | 公开(公告)日: | 2022-09-27 |
发明(设计)人: | 刘卫国;林浩然;徐晓明;殷泽坤 | 申请(专利权)人: | 山东大学 |
主分类号: | G16B40/00 | 分类号: | G16B40/00;G16B50/00 |
代理公司: | 济南圣达知识产权代理有限公司 37221 | 代理人: | 祖之强 |
地址: | 250014 山*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 生物 基因 序列 概要 数据 生成 方法 系统 | ||
本公开提供了一种生物基因序列的概要数据生成方法及系统,获取待处理的基因序列;将待处理的基因序列利用滑动窗口进行K‑mer分解,将M个K‑mer及其对应的M个反向互补链的K‑mer进行对比,对每对正向、反向K‑mer,选取字符值较小的K‑mer,最终得到M个K‑mer,然后进行向量化转置操作;将转置操作得到的向量输入到基于单指令多数据流SIMD改进的哈希函数中,得到各个向量对应的哈希值;继续滑动窗口获取新的子序列K‑mer,重复上述操作,直到待处理基因序列的所有K‑mer都计算出对应的哈希值,根据所有的哈希值构建待处理基因序列的哈希值列表;根据哈希值列表,生成待处理的基因序列的概要数据;本公开采用向量化的实现方式,计算速度更快,能够实现生物基因序列的更高效处理。
技术领域
本公开涉及生物数据处理技术领域,特别涉及一种生物基因序列的概要数据生成方法及系统。
背景技术
本部分的陈述仅仅是提供了与本公开相关的背景技术,并不必然构成现有技术。
随着测序技术的发展,生物基因数据库的规模越来越大。从刚开始的公开基因库数据总量不到五千万条核苷酸序列,到现如今一个测序仪器测序一次便可产生超过一万亿条序列,数据规模急剧增加,新测序技术的数据产生能力已经超越了“摩尔定律”。为了高效的处理基因数据,Mash、Dashing等工具相继被开发出来。在这类工具中,对于基因数据的处理转化为对基因序列中一系列公共子序列片段(K-mer,长度为K的子字符串)的处理。一般会应用均匀、确定性的哈希算法将这些子序列映射成哈希值,然后对哈希值进行处理,采用一定方法形成相应的sketch(即一个能够代表或者总结原始数据的紧凑的、近似的数据摘要),这个sketch相比于原基因数据要小得多,原基因数据可能有几个G的大小,而sketch仅有几KB或者几十KB,这样就达到了数据降维的效果。形成sketch后,后续利用不同序列的sketch进行比对,可以得到Jaccard系数、distance等,从而进行相应的研究。而MinHash、HyperLogLog是其中比较具有代表性的sketch算法。
Minhash最初是为了检测近乎重复的网页和图像而开发的,后应用于生物信息学领域。它依赖于哈希函数的均一性和确定性,即对于输入的一系列数据经过哈希函数之后,需要均匀随机的分布在输出数据的范围之内,并且对于相同的输入应该保证有相同的输出。MinHash算法处理序列数据的方式是对每条序列构建一个sketch集合,通过集合之间的Jaccard相似性来估计序列的相似性。其对序列数据的处理方式更详细一些的描述为通过滑动窗口的方式,将序列切分为一个个的K-mer,通过哈希函数将K-mer作为输入,输出为一个哈希值,这就完成了字符串到整数的映射。所有得到的哈希值构建成一个集合,通过对于这些集合之间相似性的计算来代表原始序列的相似性。但是由于全部的K-mer所映射的哈希值所构成的集合大小和序列长度呈线性关系,所以为了达到对数据量的压缩目的,对两条序列所对应的全部哈希值所构成的集合进行计算Jaccard相似度的时候,如果两个集合是通过相同的哈希函数构建出来的,根据哈希函数的均一性和确定性,经过哈希映射之后的哈希值在集合中的分布是随机的,于是两个集合拥有相同的最小哈希值的概率和两个集合交集的大小与并集大小的比值是相等的,两个集合之间交集和并集的比值正是Jaccard相似性的定义。这也是MinHash的基本思路。
基于HyperLogLog的sketch算法近年来也被应用于生物序列分析之中,HyperLogLog是基于数据位模式(bit-pattern)来估计集合的势(集合中元素的个数)。HyperLogLog的思想就是通过一个具有均一性和确定性的哈希函数对原始数据求哈希值,然后通过哈希值中最长的前导零加一个1的值去估计集合中有多少个不同的元素。构建sketch时,先对于序列中的每个元素K-mer计算哈希值,然后取出这个哈希值的前缀p位作为sketch中的索引,索引到寄存器数组相应的位置处,剩余的q位根据前导零的个数去估计每个寄存器集合的大小。当获得一个新的更长的前导零,就更新当前寄存器中的数据。最后通过对每个寄存器存储的值求调和平均数来估计原始集合势的大小。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东大学,未经山东大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110551818.2/2.html,转载请声明来源钻瓜专利网。