技术特征:
1.一种基因测序数据压缩方法,其特征在于实施步骤包括:
1)从基因测序数据样本data中遍历获取读长为Lr的读序列R;
2)针对每一条读序列R,选择k位原始基因字母作为原始基因字符串CS0,从原始基因字符串CS0开始以k位长度作为滑动窗口顺序生成定长的k位字符串作为短串K-mer,根据短串K-mer确定读序列R的正负链类型d,且通过预设的预测数据模型P1获取每一个短串K-mer对应相邻位的预测字符c得到长度为Lr-k位的预测字符集PS,所述预测数据模型P1包含参考基因组的正链及负链中任意短串K-mer及其对应相邻位的预测字符c;将读序列R中不含k位原始基因字母的Lr-k位原始基因字母、预测字符集PS编码后通过可逆函数进行可逆运算,所述可逆函数将任意一对相同的字符编码的运算输出结果相同;将读序列R的正负链类型d、原始基因字符串CS0以及可逆运算结果作为三条数据流压缩输出。
2.根据权利要求1所述的基因测序数据压缩方法,其特征在于,步骤2)的实施步骤包括:
2.1)从基因测序数据样本data中遍历获取一条读长为Lr的读序列R,针对读序列R选择k位原始基因字母作为原始基因字符串CS0,从原始基因字符串CS0开始以k位长度作为滑动窗口顺序生成定长子字符串作为短串K-mer得到读序列短串集合KR;
2.2)按照顺序生成定长子字符串作为短串K-mer,根据短串K-mer确定读序列R的正负链类型d,且通过预设的预测数据模型P1获取每一个短串K-mer对应相邻位的预测字符c得到长度为Lr-k位的预测字符集PS,所述预测数据模型P1包含参考基因组的正链及负链中任意短串K-mer及其对应相邻位的预测字符c;
2.3)将读序列R中不含k位原始基因字母的Lr-k位原始基因字母、预测字符集PS编码后通过可逆函数进行可逆运算,所述可逆函数将任意一对相同的字符编码的运算输出结果相同;
2.4)将读序列R的正负链类型d、原始基因字符串CS0以及可逆运算结果作为三条数据流压缩输出;
2.5)判断基因测序数据样本data中的读序列R是否遍历完毕,如果尚未遍历完毕,则跳转执行步骤2.1);否则结束并退出。
3.根据权利要求2所述的基因测序数据压缩方法,其特征在于,步骤2.2)的详细步骤包括:
2.2.1)针对读序列短串集合KR顺序提取短串K-mer,基于短串K-mer构造正链预测序列KP1,正链预测序列KP1中对于读序列短串集合KR中任意短串K-mer均存在一个对应的元组(k-mer,0),其中k-mer为短串K-mer,0表示假设该短串K-mer来自正链;
2.2.2)针对正链预测序列KP1中的每一个元组(k-mer,0)通过预测数据模型P1获取其对应的预测字符c,得到所有预测字符c构成的正链预测字符序列PS1;所述预测数据模型P1包含参考基因组的正链及负链中任意短串K-mer及其相邻位对应的预测字符c;
2.2.3)针对读序列短串集合KR顺序提取短串K-mer,基于短串K-mer构造负链预测序列KP2,负链预测序列KP2中对于读序列短串集合KR中任意短串K-mer均存在一个对应的元组(k-mer,1),其中k-mer为短串K-mer,1表示假设该短串K-mer来自负链;
2.2.4)针对负链预测序列KP2中的每一个元组(k-mer,1)通过预测数据模型P1获取其相邻位对应的预测字符c,得到所有预测字符c构成的负链预测字符序列PS2;
2.2.5)计算正链预测字符序列PS1、读序列R中不含k位原始基因字母的Lr-k位原始基因字母两者之间的编辑距离L1,计算负链预测字符序列PS2、读序列R中不含k位原始基因字母的Lr-k位原始基因字母两者之间的编辑距离L2;
2.2.6)判断编辑距离为L1小于L2是否成立,如果成立则判定读序列R的正负链类别d为正链、将正链预测字符序列PS1作为Lr-k位的预测字符集PS;否则,判定读序列R的正负链类别d为负链、将负链预测字符序列PS2作为Lr-k位的预测字符集PS。
4.根据权利要求3所述的基因测序数据压缩方法,其特征在于,所述预测数据模型P1为长度为L的基因字符串,步骤2.2.2)针对正链预测序列KP1中的每一个元组(k-mer,0)通过预测数据模型P1获取其相邻位对应的预测字符c的详细步骤包括:
2.2.2.1)使用预测数据模型P1对应的映射函数将正链预测序列KP1中的每一个元组(k-mer,0)映射到一个[0,L]范围的整数集合中的某一行,其中L是整数集合的上确界,整数集合的上确界L与预测数据模型P1的长度相同,0是整数集合的下确界,根据映射结果生成一维表T1,一维表T1的长度为(Lr–k+1),一维表T1中的第i个元素T1[i]分别顺序存储映射至整数集合中第i行的元组(k-mer,0)对应的映射函数的值,i∈[0,Lr - k];
2.2.2.2)根据一维表T1各个元组(k-mer,0)对应的映射函数的值从预测数据模型P1获取在其相邻位对应的预测字符c生成一维字符序列PS1,使得一维字符序列PS1的第i位PS1[i]的值等于预测数据模型P1中的第i位字符P1[T1[i]] ,预测数据模型P1中的第i位字符P1[T1[i]]为映射函数的值为PS1[i]对应的元组(k-mer,0) 对应的预测字符c,其中i∈[0,Lr - k],Lr为读序列R的读长,k为短串K-mer的长度。
5.根据权利要求4所述的基因测序数据压缩方法,其特征在于,步骤2.2.4)针对负链预测序列KP2中的每一个元组(k-mer,1)通过预测数据模型P1获取其相邻位对应的预测字符c的详细步骤包括:
2.2.4.1)使用预测数据模型P1对应的映射函数将负链预测序列KP2中的每一个元组(k-mer,1)映射到一个[0,L]范围的整数集合中的某一行,其中L是整数集合的上确界,整数集合的上确界L与预测数据模型P1的长度相同,0是整数集合的下确界,根据映射结果生成一维表T2,一维表T2中长度为(Lr–k+1),一维表T2中的第i个元素T2[i] 分别顺序存储映射至整数集合中第i行的元组(k-mer,1)对应的映射函数的值,i∈[0,Lr-k];
2.2.4.2)根据一维表T2各个元组(k-mer,1)对应的映射函数的值从预测数据模型P1获取在其相邻位对应的预测字符c生成一维字符序列PS2,使得一维字符序列PS2的第i位PS2[i]的值等于预测数据模型P1中的第i位字符P1[T2[i]],预测数据模型P1中的第i位字符P1[T2[i]]为映射函数的值为PS2[i]对应的元组(k-mer,0) 对应的预测字符c,其中i∈[0,Lr-k],Lr为读序列R的读长,k为短串K-mer的长度。
6.根据权利要求3所述的基因测序数据压缩方法,其特征在于,所述预测数据模型P1为预先基于参考基因组中的短串K-mer及其相邻位对应的碱基字母c0完成训练的神经网络模型;步骤2.2.2)针对正链预测序列KP1中的每一个元组(k-mer,0)通过预测数据模型P1的映射函数映射获取其对应的预测字符c具体是指将正链预测序列KP1中的每一个元组(k-mer,0)输入神经网络模型,得到该元组(k-mer,0)对应的预测字符c;步骤2.2.4)针对负链预测序列KP2中的每一个元组(k-mer,1)通过预测数据模型P1的映射函数映射获取其相邻位对应的预测字符c具体是指将正链预测序列KP2中的每一个元组(k-mer,1)输入神经网络模型,得到该元组(k-mer,1)对应的预测字符c。
7.根据权利要求1所述的基因测序数据压缩方法,其特征在于,步骤2)中的可逆函数具体采用XOR异或函数或者位减法函数。
8.根据权利要求1所述的基因测序数据压缩方法,其特征在于,步骤2)中的压缩具体是指使用统计模型和熵编码进行压缩。
9.一种基因测序数据压缩系统,包括计算机系统,其特征在于,所述计算机系统被编程以执行权利要求1~8中任意一项所述的基因测序数据压缩方法的步骤。
10.一种计算机可读介质,所述计算机可读介质上存储有计算机程序,其特征在于,所述计算机程序使计算机执行权利要求1~8中任意一项所述的基因测序数据压缩方法的步骤。