【技术实现步骤摘要】
一种基于聚类算法的高性能k
‑
mer频次计数方法及系统
[0001]本专利技术属于生物信息学领域,涉及一种基因组K
‑
mer频次计数方法,尤其涉及一种基于聚类算法的k
‑
mer频次计数方法。
技术介绍
[0002]自2005年罗氏推出第一款二代测序仪罗氏454后,生命科学正式开始进入高通量测序时代。Illumina系列测序平台的推出,极大地降低了二代测序的价格,使得高通量测序在生命科学各个研究领域得到了广泛的普及。至今,第二代短读长测序技术在全球测序市场上仍然占有绝对的优势地位。
[0003]在生物信息学领域,计算每个k
‑
mer(长度为k的子串)在一个长串中的出现次数是一个核心的子问题,包括基因组组装、测序读取的纠错、快速多序列比对和重复检测,以及评估基因组的大小、杂合程度和物种样品污染程度等。第二代测序技术虽然大大提高了测序的通量,但其获得的单条序列长度很短,往往只在50~300bp,并且因为测序的覆盖范围更深,导致基因组项目中需要处理的序列数量迅速增加,为后续基因组分析提供了巨大挑战。
[0004]目前关于k
‑
mer计数提出了多种算法,但均有着无法避免的缺陷。如获取k
‑
mer的过程(即分裂基因序列的过程)几乎都采用了遍历的方式,包括前向遍历与逆向遍历,其时间复杂度高;如对k
‑
mer频次进行统计时,为了在查找时间上更高效,几乎全部采用了Hash表算法。即使是流行的k< ...
【技术保护点】
【技术特征摘要】
1.一种基于聚类算法的高性能k
‑
mer频次计数方法,其特征在于,包括以下步骤:CPU创建CUDA流,所述CUDA流包括以下GPU核函数及其执行的操作:S1:按照预设子序列长度K将基因序列reads拆分为L
‑
K+1段k
‑
mer序列;S2:以k
‑
mer序列中每个碱基位置为坐标点,将拆分获得的多段k
‑
mer序列分别转换为对应的坐标数组并添加坐标偏移;S3:利用聚类算法计算出每个坐标数组的质心特征值,并将所有k
‑
mer序列与k
‑
mer序列对应的质心特征值返回至CPU;CPU根据k
‑
mer序列及对应的质心特征值,对所有k
‑
mer出现的频次进行计数;CPU输出k
‑
mer频次分布结果。2.根据权利要求1所述的一种基于聚类算法的高性能k
‑
mer频次计数方法,其特征在于,所述基因组格式文件包括fasta或fastq格式文件。3.根据权利要求1所述的一种基于聚类算法的高性能k
‑
mer频次计数方法,其特征在于,所述CPU创建CUDA流之前还包括:CPU读取基因组格式文件,得到长度为L的基因序列reads。4.根据权利要求1所述的一种基于聚类算法的高性能k
‑
mer频次计数方法,其特征在于,所述步骤S2具体包括以下子步骤:S201,对拆分后得到的k
‑
mer序列,在ATCG笛卡尔坐标系中,以A、T为垂直坐标的正负轴,G、C为水平坐标的正负轴,以k
‑
mer序列中每个碱基位置为坐标点,将k
‑
mer序列中的每一个碱基都表达为坐标系中的坐标点,从而将每段k
‑
mer序列转换为ATCG笛卡尔坐标系中对应的坐标数组;S202,基于火星坐标系的坐标偏移算法,在每个坐标数组各个碱基的坐标值中添加坐标偏移,将坐标点转换为浮点型。5.根据权利要求1所述的一种基于聚类算法的高性能k
‑
mer频次计数方法,其特征在于,所述步骤S3具体包括以下子步骤S301,以碱基坐标点之间欧几里得距离的均方差作为准则函数,对每个坐标数组进行Kmeans聚类计算分析,获得每个坐标数组的质心特征值,并将其作为每个坐标数组对应的k
‑
mer序列质心表达;S302,将基因组格式文件中reads序列的所有k
‑
mer序列都转换为质心表达后,将所有k
‑
mer序列与k
‑
mer序列对应的质心特征值异步返回至CPU。6.根据权利要求1所述的一种基于聚类算法的高性能k
‑
mer频次计数方法,其特征在于,所述聚类算法包括K均值聚类、均值漂移聚类和基于高斯混合模型的最大期望聚类。7.根据权利要求1所述的一种基于聚类算法的高性能k
‑
mer...
【专利技术属性】
技术研发人员:李国良,张也,吉祥宇,刘宇驰,杨诗宇,武晟祥,陈松林,谢宇涛,杨月,刘子祯,
申请(专利权)人:天津大学四川创新研究院,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。