适应度空间的粗糙度评估方法、装置、电子设备及存储介质
未命名
07-22
阅读:69
评论:0
1.本技术涉及生物技术领域,具体而言,本技术涉及一种适应度空间的粗糙度评估方法、装置、电子设备及存储介质。
背景技术:
2.在生物学研究中,越来越多的数据被应用于研究生物的复杂性和多样性。生物序列是其中的一个重要部分,包括dna序列、蛋白质序列、rna序列等。这些生物序列描述了生物体内的基因、蛋白质等分子在空间和时间上的变化,对于了解生命的本质和生物系统的功能和演化具有重要意义。
3.生物序列适应度空间是用于描述生物序列在不同环境下适应性。适应度空间的粗糙度评估是对适应性进行量化,以便更好地理解生物序列在适应环境中的行为。然而,由于生物序列适应度空间的复杂性和数据的不确定性,粗糙度评估评估往往会出现误差。
4.其中,数据集不完整或者存在误差会导致适应度空间的表示不准确,导致粗糙度评估结果出现误差。举例来说,数据集中缺失关键的生物序列会导致适应度空间的粗糙度评估结果产生误差,在生物序列较长时,其数量是一个天文数字,因此,得到的适应度空间相比完整空间将会存在大量生物序列缺失,由于适应度空间存在缺失,相比无缺失的原始适应度空间,本身已经损失了大量生物序列涵盖的信息,也就是说,粗糙度评估结果的系统误差无法被消灭,只能适当减小。
5.由上可知,适应度空间的粗糙度评估结果的误差大成为了亟需解决的问题。
技术实现要素:
6.本技术各提供了一种适应度空间的粗糙度评估方法、装置、电子设备及存储介质,可以解决相关技术中存在的生物序列适应度空间的粗糙度评估结果误差大的问题。所述技术方案如下:
7.根据本技术的一个方面,获取数据集;所述数据集包括多个生物序列;基于所述数据集中各所述生物序列之间的突变位点,确定所述数据集中的多个邻接序列对;各所述邻接序列对中的两个生物序列之间的突变位点符合设定突变位点数;根据各所述邻接序列对对适应度空间的粗糙度进行估计,得到粗糙度评估结果。
8.根据本技术的一个方面,数据集获取模块,用于获取数据集;所述数据集包括多个生物序列;序列对确认模块,用于基于所述数据集中各所述生物序列之间的突变位点,确定所述数据集中的多个邻接序列对;各所述邻接序列对中的两个生物序列之间的突变位点符合设定突变位点数;粗糙度评估模块,用于根据各所述邻接序列对对适应度空间的粗糙度进行估计,得到粗糙度评估结果。
9.根据本技术的一个方面,一种电子设备,包括至少一个处理器以及至少一个存储器,其中,所述存储器上存储有程序指令或代码;所述程序指令或代码被所述处理器加载并执行,使得电子设备实现如上所述的适应度空间的粗糙度评估方法。
10.根据本技术的一个方面,一种存储介质,其上存储有程序指令或代码,所述程序指令或代码被处理器加载并执行,以实现如如上所述的适应度空间的粗糙度评估方法。
11.根据本技术的一个方面,一种应用程序产品,应用程序产品包括程序指令或代码,程序指令或代码存储在存储介质中,电子设备的处理器从存储介质读取程序指令或代码,加载并执行该程序指令或代码,使得电子设备实现如上所述的适应度空间的粗糙度评估方法。
12.本技术提供的技术方案带来的有益效果是:
13.在上述技术方案中,通过确定数据集中的邻接序列对,基于各邻接序列对得到粗糙度评估结果,避免出现数据集中非邻接序列在生物序列缺失时,对编辑距离产生的异常光滑效应;邻接序列在生物序列缺失前后,都能保持一个近似的粗糙度,通过计算邻接序列,能够尽可能避免粗糙度评估结果不受生物序列缺失的影响,保证粗糙度评估结果的精确性,从而能够有效地解决相关技术中存在的生物序列适应度空间的粗糙度评估结果误差大的问题。
附图说明
14.为了更清楚地说明本技术实施例中的技术方案,下面将对本技术实施例描述中所需要使用的附图作简单地介绍。
15.图1是根据本技术所涉及的实施环境的示意图;
16.图2是根据一示例性实施例示出的一种适应度空间的粗糙度评估方法的流程图;
17.图3是根据一示例性实施例示出的另一种适应度空间的粗糙度评估方法的流程图;
18.图3a是图3对应实施例所涉及的两种得到邻接序列对的具体实现示意图;
19.图3b是图3对应实施例所涉及的计算适应度之差和标准化适应度的具体实现示意图;
20.图3c图3对应实施例所涉及的一种基于突变位点分组的具体实现示意图;
21.图4是一应用场景中一种适应度空间的粗糙度评估方法的具体实现示意图;
22.图4a是图4应用场景中的极值法在数据集a0-a5上的粗糙度评估结果;
23.图4b是图4应用场景中的拟合法在数据集a0-a5上的粗糙度评估结果;
24.图4c是图4应用场景中的一种适应度空间的粗糙度评估方法在数据集a0-a5上的粗糙度评估结果;
25.图5是根据一示例性实施例示出的一种适应度空间的粗糙度评估装置的结构框图;
26.图6是根据一示例性实施例示出的一种电子设备的硬件结构图;
27.图7是根据一示例性实施例示出的一种电子设备的结构框图。
具体实施方式
28.下面详细描述本技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本技术,而不能解释为对本技术的限制。
29.本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本技术的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
30.下面是对本技术涉及的几个名词进行的介绍和解释:
31.蛋白质适应度,指在某种功能特性标准下,蛋白质所测量出的功能特性强度,一般为线性连续值。
32.蛋白质适应度空间,指由相同长度的蛋白序列的全部突变,与其适应度构成的完整序列空间-适应度键值对所得到的数据集。
33.蛋白质适应度数据集,指由蛋白质适应度空间中采样出的数据集合,通常其大小会远小于整个蛋白质适应度空间。
34.蛋白质粗糙度,指蛋白质数据集的崎岖程度,蛋白质的功能一般由一个或数个位点所决定,但位点之间可能会存在复杂的高阶交互作用,粗糙度即是用来评估某个蛋白质适应度空间,总的高阶作用的大小。粗糙度越高,蛋白质适应度空间将会具有更复杂的高阶交互作用。
35.异常光滑效应,在生物序列适应度空间的粗糙度评估时忽略了生物序列之间的差异性,导致粗糙度评估结果不准确。
36.如前所述,生物序列适应度空间的复杂性和数据的不确定性,会导致粗糙度评估结果出现误差。
37.以生物序列为蛋白质为例,蛋白质是一种有机大分子,是构成细胞的最基本的物质,也是人体的主要组成部分以及食物的重要成分之一。在自然界中,天然的存在的蛋白质被称为野生型蛋白质。由于人们对天然蛋白质的某些功能特性不够满意,因此对野生型蛋白质的一些位点进行诱导突变,以此得到了新的蛋白质序列,并测定这些突变后的蛋白质对应的功能特性,这些蛋白质被称为野生型所对应的突变型蛋白质。对于人们需要的功能特性,被称为蛋白质的适应度。
38.将野生型与突变型蛋白质,以及它们的功能特性指标组合起来,就得到了蛋白质序列适应度空间。因为在蛋白质序列较长时,其不同突变型的数量是一个天文数字,因此得到的适应度空间相比完整空间,存在大量蛋白质序列缺失。
39.目前,可以采用极值法或拟合法对蛋白质序列适应度空间进行粗糙度评估。其中,极值法用蛋白质序列适应度空间中局部极值序列的数量和所有序列的数量的比值来得到粗糙度评估结果。拟合法为蛋白质序列适应度空间构建一个线性回归模型,并使用拟合误差来得到粗糙度评估结果。
40.但是,由于这些方法为短蛋白质序列设计,只能在蛋白质序列适应度空间完整时,获得精确的粗糙度评估结果。当蛋白质序列适应度空间出现缺失时,粗糙度评估结果都会出现大量系统误差。然而,真实的蛋白质适应度空间,一定存在大量的蛋白质序列缺失,因此,上述方法的粗糙度评估结果并不可靠。
41.由上可知,相关技术中仍存在适应度空间的粗糙度评估结果误差大、不准确的缺陷。
42.为此,本技术提供的适应度空间的粗糙度评估方法,能够有效地减少对适应度空间的粗糙度评估的误差,提升粗糙度评估结果的精确度,相应地,该适应度空间的粗糙度评估方法适用于适应度空间的粗糙度评估装置、该适应度空间的粗糙度评估装置可部署于配置冯诺依曼体系结构的电子设备,例如,该电子设备可以是台式电脑、笔记本电脑、服务器等等。
43.为使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术实施方式作进一步地详细描述。
44.图1为一种适应度空间的粗糙度评估方法所涉及的一种实施环境的示意图。需要说明的是,该种实施环境只是一个适配于本发明的示例,不能认为是提供了对本发明的使用范围的任何限制。
45.该实施环境包括采集端110和服务端130。
46.具体地,采集端110,也可以认为是具有采集生物序列的设备,包括但不限于蛋白质测序仪、dna序列分析电泳仪等设备。例如,采集端110为蛋白质测序仪。
47.服务端130,该服务端130可以是台式电脑、笔记本电脑、服务器等等电子设备,还可以是由多台服务器构成的计算机集群,甚至是由多台服务器构成的云计算中心。其中,服务端130用于提供后台服务,例如,后台服务包括但不限于适应度空间的粗糙度评估服务等等。
48.服务端130与采集端110之间通过有线或者无线等方式预先建立网络通信连接,并通过该网络通信连接实现服务端130与采集端110之间的数据传输。传输的数据包括但不限于:包括多个生物序列的数据集等等。
49.在一应用场景中,通过采集端110与服务端130的交互,采集端110对生物序列进行采集得到数据集,并将该数据集上传至服务端130,以请求服务端130提供适应度空间的粗糙度评估服务。
50.对于服务端130而言,在获取到采集端110上传的数据集之后,便调用适应度空间的粗糙度评估服务,基于数据集中各生物序列之间的突变位点,确定数据集中的多个邻接序列对,根据各邻接序列对对适应度空间的粗糙度进行估计,得到粗糙度评估结果,以此来解决相关技术中存在的生物序列适应度空间的粗糙度评估结果误差大、不准确的问题。
51.请参阅图2,本技术实施例提供了一种适应度空间的粗糙度评估方法,该方法适用于电子设备,该电子设备可以是图1所示出实施环境中的服务端130。
52.在下述方法实施例中,为了便于描述,以该方法各步骤的执行主体为电子设备为例进行说明,但是并非对此构成具体限定。
53.如图2所示,该方法可以包括以下步骤:
54.步骤310,获取数据集。
55.其中,数据集包括多个生物序列,数据集中的各生物序列属于同一类型,生物序列的类型可以是蛋白质序列、dna序列、rna序列,在此不作限定。
56.在一个可能的实现方式,若实验人员期望对蛋白质适应度空间进行粗糙度评估,那么数据集中包括多个蛋白质序列。
57.补充说明的是,数据集中不但可以包括多个生物序列,还可以包括各生物序列对应的适应度,在一个可能的实现方式,数据集为为表格状数据集,至少包含两列,若数据集中的生物序列是蛋白质序列,那么表格列为蛋白质序列的氨基酸组成sequence和蛋白质序列的适应度fitness,数据集读入后,会以列表形式存储。每个列表元素为sequence和fitness构成的元组。
58.步骤330,基于数据集中各生物序列之间的突变位点,确定数据集中的多个邻接序列对。
59.其中,各邻接序列对中的两个生物序列之间的突变位点符合设定突变位点数,邻接序列对包括两条生物序列,可以由突变前的生物序列与突变后的生物序列组成,在此不作限定。
60.首先说明的是,生物序列之间并非完全相异,突变位点即可以视为生物序列之间的相异处。突变位点可以由自然变异产生,也可以由人工干预产生;以蛋白质序列为生物序列为例,由于对天然存在的天然蛋白质序列的某些功能特性不够满意,因此,实验人员采取对野生型蛋白质的某些位点进行诱导突变的方法,得到新的突变蛋白质序列,以满足人类的需要,也就是还说,天然蛋白质序列与突变蛋白质之间的相异处是发生诱导突变的位点,即突变位点;需要说明的是,以上方案仅提供示例性说明,不构成对本发明的限制。
61.也就是说,当两个生物序列之间的突变位点为1时,则可以表示该两个生物序列有一个位点的相异处,其中,由于利用非邻接矩阵对计算得到粗糙度评估结果,可能会出现异常光滑效应,影响粗糙度评估结果的精度,因此,为了避免出现异常光滑效应,设定突变位点数可以设置的尽量小,在一个可能的实现方式,设定突变位点数为1,当两条生物序列之间的突变位点为1时,这两条生物序列可以组成邻接序列对。
62.编辑距离用于指示生物序列之间的相似度,那么,在一个可能的实现方式,可以通过编辑距离表示两条生物序列之间的突变位点数,例如,生物序列a为“aaa”,生物序列b为“aab”,那么,两者之间的编辑距离为1,进一步地,设定距离阈值用于确定邻接序列对,若设定距离阈值为“编辑距离等于1”,那么,两个生物序列之间的编辑距离为1,则可以由上述两个生物序列得到邻接序列对。
63.步骤350,根据各邻接序列对对适应度空间的粗糙度进行估计,得到粗糙度评估结果。
64.首先说明的是,适应度空间是指由相同长度的生物序列的全部突变位点,与其适应度构成的完整序列空间-适应度键值对所得到的数据集;粗糙度是指适应度空间的表面特征的程度,即适应度空间表面的不规则程度或复杂程度,粗糙度越高,适应度空间将会具有更复杂的高阶交互作用。
65.举例而言,数据集中的生物序列为蛋白质序列,那么,可以基于相同长度的蛋白质序列的的全部突变位点、以及各蛋白质序列的适应度,得到蛋白质适应度空间,而蛋白质适应度空间的粗糙度,即是对该蛋白质适应度空间进行估计得到的、蛋白质适应度空间的不规则程度或复杂程度。
66.如前所述,数据集中不但可以包括多个生物序列,还可以包括各生物序列对应的适应度,基于此,可以基于各邻接序列对及其适应度,对数据集对应的适应度空间进行估计,以得到粗糙度评估结果。
67.通过上述过程,通过确定数据集中的邻接序列对,基于各邻接序列对得到粗糙度评估结果,避免出现数据集中非邻接序列在生物序列缺失时,对编辑距离产生的异常光滑效应;邻接序列在生物序列缺失前后,都能保持一个近似的粗糙度,通过邻接序列得到的粗糙度评估结果,能够尽可能避免粗糙度评估结果不受生物序列缺失的影响,保证粗糙度评估结果的精确性,从而能够有效地解决相关技术中存在的生物序列适应度空间的粗糙度评估结果误差大的问题。
68.请参阅图3本技术实施例提供了一种适应度空间的粗糙度评估方法,该方法适用于电子设备,该电子设备可以是图1所示出实施环境中的服务端130。
69.步骤4010,获取数据集。
70.首先说明的是,根据突变情况,生物序列可以是未发生突变的,可以是发生突变的,为了丰富数据集,使得粗糙度评估结果更准确,在一个可能的实现方式,数据集可以包括突变数据集,该突变数据集可以是来自深度突变扫描的蛋白质突变数据集,例如avgfp、gb1等。
71.补充说明的是,本方法可以用于对各种类型的生物序列进行粗糙度评估,在一个可能的实现方式,生物序列满足以下条件,即可使用本方法进行粗糙度评估,条件如下:
72.1、生物序列由子结构组成。
73.2、子结构的种类有限。
74.3、生物序列长度有限。
75.4、每个生物序列存在某种标准下经过测量后的适应度。
76.5、可采样多个相同长度的生物序列及其适应度构建成数据集。
77.步骤4030,判断数据集中生物序列的数量是否超过设定数量阈值。
78.由于数据集中的生物序列的数量大小不一,而生物序列的数量会影响计算数据集中的所有邻接序列对的速度,基于此,为了加快得到邻接序列对的速度,从而加快得到粗糙度评估结果的速度,根据数据集中生物序列的数量是否超过设定数量阈值,利用不同的计算方法处理数据集。
79.其中,设定数量阈值可以根据实际情况进行适应性调整,例如,若电子设备的计算能力强,则设定数量阈值可以大一些,相反地,若电子设备的计算能力强,则设定数量可以小一些。
80.若未超过设定数量阈值,则执行步骤4050,基于数据集中各生物序列的编辑距离确定邻接序列对。
81.数据集中包括多个生物序列,可以理解,两个生物序列即为一个生物序列对,可以通过计算得到数据集中各生物序列对对应的编辑距离,选取其中编辑距离符合设定距离阈值的生物序列对为邻接序列对,从而得到该数据集中的所有邻接序列对。
82.其中,该方法的时间复杂度与数据集中的生物序列数量相关,时间复杂度为θ(n2),n为数据集中的生物序列数量,该方法适用于生物序列数量较少的数据集。
83.具体地,在一个可能的实现方式,结合图3a中的3a1进行说明,步骤4050可以包括以下步骤:
84.步骤4051,基于数据集中的当前一个生物序列,分别计算当前一个生物序列与数据集中其余生物序列的编辑距离,得到各生物序列之间的编辑距离。
85.步骤4053,针对当前一个生物序列,从其余生物序列中筛选得到与当前一个生物序列的编辑距离符合设定距离阈值的生物序列。
86.步骤4055,由当前一个生物序列以及筛选得到的生物序列,得到当前一个生物序列对应的邻接序列对。
87.步骤4057,直至所有生物序列完成筛选,得到各邻接序列对。
88.若超过设定数量阈值,则执行步骤4070,若超过设定数量阈值,则基于数据集中各生物序列对应的候选序列确定邻接序列对;。
89.其中,候选序列是指以生物序列作为母本生物序列生成的、且与母本生物序列的编辑距离满足设定距离阈值的生物序列。可以理解,将数据集中的一个生物序列作为母本生物序列,可以基于母本生物序列生成多个编辑距离满足设定距离阈值的候选序列,例如,母本生物序列为“baa”,设定距离阈值为1,那么可以生成三个候选序列,分别是“aaa”、“bba”和“bab”。
90.可以理解,候选序列都有可能与母本生物序列组成的邻接序列对,但并非所有的候选序列都在数据集中存在相同生物序列,若候选序列在数据集中查找成功,则该数据集中存在相同生物序列,可以基于该候选序列得到邻接序列对;若候选序列在数据集中查找失败,则该数据集中不存在相同生物序列,无法基于该候选序列得到邻接序列对。
91.举例来说,母本生物序列为“baa”,三个候选序列分别是“aaa”、bba”和“bab”,其中,仅有“aaa”在数据集中查找成功,进而,得到邻接序列对“baa-aaa”。
92.进一步地,分别针对数据集中的所有生物序列,均生成与之对应的各候选序列,并且针对各候选序列在数据集中进行查找,根据查找成功的候选序列及对应的生物序列得到邻接序列对,便可得到数据集中的所有邻接序列对。
93.其中,该方法的时间复杂度与数据集中的生物序列数量相关,时间复杂度为θ(nk),n为数据集中的生物序列数量,k为生物序列的长度,该方法的常数项较大,与候选序列的数量正相关,该方法适用于生物序列数量较大的数据集。
94.补充说明的是,在生成候选序列之前,可以根据生物序列,将数据集转化为集合结构,然后,迭代数据集中的生物序列,并生成每个生物序列的所有可能的候选序列,可以理解,由于数据集中的规模大,集合结构通常比多维数组或矩阵具有更小的空间复杂度,因为集合只包含了不同的元素,因此,在数据集较大时,将数据集转化为集合结构后,可以有效减少处理的时间和内存消耗,提高处理效率。
95.具体地,在一个可能的实现方式,结合图3a中的3a2进行说明,步骤4070包括以下步骤:
96.步骤4071,针对当前一个生物序列对应的候选序列,在数据集中查找是否存在与所对应的候选序列相同的生物序列;
97.步骤4073,若查找成功,则基于当前一个生物序列、以及查找到的生物序列,得到当前一个生物序列对应的邻接序列对。
98.步骤4075,直至所有生物序列完成查找,得到各邻接序列对。
99.步骤4090,分别针对各邻接序列对的第一适应度和第二适应度进行计算,得到对应于各邻接序列对的适应度之差。
100.如前所述,邻接序列对中包括两个生物序列,例如,邻接序列对包括突变前的生物
序列和突变后的生物序列。
101.其中,邻接序列对的两个生物序列有与之对应的适应度,在一个可能的实现方式,在步骤4090之前,可以包括,获取各邻接序列对的第一适应度、以及第二适应度,其中,第一适应度对应邻接序列对的一个生物序列,第二适应度对应邻接序列对的另一个生物序列。
102.关于适应度之差,是指邻接序列对中两个生物序列的适应度之间的差值。计算公式如式(1)所示:
103.d(s1s2)=fitness(s1)-fitness(s2)
……
式(1)
104.其中,d(s
1 s2)为邻接序列对的适应度之差,s1为第一序列,s2为第二序列,fitness(s)为生物序列对应的适应度。
105.举例而言,图3b的3b1处示出了一种计算适应度之差的方法,如图3b的3b1所示,邻接序列对“aaa-aab”的适应度之差为1.0、邻接序列对“aba-abb”的适应度之差为2.0、邻接序列对“bba-bbb”的适应度之差为3.0。
106.根据式(1)对各邻接序列对进行计算,得到各邻接序列对的适应度之差,便可基于各邻接序列对的适应度之差进行计算,以得到粗糙度评估结果,但是,在进行计算之前,可以对各邻接序列对进行分组。
107.步骤4110,基于各邻接序列对对应的标签,生成至少一组邻接序列组。
108.其中,邻接序列组中的邻接序列对具有相同的标签,标签用于指示邻接序列组中各邻接序列对的突变特点,在一个可能的实现方式,可以通过突变位点得到标签,例如,生物序列为蛋白质序列,对应的标签由“突变位点+突变前氨基酸+突变后氨基酸”构成。
109.可以理解,每一组邻接序列对会对应唯一标签。相反地,每个标签可能会对应零个、一个或多个邻接序列对,这取决于数据集中是否存在标签对应的突变。基于此,便可根据不同的标签,由同一个标签的各邻接序列对得到一个邻接序列组,同一组中的邻接序列对会拥有相同的标签,从而由各邻接序列对生成至少一组邻接序列组。
110.举例来说,图3c中示出了一种基于突变位点分组的具体实现示意图,如图3c所示,邻接序列组1的标签1为“位点3由a突变为b”,那么,若邻接序列对中的两个生物序列的突变特点符合标签1,则该邻接序列对属于组1,基于此,邻接序列对“aaa-aab、aba-abb、bba-bbb”都属于组1;又如图3c所示,邻接序列组2的标签2为“位点2由b突变为a”,那么,若邻接序列对中的两个生物序列的突变特点符合标签2,则该邻接序列对属于组2,基于此,邻接序列对“aba-aaa、bba-bab、bbb-bab”都属于组2。
111.将所有的邻接序列对,根据其标签分组,作为邻接序列组。同一组中的邻接序列对,会拥有相同的标签。其中,每一个邻接序列组中,可能会存在一个或多个邻接序列对。当然,同一个邻接序列组中,除了记录邻接序列对的生物序列之外,还会记录邻接序列对的适应度之差。
112.步骤4130,分别针对各邻接序列组中记录的适应度之差进行标准化,得到各邻接序列组对应的标准化适应度。
113.对于每一个邻接序列组,将其中记录的适应度之差标准化,计算方式为,对于邻接序列组记录的所有适应度之差,计算其平均值,并将每个适应度之差,减去这个均值之后,作为更新之后的适应度之差。
114.标准化公式如式(2)和式(3)所示:
115.μ(l)=[∑d(l)]/count(d(l))
……
式(2)
[0116]
d(l)=d(l)-μ(l)
……
式(3)
[0117]
其中,标签为l的邻接序列对构成一个邻接序列组,d(l)为邻接序列组中的全部适应度之差,μ(l)为邻接序列组的适应度之差的均值,count为计数函数。
[0118]
举例而言,回请参见3b,如图3b中的3b2所示,对各邻接序列对的适应度之差进行标准化,邻接序列对“aaa-aab”的标准化适应度为-1.0、邻接序列对“aba-abb”的标准适应度为0.0、邻接序列对“bba-bbb”的标准适应度为1.0。
[0119]
在一个可能的实现方式,步骤4130之后可以包括,分别针对各邻接序列组中各邻接序列对的适应度之差进行标准化,利用标准化后的各适应度之差对各邻接序列对的适应度之差进行更新。也就是说,利用上述如式(2)和式(3)计算得到各邻接序列对更新之后的适应度之差。
[0120]
步骤4150,合并各邻接序列组,并基于各邻接序列组对应的标准化适应度进行计算,得到粗糙度评估结果。
[0121]
所有邻接序列组完成上述更新之后,将全部邻接序列组合并,并计算全部适应度之差的方差,该方差即为对适应度空间的粗糙度评估结果。粗糙度估计公式如式(4)所示:
[0122]
e=var(d(l))
……
式(4)
[0123]
其中,e为粗糙度评估结果,var为方差函数。
[0124]
在上述实施例的作用下,第一,对于不同数量大小的数据集,利用不同的方式计算邻接序列对,可以减少计算量,加快计算速度,从而保证粗糙度评估的效率;第二,通过计算邻接序列,能够尽可能避免粗糙度评估结果不受生物序列缺失的影响,保证适应度空间的粗糙度评估结果的精确性;第二,本方法的扩展性好,可以适用于各种生物序列适应度空间的粗糙度评估,例如,dna序列、rna序列、蛋白质序列。
[0125]
图4是一应用场景中一种适应度空间的粗糙度评估方法的具体实现示意图。本应用场景中,数据集包括的生物序列类型为蛋白质序列。
[0126]
首先说明的是,在本应用场景中,分别利用两种粗糙度评估方法以及本方案的粗糙度评估方法对相同数据集进行粗糙度评估,通过对比三种粗糙度评估结果的误差,验证本方法得到的粗糙度评估效果。
[0127]
如图4所示,利用极值法进行粗糙度评估的步骤如下:
[0128]
通过步骤501,利用数据采样模块,采样所有蛋白质序列。
[0129]
通过步骤503,利用计算模块,计算极值点。
[0130]
通过步骤505,计算极值点比例。
[0131]
通过步骤507,输出粗糙度评估结果。
[0132]
如图4所示,利用拟合法进行粗糙度评估的步骤如下:
[0133]
通过步骤601,利用数据采样模块,采样所有蛋白质序列。
[0134]
通过步骤603,利用计算模块进行线性模拟拟合。
[0135]
通过步骤605,计算拟合误差和斜率。
[0136]
通过步骤607,输出粗糙度评估结果。
[0137]
如图4所示,利用拟合法进行粗糙度评估的步骤如下:
[0138]
通过步骤701,采样数据集中的邻接序列对。
[0139]
通过步骤703,基于标签对各邻接序列对进行分组,得到至少一组邻接序列组。
[0140]
通过步骤705,对各邻接序列组中的适应度之差进行标准化。
[0141]
通过步骤707,合并计算方差。
[0142]
通过步骤709,输出粗糙度评估结果。
[0143]
需要说明的是,在对数据集进行评估之前,先对数据集进行预处理,如表1所示,其中,n为蛋白质序列的数量,使用合成数据集构建虚拟的原始适应度空间,并将原始适应度空间构成数据集a0,以评判当存在数据缺失时,不同的方案对于粗糙度评估的偏离程度。
[0144]
通过模拟随机丢弃a0中10%、30%、50%、70%、90%的序列,得到了5个新的数据集a1-a5。但是,考虑到真实的来自深度突变扫描的数据集,其往往会在野生型蛋白质附近采样较多,距离野生型蛋白质越远,采样概率就越少,因此,也需要模拟类似的采样方案,以构建用于测试的数据集套件。
[0145]
进一步地,通过模拟深度突变扫描获得的数据集,随机指定野生型蛋白质,在与野生型蛋白质编辑距离为1,2,3,4,5及以上的子空间,分别丢弃0%,50%,99%,99.99%,得到了1个新的数据集a6。
[0146]
为了保证测试结构的可靠,对于a1-a5,均进行了多次不同的随机丢弃,得到了5个不同的随机副本。对于a6,通过改变指定野生型蛋白质,也得到了5个随机副本。所有数据集的构建描述如表1。
[0147]
表1
[0148][0149][0150]
在原始数据集a0,随机丢弃数据集a1-a4,模拟扫描数据集a5上,分别计算极值法的粗糙度评估结果,拟合法的粗糙度评估结果,以及本方法的粗糙度评估结果,比较不同粗糙度评估结果在数据缺失下,受到干扰的程度大小。
[0151]
其中,图4a中示出了极值法在数据集a0-a5上的粗糙度评估结果,图4b中示出了拟合法在数据集a0-a5上的粗糙度评估结果,图4c中示出了本方法在数据集a0-a5上的粗糙度评估结果。在柱状图中,每一个条柱为同一个数据集上的5个副本的箱型图表示内容。其中,
y轴为该方法在不同数据集上输出的无量纲数值结果,用于比较相对大小,无单位,或者说单位为“1”。
[0152]
根据图4a、图4b和图4c的粗糙度评估结果,对比在存在数据缺失时(a1-a5)的数据集,三种粗糙度评估方法所得到的粗糙度评估结果和原始适应度空间所对应的数据集(a0),这两者之间的粗糙度评估差别大小(即纵轴数据大小之差)。
[0153]
由上述粗糙度评估结果分析可知,关于极值法,极值法利用局部极值序列数量与所有序列数量的比值,得到粗糙度评估结果。序列a为局部极值序列,当且仅当a在与a突变1个位点的所有蛋白质序列中(邻接序列),适应度为最大或最小值。局部极值序列占所有序列比例越大,可以判断数据集越粗糙。然而,当数据集存在蛋白质序列缺失时,极值法仅仅会计算“在蛋白质序列a存在的邻接序列”中是否为极值,因此,随着缺失比率逐渐上升,以前的局部极值序列仍然是局部极值序列,其他蛋白质序列随着真正的局部极值缺失,也会成为新的局部极值序列。因此,极值法在序列缺失时,随着缺失率提高,其得到的粗糙度评估结果会出现异常上升。
[0154]
关于拟合法,则是利用线性模型拟合数据集,计算线性模型的均方误差r和均方斜率s,再计算r/s作为模型的粗糙度评估结果。显然,因为适应度空间更崎岖的区域可能已经缺失,整个序列空间会显得“更为光滑”,但这只是数据集不全所带来的异常光滑效应,真实的完整数据集会更加粗糙。随着缺失比例上升,拟合法的粗糙度评估结果会出现异常下降。
[0155]
在本方法中,只采样了邻接序列,因为非邻接序列可能在蛋白质序列缺失时,对编辑距离产生异常光滑效应。但邻接序列在蛋白质序列缺失前后,都能保持一个近似的粗糙度。因此只计算邻接序列,能够尽可能保证粗糙度评估结果不受蛋白质序列缺失的影响。
[0156]
综上所述,本方法的粗糙度评估结果,在数据缺失时,仍然有很好的精度,误差小,能够更贴近原始适应度空间的真实粗糙度。
[0157]
在本应用场景中,在蛋白质适应度空间有蛋白质序列缺失时,本方法能够减少现有适应度空间下得到的粗糙度评估结果,相比在完整适应度空间下得到的粗糙度评估结果,出现的系统误差。相比极值法和拟合法,本方法能够在计算量相近的情况下,取得更小的系统误差,得到更加精准的粗糙度评估结果,以此解决相关技术中存在的生物序列适应度空间的粗糙度评估结果误差大的问题。
[0158]
下述为本技术装置实施例,可以用于执行本技术所涉及的适应度空间的粗糙度评估方法。对于本技术装置实施例中未披露的细节,请参照本技术所涉及的适应度空间的粗糙度评估方法的方法实施例。
[0159]
请参阅图5,本技术实施例中提供了一种适应度空间的粗糙度评估装置900,包括但不限于:数据集获取模块910、序列对确认模块930、序列组生成模块950以及粗糙度评估模块。
[0160]
其中,数据集获取模块910,用于获取数据集;所述数据集包括多个生物序列。
[0161]
序列对确认模块930,用于基于数据集中各生物序列之间的突变位点,确定数据集中的多个邻接序列对;各邻接序列对中的两个生物序列之间的突变位点符合设定突变位点数。
[0162]
粗糙度评估模块950,用于根据各邻接序列对对适应度空间的粗糙度进行估计,得到粗糙度评估结果。
[0163]
需要说明的是,上述实施例所提供的适应度空间的粗糙度评估装置在进行适应度空间的粗糙度评估时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即适应度空间的粗糙度评估装置的内部结构将划分为不同的功能模块,以完成以上描述的全部或者部分功能。
[0164]
另外,上述实施例所提供的适应度空间的粗糙度评估装置与适应度空间的粗糙度评估方法的实施例属于同一构思,其中各个模块执行操作的具体方式已经在方法实施例中进行了详细描述,此处不再赘述。
[0165]
图6根据一示例性实施例示出的一种服务器的结构示意。该服务器适用于图1所示出实施环境中的服务端130。
[0166]
需要说明的是,该服务器只是一个适配于本技术的示例,不能认为是提供了对本技术的使用范围的任何限制。该服务器也不能解释为需要依赖于或者必须具有图6示出的示例性的服务器2000中的一个或者多个组件。
[0167]
服务器2000的硬件结构可因配置或者性能的不同而产生较大的差异,如图6所示,服务器2000包括:电源210、接口230、至少一存储器250、以及至少一中央处理器(cpu,central processing units)270。
[0168]
具体地,电源210用于为服务器2000上的各硬件设备提供工作电压。
[0169]
接口230包括至少一有线或无线网络接口,用于与外部设备交互。例如,进行图1所示出实施环境中终端100与服务器200之间的交互。
[0170]
当然,在其余本技术适配的示例中,接口230还可以进一步包括至少一串并转换接口233、至少一输入输出接口235以及至少一usb接口237等,如图6所示,在此并非对此构成具体限定。
[0171]
存储器250作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源包括操作系统251、应用程序253及数据255等,存储方式可以是短暂存储或者永久存储。
[0172]
其中,操作系统251用于管理与控制服务器200上的各硬件设备以及应用程序253,以实现中央处理器270对存储器250中海量数据255的运算与处理,其可以是windowsserver
tm
、macosx
tm
、unix
tm
、linux
tm
、freebsd
tm
等。
[0173]
应用程序253是基于操作系统251之上完成至少一项特定工作的程序指令或代码,其可以包括至少一模块(图6未示出),每个模块都可以分别包含有对服务器2000的程序指令或代码。例如,适应度空间的粗糙度评估装置可视为部署于服务器2000的应用程序253。
[0174]
数据255可以是存储于磁盘中的照片、图片等,还可以是推荐信息等,存储于存储器250中。
[0175]
中央处理器270可以包括一个或多个以上的处理器,并设置为通过至少一通信总线与存储器250通信,以读取存储器250中存储的程序指令或代码,进而实现对存储器250中海量数据255的运算与处理。例如,通过中央处理器270读取存储器250中存储的一系列程序指令或代码的形式来完成适应度空间的粗糙度评估方法。
[0176]
此外,通过硬件电路或者硬件电路结合软件也能同样实现本技术,因此,实现本技术并不限于任何特定硬件电路、软件以及两者的组合。
[0177]
请参阅图7,本技术实施例中提供了一种电子设备4000,该电子设备400可以包括:
台式电脑、笔记本电脑、服务器等。
[0178]
在图7中,该电子设备4000包括至少一个处理器4001以及至少一个存储器4003。
[0179]
其中,处理器4001和存储器4003之间的数据交互,可以通过至少一个通信总线4002实现。该通信总线4002可包括一通路,用于在处理器4001和存储器4003之间传输数据。通信总线4002可以是pci(peripheral component interconnect,外设部件互连标准)总线或eisa(extended industry standard architecture,扩展工业标准结构)总线等。通信总线4002可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0180]
可选地,电子设备4000还可以包括收发器4004,收发器4004可以用于该电子设备与其他电子设备之间的数据交互,如数据的发送和/或数据的接收等。需要说明的是,实际应用中收发器4004不限于一个,该电子设备4000的结构并不构成对本技术实施例的限定。
[0181]
处理器4001可以是cpu(central processing unit,中央处理器),通用处理器,dsp(digital signal processor,数据信号处理器),asic(application specific integrated circuit,专用集成电路),fpga(field programmable gate array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本技术公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器4001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,dsp和微处理器的组合等。
[0182]
存储器4003可以是rom(read only memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,ram(random access memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是eeprom(electrically erasable programmable read only memory,电可擦可编程只读存储器)、cd-rom(compact disc read only memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序指令或代码并能够由电子设备400存取的任何其他介质,但不限于此。
[0183]
存储器4003上存储有程序指令或代码,处理器4001可以通过通信总线4002读取存储器4003中存储的程序指令或代码。
[0184]
该程序指令或代码被处理器4001执行时实现上述各实施例中的适应度空间的粗糙度评估方法。
[0185]
此外,本技术实施例中提供了一种存储介质,该存储介质上存储有程序指令或代码,所述程序指令或代码被处理器加载并执行,以实现如如上所述的适应度空间的粗糙度评估方法。
[0186]
本技术实施例中提供了一种应用程序产品,应用程序产品包括程序指令或代码,程序指令或代码存储在存储介质中,电子设备的处理器从存储介质读取程序指令或代码,加载并执行该程序指令或代码,使得电子设备实现如上所述的适应度空间的粗糙度评估方法。
[0187]
与相关技术相比,第一,对于不同数量大小的数据集,利用不同的方式计算邻接序列对,可以减少计算量,加快计算速度,从而保证粗糙度评估的效率;第二,本方法的扩展性
好,可以适用于各种生物序列适应度空间的粗糙度评估,例如,dna序列、rna序列、蛋白质序列;第三,通过邻接序列得到的粗糙度评估结果,能够尽可能避免粗糙度评估结果不受生物序列缺失的影响,保证粗糙度评估结果的精确性,从而能够有效地解决相关技术中存在的生物序列适应度空间的粗糙度评估结果误差大的问题。
[0188]
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0189]
以上所述仅是本技术的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本技术的保护范围。
技术特征:
1.一种适应度空间的粗糙度评估方法,其特征在于,包括:获取数据集;所述数据集包括多个生物序列;基于所述数据集中各所述生物序列之间的突变位点,确定所述数据集中的多个邻接序列对;各所述邻接序列对中的两个生物序列之间的突变位点符合设定突变位点数;根据各所述邻接序列对对适应度空间的粗糙度进行估计,得到粗糙度评估结果。2.如权利要求1所述的方法,其特征在于,所述基于所述数据集中各所述生物序列之间的突变位点,确定所述数据集中的多个邻接序列对之前,所述方法还包括:判断所述数据集中生物序列的数量是否超过设定数量阈值;若未超过所述设定数量阈值,则基于所述数据集中各所述生物序列的编辑距离确定邻接序列对。3.如权利要求2所述的方法,其特征在于,所述基于所述数据集中各所述生物序列之间的突变位点,确定所述数据集中的多个邻接序列对,包括:基于所述数据集中的当前一个生物序列,分别计算当前一个生物序列与所述数据集中其余生物序列的编辑距离,得到各所述生物序列之间的编辑距离;针对当前一个生物序列,从其余生物序列中筛选得到与当前一个生物序列的编辑距离符合设定距离阈值的生物序列;由所述当前一个生物序列以及筛选得到的生物序列,得到当前一个生物序列对应的邻接序列对;直至所有生物序列完成筛选,得到各所述邻接序列对。4.如权利要求2所述的方法,其特征在于,所述方法还包括:若超过所述设定数量阈值,则基于所述数据集中各所述生物序列对应的候选序列确定邻接序列对;所述候选序列是指以所述生物序列作为母本生物序列生成的、且与母本生物序列的编辑距离满足设定距离阈值的生物序列。5.如权利要求4所述的方法,其特征在于,所述基于所述数据集中各所述生物序列对应的候选序列确定邻接序列对,包括:针对当前一个生物序列对应的候选序列,在所述数据集中查找是否存在与所对应的候选序列相同的生物序列;若查找成功,则基于当前一个生物序列、以及查找到的生物序列,得到当前一个生物序列对应的邻接序列对;直至所有生物序列完成查找,得到各所述邻接序列对。6.如权利要求1所述的方法,其特征在于,所述根据各所述邻接序列对对适应度空间的粗糙度进行估计,得到粗糙度评估结果,包括:获取各所述邻接序列对的第一适应度、以及第二适应度;分别针对各所述邻接序列对的第一适应度和第二适应度进行计算,得到对应于各所述邻接序列对的适应度之差;基于各所述邻接序列对的适应度之差进行计算,得到所述粗糙度评估结果。7.如权利要求6所述的方法,其特征在于,所述基于各所述邻接序列对的适应度之差进行计算,得到所述粗糙度评估结果,包括:基于各所述邻接序列对对应的标签,生成至少一组邻接序列组;所述邻接序列组中的
所述邻接序列对具有相同的标签;所述标签用于指示所述邻接序列组中各邻接序列对的突变特点;分别针对各所述邻接序列组中各邻接序列对的适应度之差进行标准化,利用所述标准化后的各适应度之差对各所述邻接序列对的适应度之差进行更新;合并各所述邻接序列组,并基于各所述邻接序列组对应的适应度之差进行计算,得到粗糙度评估结果。8.一种适应度空间的粗糙度评估装置,其特征在于,包括:数据集获取模块,用于获取数据集;所述数据集包括多个生物序列;序列对确认模块,用于基于所述数据集中各所述生物序列之间的突变位点,确定所述数据集中的多个邻接序列对;各所述邻接序列对中的两个生物序列之间的突变位点符合设定突变位点数;粗糙度评估模块,用于根据各所述邻接序列对对适应度空间的粗糙度进行估计,得到粗糙度评估结果。9.一种电子设备,其特征在于,包括:至少一个处理器以及至少一个存储器,其中,所述存储器上存储有程序指令或代码;所述程序指令或代码被所述处理器加载并执行,使得电子设备实现如权利要求1至12中任一项所述的适应度空间的粗糙度评估方法。10.一种存储介质,其上存储有程序指令或代码,其特征在于,所述程序指令或代码被处理器加载并执行,以实现如权利要求1至12中任一项所述的适应度空间的粗糙度评估方法。
技术总结
本申请提供了一种适应度空间的粗糙度评估方法、装置、电子设备及存储介质,涉及生物技术领域。该方法包括:获取数据集;所述数据集包括多个生物序列;基于所述数据集中各所述生物序列之间的突变位点,确定所述数据集中的多个邻接序列对;各所述邻接序列对中的两个生物序列之间的突变位点符合设定突变位点数;根据各所述邻接序列对对适应度空间的粗糙度进行估计,得到粗糙度评估结果。本申请解决了相关技术中适应度空间的粗糙度评估不准确的问题。术中适应度空间的粗糙度评估不准确的问题。术中适应度空间的粗糙度评估不准确的问题。
技术研发人员:陈俊羽 胡如云 乔宇
受保护的技术使用者:中国科学院深圳先进技术研究院
技术研发日:2023.03.09
技术公布日:2023/7/20
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
上一篇:一种有色金属颜料的制备方法与流程 下一篇:一种拼装式收纳柜的制作方法
