甲基化水平的向量化表征、特定测序区间检测方法和装置
技术领域
本申请涉及基因信息处理技术领域,特别是涉及一种甲基化水平的向量化表征、特定测序区间的检测、特定测序区间的记录方法、装置、计算机设备和可读存储介质。
背景技术
在医学技术领域,对癌症的早诊早筛对于癌症的治愈有重大意义。对于早期预防方法,一种代表性技术路线是提取血浆等样本,通过预先设计的面板(panel)进行甲基化测序,并借助机器学习方法将良恶性样本有效区分。上述传统方法通常将面板(panel)上特定甲基化区通过单一计算数值表示(例如“甲基化熵”),这一计算数值仅能够反映单一区域的整体甲基化水平,容易丢失其中的大量信息,使所表征的甲基化水平存在片面性。
发明内容
基于此,有必要针对上述技术问题,提供一种能够反映样本整体甲基化水平的向量化表征、特定测序区间的检测、特定测序区间的记录方法、装置、计算机设备和可读存储介质。
其中,一种甲基化水平的向量化表征方法,包括:
S10,获取检测样本的各个甲基化测序区间的甲基化信息;其中,所述检测样本包括多个甲基化测序区间;
S20,根据各个甲基化测序区间的甲基化信息确定预设的阅读区间中各类测序结果的Reads数目;其中,所述Reads数目为相应类别的测序结果在相应甲基化测序区间的甲基化信息中的出现次数;所述阅读区间中各类测序结果的排列顺序预先设定;
S30,将滑动窗口在所述阅读区间按照滑动步长从第一个位点至最后一个位点滑动,根据各类测序结果的Reads数目获取各次窗口读取过程中,滑动窗口的各个序列组合的出现次数;其中,所述滑动窗口在读取各个序列组合的出现次数后,按照所述滑动步长向后滑动;
S40,根据各个甲基化测序区间中各个序列组合的出现次数确定各个甲基化测序区间在各次窗口读取过程中产生的次数向量;
S50,将各个甲基化测序区间在各次窗口读取过中产生的次数向量拼接为各个甲基化测序区间的甲基化向量。
一种甲基化水平的向量化表征装置,包括:
第一获取模块,用于获取检测样本的各个甲基化测序区间的甲基化信息;其中,所述检测样本包括多个甲基化测序区间;
第一确定模块,用于根据各个甲基化测序区间的甲基化信息确定预设的阅读区间中各类测序结果的Reads数目;其中,所述Reads数目为相应类别的测序结果在相应甲基化测序区间的甲基化信息中的出现次数;所述阅读区间中各类测序结果的排列顺序预先设定;
滑动模块,用于将滑动窗口在所述阅读区间按照滑动步长从第一个位点至最后一个位点滑动,根据各类测序结果的Reads数目获取各次窗口读取过程中,滑动窗口的各个序列组合的出现次数;其中,所述滑动窗口在读取各个序列组合的出现次数后,按照所述滑动步长向后滑动;
第二确定模块,用于根据各个甲基化测序区间中各个序列组合的出现次数确定各个甲基化测序区间在各次窗口读取过程中产生的次数向量;
读取模块,用于将各个甲基化测序区间在各次窗口读取过中产生的次数向量拼接为各个甲基化测序区间的甲基化向量。
上述甲基化水平的向量化表征方法和装置,通过获取检测样本的各个甲基化测序区间的甲基化信息,确定预设的阅读区间中各类测序结果的Reads数目,将滑动窗口在上述阅读区间按照滑动步长从第一个位点至最后一个位点滑动,以根据各类测序结果的Reads数目获取各次窗口读取过程中,滑动窗口的各个序列组合的出现次数,进而确定各个甲基化测序区间在各次窗口读取过程中产生的次数向量,将各个甲基化测序区间在各次窗口读取过中产生的次数向量拼接为各个甲基化测序区间的甲基化向量,使所确定的甲基化向量中的每个向量元素与检测样本中各个甲基化测序区间的序列组合一一对应,能够对检测样本中各个甲基化测序区间的甲基化信息进行全面表征;具体地,检测样本的各个甲基化测序区间均可通过甲基化向量进行表征,不再被简单归纳为单一的一个数值,能够复原各个甲基化测序区间不同甲基化位点的丰度分布情况,更加便于研究人员对该甲基化区间的后续分析。这样在后续记录和分析不必将每一个向量元素所代表的甲基化情况组合重复记录,因此相对于相关传统的甲基化水平记录方法,大大减少了记录的复杂程度,以及相应分析过程中的存储压力和运算压力。
其中,一种特定测序区间的检测方法,包括:
采用上述甲基化水平的向量化表征方法获取各个样本中各个甲基化测序区间的甲基化向量;
将所述样本划分为训练样本和测试样本,将训练样本中各个甲基化测序区间的甲基化向量确定为训练向量,将测试样本中各个甲基化测序区间的甲基化向量确定为测试向量,将区间顺序相同的各个甲基化测序区间确定为一组甲基化测序区间,得到多组甲基化测序区间,将各组训练向量分别输入分类模型进行训练,得到各组甲基化测序区间的评估模型,使各个评估模型针对对应的一组测试向量进行测试,以确定各个甲基化测序区间的评估指标;其中,各个样本中各个甲基化测序区间的区间顺序预先设定;一组甲基化测序区间的甲基化向量包括该组甲基化测序区间对应的一组训练向量和一组测试向量;
将评估指标大于或等于特定阈值的甲基化测序区间确定为特定测序区间。
一种特定测序区间的检测装置,包括:
第二获取模块,用于上述甲基化水平的向量化表征装置获取各个样本中各个甲基化测序区间的甲基化向量;
划分模块,用于将所述样本划分为训练样本和测试样本,将训练样本中各个甲基化测序区间的甲基化向量确定为训练向量,将测试样本中各个甲基化测序区间的甲基化向量确定为测试向量,将区间顺序相同的各个甲基化测序区间确定为一组甲基化测序区间,得到多组甲基化测序区间,将各组训练向量分别输入分类模型进行训练,得到各组甲基化测序区间的评估模型,使各个评估模型针对对应的一组测试向量进行测试,以确定各个甲基化测序区间的评估指标;其中,各个样本中各个甲基化测序区间的区间顺序预先设定;一组甲基化测序区间的甲基化向量包括该组甲基化测序区间对应的一组训练向量和一组测试向量;
第三确定模块,用于将评估指标大于或等于特定阈值的甲基化测序区间确定为特定测序区间。
上述特定测序区间的检测方法和装置,通过获取各个样本中各个甲基化测序区间的甲基化向量,将所述样本划分为训练样本和测试样本,将训练样本中各个甲基化测序区间的甲基化向量确定为训练向量,将测试样本中各个甲基化测序区间的甲基化向量确定为测试向量,将区间顺序相同的各个甲基化测序区间确定为一组甲基化测序区间,得到多组甲基化测序区间,将各组训练向量分别输入分类模型进行训练,得到各组甲基化测序区间的评估模型,使各个评估模型针对对应的一组测试向量进行测试,以确定各个甲基化测序区间的评估指标,将评估指标大于或等于特定阈值的甲基化测序区间确定为特定测序区间,使得检测得到的各组特定测序区间中,不同类型的样本之间的差异远远大于同类型样本内部的差异,因而这些特定测序区间可以成为区分各类型样本的良好指标;比如在样本类型包括良性和恶性时,特定测序区间在良性样本和恶性样本之间的差异,远远大于良性样本内部的差异或恶性样本内部的差异,从而可以成为区分良恶性样本的良好指标。这样特定测序区间便可以较为明显的表征相应序列或者样本的类型,即根据特定测序区间对应的甲基化向量可以为特定测序区间中序列的类型判断作更大贡献。
其中,一种特定测序区间的记录方法,包括:
采用上述特定测序区间的检测方法获取各个样本的特定测序区间,设置各个特定测序区间分别对应的字典,使各个字典的键表征相应特定测序区间,各个字典的值表征相应特定测序区间的甲基化向量,采用特定格式记录各个字典,以记录各个特定测序区间
一种特定测序区间的记录装置,包括:
第二获取模块,用于上述特定测序区间的检测装置获取各个样本的特定测序区间,设置各个特定测序区间分别对应的字典,使各个字典的键表征相应特定测序区间,各个字典的值表征相应特定测序区间的甲基化向量,采用特定格式记录各个字典,以记录各个特定测序区间
上述特定测序区间的记录方法和装置,设置各个特定测序区间分别对应的字典,使各个字典的键表征相应特定测序区间,各个字典的值表征相应特定测序区间的甲基化向量,并采用json格式等便于相关处理人员处理并易于机器解析和生成特定格式记录各个字典,可以进一步提升后续对各个特定测序区间进行相应分析的效率。
附图说明
图1是一个实施例的甲基化水平的向量化表征方法流程图;
图2是一个实施例的甲基化区域的信息记录方式示意图;
图3是一个实施例中长度为8的阅读区间中部分C与T的组合示意图;
图4是一个实施例中通过每一步移动所截取的甲基化区域示意图;
图5是一个实施例的甲基化水平的向量化表征装置结构示意图;
图6是一个实施例的特定测序区间的检测方法流程图;
图7是一个实施例的甲基化向量及相应标签数据示意图;
图8是一个实施例的tree-based模型对应的ROC曲线示意图;
图9是一个实施例的regression-based模型对应的ROC曲线示意图;
图10是一个实施例的采用甲基化熵值和xgboost模型得到的ROC曲线示意图;
图11是一个实施例的采用甲基化熵值和lasso模型得到的ROC曲线示意图;
图12是一个实施例的采用甲基化表观多态性和xgboost模型得到的ROC曲线示意图;
图13是一个实施例的采用甲基化表观多态性和lasso模型得到的ROC曲线示意图;
图14是一个实施例的采用甲基化频率和xgboost模型得到的ROC曲线示意图;
图15是一个实施例的采用甲基化频率和lasso模型得到的ROC曲线示意图;
图16是一个实施例的运用xgboost模型和lasso模型重要性在前10位的区间的venn图;
图17是一个实施例的运用xgboost模型和lasso模型重要性在前25位的区间的venn图;
图18是一个实施例的运用xgboost模型和lasso模型重要性在前50位的区间的venn图;
图19是一个实施例的运用xgboost模型和lasso模型重要性在前100位的区间的venn图;
图20是甲基化熵值在100次划分中,分别运用xgboost模型和lasso模型得到的重要区间的venn图;
图21是甲基化表观多态性在100次划分中,分别运用xgboost模型和lasso模型得到的重要区间的venn图;
图22是甲基化频率在100次划分中,分别运用xgboost模型和lasso模型得到的重要区间的venn图;
图23是一个实施例的特定测序区间的检测装置结构示意图;
图24是一个实施例中记录重要甲基化区域名称及重要排列形式的json文件示意图;
图25是一个实施例中筛选特征记录文件目录层级示意图;
图26是一个实施例中描述各样本受到单个特征影响情况的json文件示意图;
图27是一个实施例中单个特征对相应甲基化区域的影响txt文件示意图;
图28是一个实施例的计算机设备示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅用以解释本申请,并不用于限定本申请。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
在一个实施例中,如图1所示,提供了一种甲基化水平的向量化表征方法,包括以下步骤:
S10,获取检测样本的各个甲基化测序区间的甲基化信息;其中,所述检测样本包括多个甲基化测序区间。
上述检测样本可以来源于需要进行甲基化水平分析的组织等特定组织,例如可以来源于乳腺癌(BrC)的组织或血浆的若干样本等等,针对各类检测样本,可以通过相关医学手段鉴定其良性和恶性的标签,以便于后续进行相应分析处理。
具体地,所述获取检测样本的各个甲基化测序区间的甲基化信息包括:
采用预设面板(panel)对检测样本的各个甲基化测序区间进行重亚硫酸盐法(bi-sulfur)测序,使各个甲基化测序区间中被甲基化的位点采用第一标识表征,未被甲基化的位点采用第二标识表征,得到所述各个甲基化测序区间中各个位点的甲基化信息。
在基于预设面板的甲基化测序过程中,每个检测样本在每个甲基化区域(甲基化测序区间)包含多个连续或不连续甲基化位点(实际横跨DNA的长度可为100-250nt不等)。根据重亚硫酸盐方法记录原理,T表示该位点没有被甲基化,而C表示该位点已经被甲基化。T与C的组合表示甲基化位点的不同构成方式。在实际测序的检测样本中,通常包含未能测到甲基化信息的甲基化位点,这些未能测到甲基化信息的甲基化位点往往以N表示,本实施例中,为简化后续计算强度,可以统一将N用T代替,表示没有甲基化信息。此时,上述第一标识可以为C,第二标识可以为T,即采用C表示各个甲基化测序区间中被甲基化的位点,采用T表示各个甲基化测序区间中未被甲基化的位点。
S20,根据各个甲基化测序区间的甲基化信息确定预设的阅读区间中各类测序结果的Reads数目;其中,所述Reads数目为相应类别的测序结果在相应甲基化测序区间的甲基化信息中的出现次数;所述阅读区间中各类测序结果的排列顺序预先设定。
上述阅读区间的长度可以预先设定,阅读区间中各类测序结果的排列顺序预先设定。通常情况下,各类测序结果的排列顺序一旦确定,需事先声明,并在后续的分析评估以及相应记录过程中,均采用上述预先设定的排列顺序。
具体地,阅读区间的阅读长度的设定,在一定程度上越长越好,阅读长度长的阅读区间滑动次数越少,能够更完整地反映整个测序区间的信息,而不是通过多次滑动导致信息碎片化。在阅读区间的阅读长度一定时,在单个阅读区间获得的信息量与该阅读长度下所有位点甲基化状态的组合的数目之间需要取得平衡,这就要求该阅读长度下所有位点甲基化状态的组合的数目不能太多,否则随阅读长度增加指数增长的信息量将对存储和计算产生巨大压力。
在一个示例中,通过相关样本的测试,阅读区间的阅读长度可以设为8-10个甲基化位点。一段阅读区间所有可能出现的甲基化情况可以按照序列的字母排序。阅读区间的各类测序结果可以使用任何有意义的排序,相应的排序原则为在各类计算机编程语言中易于实施,并在不同长度的甲基化测序区间中保证排序的一致性。
S30,将滑动窗口在所述阅读区间按照滑动步长从第一个位点至最后一个位点滑动,根据各类测序结果的Reads数目获取各次窗口读取过程中,滑动窗口的各个序列组合的出现次数;其中,所述滑动窗口在读取各个序列组合的出现次数后,按照所述滑动步长向后滑动。
在一个实施例中,将滑动窗口在所述阅读区间按照滑动步长从第一个位点至最后一个位点滑动,根据各类测序结果的Reads数目获取各次窗口读取过程中,滑动窗口的各个序列组合的出现次数包括:
S31,在第m次窗口读取过程中,将滑动窗口的首位设置在所述阅读区间的(s(m-1)+1)位,根据各类测序结果的Reads数目读取所述滑动窗口中各个序列组合的出现次数;其中,m的初始值为1,s表示滑动步长,滑动步长s小于阅读区间的长度;
S32,若在第m次窗口读取过程中,所述滑动窗口的末位不为所述阅读区间的末位,则将m更新为m+1,返回执行步骤S31,直至所述滑动窗口的末位为所述阅读区间的末位。
具体地,若所述滑动窗口的末位超出所述阅读区间,根据各类测序结果的Reads数目读取所述滑动窗口中各个序列组合的出现次数包括:
缩短所述滑动窗口,使所述滑动窗口的末位落在所述阅读区间的末位,根据各类测序结果的Reads数目确定当前滑动窗口中各个序列组合的出现次数。
本实施例中,在第1次窗口读取过程中,可以将滑动窗口的首位设置在阅读区间的第1位,在各类测序结果的Reads数目中读取当前滑动窗口中各个序列组合的出现次数,以确定该次窗口读取过程中当前滑动窗口对应的各个序列组合的出现次数;再将滑动窗口的首位向后移动s位,以进行第2次窗口读取,在第2次窗口读取过程中,在各类测序结果的Reads数目中读取当前滑动窗口中各个序列组合的出现次数,以确定该次窗口读取过程中当前滑动窗口对应的各个序列组合的出现次数,以此类推,直至滑动窗口的末位为阅读区间的末位或者滑动窗口的末位超出阅读区间的末位。若滑动窗口的末位超出阅读区间的末位,则需要缩短该次窗口读取过程所采用的滑动窗口,使滑动窗口的首尾保持不动,将滑动窗口的末位落到阅读区间的末位,以通过各次滑动窗口的滑动,完整准确地读取相应阅读区间所包括的信息。
S40,根据各个甲基化测序区间中各个序列组合的出现次数确定各个甲基化测序区间在各次窗口读取过程中产生的次数向量。
具体地,所述根据各个序列组合的出现次数确定各次窗口读取中产生的次数向量包括:
设置滑动窗口的各个序列组合的排列顺序,得到组合顺序;
在各次窗口读取中,将各个序列组合的出现次数按照组合顺序排列,得到次数向量。
本实施例中,各次窗口读取过程中,均会产生相应滑动窗口中各个序列组合的出现次数,将组合顺序为1的序列组合的出现次数作为第1个向量元素,将组合顺序为2的序列组合的出现次数作为第2个向量元素,以此类推,直至将排在最末位的序列组合的出现次数作为最后向量元素,以此得到次数向量,可以保证所得到的次数向量的准确性。
S50,将各个甲基化测序区间在各次窗口读取过中产生的次数向量拼接为各个甲基化测序区间的甲基化向量。
具体地,所述将各次窗口读取中产生的次数向量拼接为甲基化向量包括:
将各次窗口读取中产生的次数向量按照窗口读取顺序首尾相连,得到所述甲基化向量。
在一个示例中,若某甲基化区间的次数向量包括如下两个向量:第一个次数向量05 0 0 0 3 0 2,第二个次数向量0 0 0 0 0 2 3 5,则可以将这两个向量按照相应次数向量的获取顺序首尾相连,得到如下甲基化向量:
0 5 0 0 0 3 0 2 0 0 0 0 0 2 3 5。
上述甲基化向量的优势在于,一旦预先设定阅读区间中各类测序结果的排列顺序,以及滑动窗口的各个序列组合的排列顺序,相应数值向量(甲基化向量)中的每个数值(向量元素)即与阅读区间在各次窗口读取过程中的序列组合一一对应,后续记录和分析不必将每一个数值所代表的甲基化情况组合重复记录,因此相比传统的甲基化水平记录方案,大大减少了记录的复杂程度,以及存储和运算的压力。相比传统表征甲基化信息的方法,一个特定的甲基化测序区间不再被简单归纳为单一的一个数值。相反,通过数值向量的记录方式,能够复原该甲基化测序区间不同甲基化位点的丰度分布情况,更加便于研究人员对该甲基化区间的后续分析。
上述甲基化水平的向量化表征方法,通过获取检测样本的各个甲基化测序区间的甲基化信息,确定预设的阅读区间中各类测序结果的Reads数目,将滑动窗口在上述阅读区间按照滑动步长从第一个位点至最后一个位点滑动,以根据各类测序结果的Reads数目获取各次窗口读取过程中,滑动窗口的各个序列组合的出现次数,进而确定各个甲基化测序区间在各次窗口读取过程中产生的次数向量,将各个甲基化测序区间在各次窗口读取过中产生的次数向量拼接为各个甲基化测序区间的甲基化向量,使所确定的甲基化向量中的每个向量元素与检测样本中各个甲基化测序区间的序列组合一一对应,能够对检测样本中各个甲基化测序区间的甲基化信息进行全面表征;具体地,检测样本的各个甲基化测序区间均可通过甲基化向量进行表征,不再被简单归纳为单一的一个数值,能够复原各个甲基化测序区间不同甲基化位点的丰度分布情况,更加便于研究人员对该甲基化区间的后续分析。这样在后续记录和分析不必将每一个向量元素所代表的甲基化情况组合重复记录,因此相对于相关传统的甲基化水平记录方法,大大减少了记录的复杂程度,以及相应分析过程中的存储压力和运算压力。
在一个实施例中,若从乳腺癌(BrC)组织来源和血浆来源的若干良性样本和恶性样本中确定检测样本,借助预先设计的面板(panel)进行重亚硫酸盐法(bi-sulfur)测序从而获得每个检测样本中各个位点的甲基化信息;通过设定合适长度的阅读区间,将某个甲基化测序区间的一段阅读区间所有可能出现的甲基化情况按特定顺序排列,得到该段阅读区间的各类测序结果,并统计每种测序结果可能性出现的频次,得到各类测序结果的Reads数目。采用滑动窗口通过给定滑动步长滑动阅读区间的方式将整个甲基化测序区间的情况读出,将甲基化水平转化为各次滑动滑动窗口前窗口读取过程中产生的次数向量;以将甲基化测序区间在各次窗口读取过中产生的次数向量拼接为该甲基化测序区间在的甲基化向量。这样针对各个甲基化测序区间分别执行上述操作,以分别获取各个甲基化测序区间的甲基化向量;根据各个甲基化测序区间的甲基化向量,后续可以在训练集样本中进行单一甲基化测序区域的机器学习模型建模以区分良性和恶性样本,并借助测试集进行评估,从而得到对于区分良恶性重要的甲基化区域,以及对应区域的甲基化表现形式。
在一个示例中,如图2所示,当使用甲基化信息进行良恶性样本判别时,基于预先设计的面板(panel)的甲基化测序方法,每个样本在每个甲基化区域的信息记录方式通常可记录为图2所示的形式:相应甲基化区域包含多个连续或不连续甲基化位点(实际横跨DNA的长度可为100-250nt不等)。此处以图2中18个位点为例,左方包含T和C的序列表示测序得到的甲基化位点情况,根据重亚硫酸盐(bi-sulfur)方法记录原理,T表示该位点没有被甲基化,而C表示该位点已经被甲基化。T与C的组合表示甲基化位点的不同构成方式,相应地,右侧的数字代表这种组合方式在该样本该区域内被甲基化测序方法测得的出现频次。事实上,实际测序样本中,通常包含未能测到甲基化信息的甲基化位点,它们以N表示。此处为简化后续计算强度,统一将N用T代替,表示没有甲基化信息。
过往方法中,该区域通常使用一个单一值(例如甲基化熵)表示甲基化水平。这种直接的计算方式将大量甲基化信息进行简化和抛弃。在后续利用机器学习模型进行分类时,此类方法具有影响模型分类效果的潜在风险。有鉴于此,本示例采用上述甲基化向量的方式表征单一样本单一区域内的甲基化水平。
上述甲基化向量可以通过如下方式生成:
选定一个阅读长度,作为一组“阅读区间”(reading window)。相应地,将上述阅读区间,所有可能的C和T的组合进行罗列和排序。本示例选取区间长度为8,得到的有序结果(测序结果),共256种情况,其中图3示出了256种情况中的部分C与T的组合。相应地,可以在python编程语言中,将一个有序字典初始化,每个字典的键与上述256种情况,各自初始值为0。同时生成一个空列表。
以此阅读区间下所有可能性的有序排列为基础,可对图2所示的每个样本的每一个甲基化区域进行统计,以得到各类测序结果的Reads数目。参考图4所示,图4示出了通过每一步移动所截取的甲基化区域的过程,此示例使用长度为8的阅读区间,选取的区间重叠为3,具体是在长度为18的甲基化区域上,下文将参考图4所示分步骤对此进行详细说明。
在第一步的初始位置,在长度为18的这个区域中,截取前1-8的长度将得到TTTTTTTT、CCCCTTTT、TTTTCCCC……(图4中,第一步,下划线所示)这些测序结果,综合考虑这些信息在测序结果中的出现频次,将有序字典键TTTTTTTT、CCCCTTTT、TTTTCCCC……分别增加50、120、30……。注意,在1-18的长度,每种序列并不会重复,但在截取位置可能存在重复。重复的键值在统计时不进行合并,或只统计其中的一个或若干个,而是分别按照其所在18长度的序列中出现频次,依次为对应键值的字典添加值。完成所有的统计后,将字典的值按顺序取出放入空列表中,此时列表长度为256。而后将字典所有值归零。
在第二步的位置,移动滑动步长5后截取6-13的长度得到TTTTTTTT、TTTTTTTT、CCCTTTTT……将有序字典键TTTTTTTT、TTTTTTTT、CCCTTTTT……分别增加50、120、30……将字典的值按顺序取出放入空列表中,此时列表长度为512。而后将字典所有值归零。
在第三步的位置,移动步长5后截取11-18的长度得到TTTCCCCC、TTTCCCCC、TTTCCCCC……将有序字典键TTTCCCCC、TTTCCCCC、TTTCCCCC……分别增加50、120、30……将字典的值按顺序取出放入空列表中,此时列表长度为768。而后将字典所有值归零。
因此,长度为18的甲基化区域,如果选取阅读区间8,区间重叠3,最终将得到一个长度为768的数值向量,作为该甲基化区域的甲基化程度代表。
由于面板(panel)上每一个甲基化区域的包含的甲基化位点数目并不恒定(同一个甲基化位点在),此算法还需要考虑两种例外情况。
第一种:所选阅读区间长度大于该甲基化区域的甲基化位点数目。此时以该甲基化区域的甲基化位点数目作为本区域的阅读区间长度,进行一次性统计(不进行任何滑动平移)。例如,长度为4的甲基化区域,阅读区间此时选为4,最终在列表中得到的统计向量长度为16。
第二种:该甲基化区域的甲基化位点数目不能支持给定阅读区间和重叠区间下,阅读区间进行若干次完整的移动,则在最后一个不完整区间中,以其长度作为阅读区间长度进行统计。例如,长度为16的甲基化区域,如果选取阅读为8,区间重叠为3,则最后一个不完整区间为6,该区间以此为阅读区间进行统计。最终在列表中得到的统计向量长度为256+256+64=576。
可见,表征单一样本单一甲基化区域的甲基化水平,由原来的单一值,变为了长度几十上百的数值向量。该向量的有效数值较为稀疏,因此需要进行特征筛选的步骤,将真正有效的特征用于后续建模分类,从而达到将数据量压缩的目的。
在一个实施例中,如图5所示,提供了一种甲基化水平的向量化表征装置,包括:
第一获取模块10,用于获取检测样本的各个甲基化测序区间的甲基化信息;其中,所述检测样本包括多个甲基化测序区间;
第一确定模块20,用于根据各个甲基化测序区间的甲基化信息确定预设的阅读区间中各类测序结果的Reads数目;其中,所述Reads数目为相应类别的测序结果在相应甲基化测序区间的甲基化信息中的出现次数;所述阅读区间中各类测序结果的排列顺序预先设定;
滑动模块30,用于将滑动窗口在所述阅读区间按照滑动步长从第一个位点至最后一个位点滑动,根据各类测序结果的Reads数目获取各次窗口读取过程中,滑动窗口的各个序列组合的出现次数;其中,所述滑动窗口在读取各个序列组合的出现次数后,按照所述滑动步长向后滑动;
第二确定模块40,用于根据各个甲基化测序区间中各个序列组合的出现次数确定各个甲基化测序区间在各次窗口读取过程中产生的次数向量;
读取模块50,用于将各个甲基化测序区间在各次窗口读取过中产生的次数向量拼接为各个甲基化测序区间的甲基化向量。
关于甲基化水平的向量化表征装置的具体限定可以参见上文中对于甲基化水平的向量化表征方法的限定,在此不再赘述。上述甲基化水平的向量化表征装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,参考图6所示,提供一种特定测序区间的检测方法,包括:
S61,采用上述任一实施例所述的甲基化水平的向量化表征方法获取各个样本中各个甲基化测序区间的甲基化向量。
S62,将所述样本划分为训练样本和测试样本,将训练样本中各个甲基化测序区间的甲基化向量确定为训练向量,将测试样本中各个甲基化测序区间的甲基化向量确定为测试向量,将区间顺序相同的各个甲基化测序区间确定为一组甲基化测序区间,得到多组甲基化测序区间,将各组训练向量分别输入分类模型进行训练,得到各组甲基化测序区间的评估模型,使各个评估模型针对对应的一组测试向量进行测试,以确定各个甲基化测序区间的评估指标;其中,各个样本中各个甲基化测序区间的区间顺序预先设定;一组甲基化测序区间的甲基化向量包括该组甲基化测序区间对应的一组训练向量和一组测试向量。
上述样本包括多个训练样本和多个测试样本;各个样本(包括训练样本和测试样本)均具有良性或者恶性等类型标签,相应地,可以依据样本对应的类型标签确定各个样本中各个甲基化测序区间的甲基化向量的类型标签。各个样本均包括多个甲基化测序区间,各个样本中甲基化测序区间的个数相同;在实际操作过程中,如果某个区间通过测序没有得到相应的信息,需要参照其余样本生成一个特定长度(对应特定排序向量信息)的空向量,并使向量的每个元素保持为0。上述各个甲基化测序区间在相应样本中的排列顺序(区间顺序)都是预先设定的。这样将区间顺序相同的各个甲基化测序区间确定为一组甲基化测序区间时,各组甲基化测序区间便可以包括训练样本对应的甲基化测序区间和测试样本对应的甲基化测序区间;各组甲基化测序区间的甲基化向量便可以包括该组甲基化测序区间对应的一组训练向量和一组测试向量。
将各组训练向量分别输入分类模型进行训练,得到各组甲基化测序区间的评估模型,将各组测试向量输入相应甲基化测序区间的评估模型测试,可以使各个评估模型针对各组测试向量输出相应的AUC(Area Under Curve),以依据AUC确定各个评估模型评估指标。
上述分类模型可以包括tree-based模型和regression-based模型等模型。如上所述,一组甲基化测序区间的甲基化向量包括一组训练向量和一组测试向量,相应地,该组甲基化向量对应一个评估模型,该组甲基化向量包括的训练向和测试向量均对应这个评估模型。将某组测试向量输入该组测试向量对应的评估模型后,该评估模型针对这组测试向量输出这组测试向量的AUC,这组测试向量的AUC便为该评估模型评估指标;这样,将各组测试向量输入相应甲基化测序区间的评估模型,各个评估模型便会针对各组测试向量输出各个AUC,确定各个评估模型评估指标。
在一个示例中,可以对样本进行多次划分,以是样本在各次划分过程中分别得到相应的训练样本和测试样本,在各次划分过程中,将各组训练向量分别输入分类模型进行训练,得到各组甲基化测序区间的评估模型,使各个评估模型针对该次划分过程中得到的测试向量进行测试,得到该次划分过程中各个评估模型的AUC,以此得到各次划分过程中各个评估模型的AUC,这样各个甲基化测序区间便具有多个AUC,便可以依据各个甲基化测序区间的各个AUC确定相应甲基化测序区间的评估指标。
S63,将评估指标大于或等于特定阈值的甲基化测序区间确定为特定测序区间。
评估指标大于或等于特定阈值的评估模型可以包括多个,各个评估指标大于或等于特定阈值的评估模型均存在对应的一组甲基化测序区间,所确定的各组甲基化测序区间在各个样本中的区间顺序相同。上述所确定的各组甲基化测序区间便为特定测序区间。
具体地,所述特定阈值的取值方法包括:
将各个评估指标中最大值的设定比例确定为所述特定阈值。
上述设定比例可以设置为80%等值,若设定比例设置为80%,则可以将评估指标中最大值的80%确定为特定阈值。
本实施例确定的各组特定测序区间中,不同类型的样本之间的差异远远大于同类型样本内部的差异,因而这些特定测序区间可以成为区分各类型样本的良好指标;比如在样本类型包括良性和恶性时,特定测序区间在良性样本和恶性样本之间的差异,远远大于良性样本内部的差异或恶性样本内部的差异,从而可以成为区分良恶性样本的良好指标。这样特定测序区间便可以较为明显的表征相应序列或者样本的类型,即根据特定测序区间对应的甲基化向量可以为特定测序区间中序列的类型判断作较大贡献。
进一步地,本实施例的基因组等样本包括很多个甲基化测序区间(如数目为10000个),各个甲基化测序区间在相应的样本中均有相应的区间顺序,样本中区间顺序相同的多个甲基化测序区间为一组甲基化测序区间,比如第一个样本中的第一个甲基化测序区间、第二个样本中的第一个甲基化测序区间、……、直至最后一个样本中的第一个甲基化测序区间为一组甲基化测序区间;第一个样本中的第二个甲基化测序区间、第二个样本中的第二个甲基化测序区间、……、直至最后一个样本中的第二个甲基化测序区间为一组甲基化测序区间等等。每个样本都使用上述全部甲基化测序区间,进行测序和提取各自的信息。在评估特定测序区间的时候,将样本分为训练集和测试集,使用每个区间(甲基化测序区间)的向量(甲基化向量)作为特征,是一个区间一个区间进行单独的建模,不同样本基于同一个区间进行比较,所以在样本包括10000个甲基化测序区间时,共有10000个评估模型。通过10000个AUC(此处的AUC实际上为对应甲基化测序区间的评估指标,即每个区间在多次切分中的评估AUC的均值或中位值)的排序(至少满足一个阈值),能够得到这10000个区间的最优区间(集),最优区间(集)即为最大AUC对应的区间。
上述特定测序区间的检测方法,通过获取各个样本中各个甲基化测序区间的甲基化向量,将所述样本划分为训练样本和测试样本,将训练样本中各个甲基化测序区间的甲基化向量确定为训练向量,将测试样本中各个甲基化测序区间的甲基化向量确定为测试向量,将区间顺序相同的各个甲基化测序区间确定为一组甲基化测序区间,得到多组甲基化测序区间,将各组训练向量分别输入分类模型进行训练,得到各组甲基化测序区间的评估模型,使各个评估模型针对对应的一组测试向量进行测试,以确定各个甲基化测序区间的评估指标,将评估指标大于或等于特定阈值的甲基化测序区间确定为特定测序区间,使得检测得到的各组特定测序区间中,不同类型的样本之间的差异远远大于同类型样本内部的差异,因而这些特定测序区间可以成为区分各类型样本的良好指标;比如在样本类型包括良性和恶性时,特定测序区间在良性样本和恶性样本之间的差异,远远大于良性样本内部的差异或恶性样本内部的差异,从而可以成为区分良恶性样本的良好指标。这样特定测序区间便可以较为明显的表征相应序列或者样本的类型,即根据特定测序区间对应的甲基化向量可以为特定测序区间中序列的类型判断作更大贡献。
在一个实施例中,所述将所述样本划分为训练样本和测试样本,将训练样本中各个甲基化测序区间的甲基化向量确定为训练向量,将测试样本中各个甲基化测序区间的甲基化向量确定为测试向量,将区间顺序相同的各个甲基化测序区间确定为一组甲基化测序区间,得到多组甲基化测序区间,将各组训练向量分别输入分类模型进行训练,得到各组甲基化测序区间的评估模型,使各个评估模型针对对应的一组测试向量进行测试,以确定各个甲基化测序区间的评估指标包括:
将所述样本分别多次划分为训练样本和测试样本;
在各次划分过程中,将训练样本中各个甲基化测序区间的甲基化向量确定为训练向量,将测试样本中各个甲基化测序区间的甲基化向量确定为测试向量,将区间顺序相同的各个甲基化测序区间确定为一组甲基化测序区间,得到多组甲基化测序区间,将各组训练向量分别输入分类模型进行训练,得到各组甲基化测序区间的评估模型,使各个评估模型针对对应的一组测试向量测试得到各个评估模型在该次划分过程的AUC;
获取各次划分过程中各个评估模型的AUC,得到各个甲基化测序区间对应的多个AUC,将根据各个甲基化测序区间对应的各个AUC的平均值或者中位值确定相应甲基化测序区间的评估指标。
本实施例将样本进行多次(如100次或者更次)划分,针对各次划分得到的训练样本分别训练得到这次划分时各组甲基化测序区间的评估模型,以使评估模型针对这次划分时相应组测试向量测试得到各个评估模型在该次划分过程的AUC,这样经过各次样本划分,进行相应的训练测试便可以得到各个甲基化测序区间的多个AUC,以此确定各个甲基化测序区间的评估指标,可以有效消除评估指标确定过程中的相关误差。
针对样本进行多次划分,并进行相应训练、测试的过程中,划分比例可以是相同的,也可以是不完全相同的;各次划分的划分方式是互不相同的(即各次划分得到的训练样本和测试样本均不一样)。比如某一次划分过程中,训练样本和测试样本的划分比例可以为6:4,另一次划分过程中,训练样本和测试样本的划分比例可以为7:3等等。又比如在一个示例中,若有500个样本,按照6:4的划分,分为训练集和测试集,则各自对应数目为300个和200个,在划分比例一定的情况下,会有多个60:40的数据集,假如划分不重复的100次,则每一次里面,300个训练样本和200个测试样本的组合是不一样的,对于同一个甲基化测序区间,由于有100次上述训练集和测试集的划分,事实上建立了100个评估模型,每个模型在测试集的样本中均有一个对应的AUC,这100个AUC有高有低,为了让不同的甲基化测序区间之间能够进行横向比较,可以取这100个的模型的中位值或均值,来表征这个区间的模型的好坏,以消除单次划分、训练和测试过程中面临的误差影响。
具体地,上述特定测序区间的检测方法还包括:
在各个特定测序区间的甲基化向量中查找在训练相应评估模型中具备特定贡献度的向量元素,得到多个目标元素;
检测各个目标元素在相应特定测序区间对应的位点或者位点组合,将检测得到的位点或者位点组合确定为相应特定测序区间的甲基化位点或者甲基化位点组合。
甲基化向量中的各个元素均对应甲基化测序区间的一个位点或者位点组合。依据阅读区间中各类测序结果的排列顺序、滑动窗口的长度和滑动步长这些信息可以分别对甲基化向量中各个元素所对应的位点或者位点组合进行定位。
上述具备特定贡献度的向量元素为相应特定测序区间中较为重要的向量元素。特定测序区间的甲基化向量中具备特定贡献度的向量元素在相应特定测序区间对应的位点或者位点组合为被甲基化的位点或位点组合,往往携带更为重要的信息,将这些位点或者位点组合确定为相应特定测序区间的甲基化位点或者甲基化位点组合,以对各个特定测序区间的甲基化位点或者甲基化位点组合进行更为精确的记录及分析,有助于对确定检测得到的甲基化位点或者甲基化位点组合对相应特定测序区间的影响。
在一个示例中,所述在各个特定测序区间的甲基化向量中查找在训练相应评估模型中具备特定贡献度的向量元素,得到多个目标元素包括:
在各次划分过程中,获取各个特定模型针对特定向量中各个向量元素输出的重要性排序参数,得到各个向量元素的多个重要性排序参数;其中,所述特定模型为特定测序区间对应的评估模型;所述特定向量为特定测序区间对应的甲基化向量;
将各个向量元素的各个重要性排序参数相加,得到各个向量元素的加和数,将加和数排列在设定位数之前的向量元素确定为具备特定贡献度的向量元素。
上述设定位数可以依据加和数总数进行设置,比如设置为加和数总数的30%等值。
在另一个示例中,所述在各个特定测序区间的甲基化向量中查找在训练相应评估模型中具备特定贡献度的向量元素,得到多个目标元素包括:
在各次划分过程中,获取各个特定模型针对特定向量中各个向量元素输出的重要性评分,得到各个向量元素的多个评分;其中,所述特定模型为特定测序区间对应的评估模型;所述特定向量为特定测序区间对应的甲基化向量;
将取值为非零值的重要性评分个数大于或等于个数阈值的向量元素确定为具备特定贡献度的向量元素。
上述个数阈值可以依据样本划分次数进行设置,比如设置为样本划分次数的20%等值。
上述两个示例中,各次样本划分及其中评估模型的建立过程中,在测试集(如测试向量)中检测相应AUC可以表征相应评估模型的泛化能力,而在训练集(如训练向量)中进行建模的这个过程,可以得到相应甲基化向量中向量元素的重要性排序(如得到各个向量元素的重要性排序参数和重要性评分等等),这个过程能够评估哪些元素对相应评估模型贡献比较大。由于上述示例是拿排序好的甲基化向量作为特征进行建模,所以从这个特征重要性的排序中,可以对重要的甲基化位点的(或甲基化位点的组合)进行相应定位。
具体地,以对样本进行100次划分、训练和测试为例,如划分不重复的100次,每个甲基化测序区间在每一次划分中有一个评估模型,对应一组特征的重要性排序,则这些特征在100次划分中的排序需要综合考虑,此时便可以采用上述两个示例提供的方法对向量元素进行相应排序,以得到相对重要的向量元素。相应地,第一个示例方法包括:将100次划分方案,每个特征的排序(重要性排序参数)相加,加和数目最小的特征,定义为100次划分中最重要的特征,加和数目排第二的,定义为第2重要的特征,以此类推;第二个示例方法包括:每次划分、训练和测试时,从评估模型可以得到不同特征的重要性评分,重要特征可定义为,假设有100次划分方案,如果特征重要性评分值至少20次划分中非零,便可统计为重要特征。这些重要特征的之间的排序为:如果在100次划分中均满足特征重要性非零,排名第一;99次,排名第二,以此类推,相应名次可并列。以此确定特定测序区间的甲基化向量中相对重要的向量元素,以对重要甲基化位点(或甲基化位点组合)进行定位。
在一个实施例中,参考图7所示,鉴于每一个甲基化测序区间的位点数目在样本间保持一致,因此每一个计算所得的向量的长度在不同样本间等长。假设总共有m个样本,每个样本在特定区间有n个特征,则Xij表示i号样本的j号特征,Yi表示i号样本的属性标签(例如良性,benign;或恶性,malignant)。
将样本数据均匀分为训练集和测试集后,可通过各类分类模型,如tree-based模型(例如xgboost),或regression-based模型(例如lasso),进行特征筛选。特征筛选可以包括以下步骤。
第一步:重要特征所在甲基化区间(特定测序区间)的确定。每个甲基化区间在训练集上建模,在测试集上评估。每一个甲基化区间可以在测试集上得到每个测试样本的评估指标AUC(Area Under Curve),取测试样本间均值或中位值为代表,进行排序。选取特定阈值,将整体AUC水平最高的若干区间选中。
第二步:重要特征在选定甲基化区间位置的确定。上述整体AUC水平最高的区间,返回至训练集中对模型的评估,依照不同模型重要性判定方式,挑选出区间内最重要的特征。例如,长度为18的甲基化区域,如果选取阅读区间8,区间重叠3(对应滑动步长为5),最终将得到一个长度为768的数值向量。该向量中的1-768号特征,可由模型在训练集的建立过程,得知各自对模型建立的贡献程度。
两步挑选的最终结果将得到若干重要甲基化区域(特定测序区间),以及这些甲基化区域内部的若干重要特征(甲基化位点或者甲基化位点组合)。
具体地,通过如下3个应用示例对特定测序区间的检测方法进行说明。
应用示例一:
根据tree-based模型(例如xgboost),或regression-based模型(例如lasso),应用于给定的甲基化面板(包括11939个甲基化检测区间)和乳腺癌良性-恶性组织样本(257例),进行特征筛选。将组织样本进行训练集和测试集的6:4的2划分(即实际样本数目比为154:103,将该过程重复进行100次),应用所得到的评估模型进行测试,对应ROC曲线如图8,图9。图8、图9结合图19的信息表明,对于xgboost模型和lasso模型所找到的前100个最优甲基化检测区间中,有31个被二者共同认可。在100次划分重复中,运用xgboost模型所得到的AUC最高均值0.981(其所对应标准差0.012),最高中位值0.983(其所对应IQR值0.015);运用lasso模型所得到的AUC最高均值0.977(其所对应标准差0.012),最高中位值0.976(其所对应IQR值0.016)。上述四个最高的AUC均值或中位值均属于同一个甲基化检测区间。该结果表明,上述两种tree-based模型和regression-based模型,所找到的最优甲基化检测区间一致。
应用示例二:
为深入研究最优甲基化区间上每个位点的作用权重,应用示例一中的示例可进行进一步的评估工作。上述最优甲基化检测区间,其长度为13,在选取阅读为8,区间重叠为3的特征构建方案时,将产生按指定顺序排列的512个特征(相应编号为1-512)。基于上述方案,查看最优区间所对应的最优特征评估数据,可以得知,在运用tree-based的模型xgboost对该最优区间进行评估时,根据训练集中特征重要性(在单次划分中重要性大于0,且在大于20个划分重复中成立)可得到40个重要特征(编号16,32,48,56,64,80,95,96,112,128,144,156,158,160,176,188,192,208,224,232,240,248,252,254,255,256,384,416,432,444,448,464,480,488,492,496,504,508,511,512);在运用regression-based的模型lasso对该最优区间进行评估时,根据训练集中特征重要性(在单次划分中重要性非0,且在大于20个划分重复中成立)可得到19个重要特征(编号23,28,32,56,64,80,95,96,112,144,158,160,166,176,188,208,240,256,492)。其中16个特征被二者共同认可(编号32,56,64,80,95,96,112,144,158,160,176,188,208,240,256,492),这16个特征对该最优甲基化区间产生的影响可用下列向量表示:
32:1 1 1 0 0 0 0 0 0 0 0 0 0
56:1 1 0 0 1 0 0 0 0 0 0 0 0
64:1 1 0 0 0 0 0 0 0 0 0 0 0
80:1 0 1 1 0 0 0 0 0 0 0 0 0
95:1 0 1 0 0 0 0 1 0 0 0 0 0
96:1 0 1 0 0 0 0 0 0 0 0 0 0
112:1 0 0 1 0 0 0 0 0 0 0 0 0
144:0 1 1 1 0 0 0 0 0 0 0 0 0
158:0 1 1 0 0 0 1 0 0 0 0 0 0
160:0 1 1 0 0 0 0 0 0 0 0 0 0
176:0 1 0 1 0 0 0 0 0 0 0 0 0
188:0 1 0 0 0 1 0 0 0 0 0 0 0
208:0 0 1 1 0 0 0 0 0 0 0 0 0
240:0 0 0 1 0 0 0 0 0 0 0 0 0
256:0 0 0 0 0 0 0 0 0 0 0 0 0
492:0 0 0 0 0 0 0 0 1 0 1 0 0
上述标记只包含0与1,数字长度表示甲基化区域的甲基化位点长度,0表示某特征认为该点不需要甲基化,而1表示需要甲基化。将16个特征对区间的影响进行合并,可得到向量:
7 8 8 6 1 1 1 1 1 0 1 0 0
从上述分析可知,在最优甲基化区间上,最重要的位点为2、3号,其次是位点1号,而最不重要的位点是10、12、13。
应用示例三:
与应用示例一、应用示例二所使用的特定测序区间的检测方法相对应,本示例也使用传统文献报道的若干算法甲基化表征方式作为对比。这些方法包括:甲基化熵值(methylation entropy)、甲基化表观多态性(methylation epi-polymorphism)、甲基化频率(methylation frequency)。
将每一例样本的11939个甲基化检测区间计算对应数目的甲基化表征值(范围0-1),相应地,257例乳腺癌良性-恶性组织样本对应观测×变量数目为257×11939。对样本使用同样的100次6:4划分,分别运用xgboost模型和lasso模型进行检测,得到的结果如下:
甲基化熵值(methylation entropy):xgboost模型的AUC均值0.970,对应标准差0.024;得到lasso模型的AUC均值0.984,对应标准差0.012,相应的ROC曲线可以参考图10,图11。
甲基化表观多态性(methylation epi-polymorphism):xgboost模型的AUC均值0.974,对应标准差0.018;得到lasso模型的AUC均值0.986,对应标准差0.009,相应ROC曲线可以参考图12、图13。
甲基化频率(methylation frequency):xgboost模型的AUC均值0.972,对应标准差0.021;得到lasso模型的AUC均值0.969,对应标准差0.017,相应ROC曲线可以参考图14,图15。
上述评估结果与本实施例提供的特定测序区间的检测方法有接近的AUC均值和标准差。本实施例提供的特定测序区间的检测方法仅使用单一最优甲基化区间,便达到传统方法使用整个甲基化面板(panel)建模的效果。相应ROC曲线表明,以不同划分之间的ROC曲线稳定性作为衡量标准,该算法显著优于传统的一系列甲基化表征方式。
对于不同区间之间的重要性评估,本实施例提供的特定测序区间的检测方法可通过不同区间在100次划分建模所得结果的AUC的中位值降序,分别得到xgboost模型和lasso模型的前10、25、50、100个重要区间。将这些区间取交集,可得到venn图(文氏图),可以参考图16、图17、图18、图19。它们的交集部分分别占并集的百分比为:25%、19%、19%、18%。
相比之下,传统表征方法基于甲基化面板(panel)的区间重要性评估,可通过以下方式进行:在xgboost模型中,通过筛选训练集中特征重要性(在单次划分中重要性大于0,且在大于20个划分重复中成立)可得到重要区间。在lasso模型中,通过筛选训练集中特征重要性(在单次划分中重要性非0,且在大于20个划分重复中成立)可得到重要区间。基于上述原则,三种传统甲基化表征方法,甲基化熵值(methylation entropy)、甲基化表观多态性(methylation epi-polymorphism)、甲基化频率(methylation frequency),可分别得到xgboost模型和lasso模型所判定的重要区间。将两种机器学习模型得到的重要区间按照甲基化表征方法分别取交集,可得到venn图,见图20、图21、图22。它们的交集部分分别占并集的百分比为:8%、8%、7%。
从上述评估可以发现,本专利所构建的算法,相比于传统的甲基化表征方法,在基于xgboost模型和lasso模型进行区间重要性的评估时,有显著更高的模型间相似性。此外,过往方法将单一甲基化区间总结归纳为唯一数值,从而丢失了该区间内的大部分信息。基于本专利所构建方法的数据记录方式,可将单一区间不同位点的影响程度进行逐个分析。上述优点均可视为本专利所构建算法的创新性。
在一个实施例中,参考图23所示,提供一种特定测序区间的检测装置,包括:
第二获取模块61,用于采用上述任一实施例所述的甲基化水平的向量化表征装置获取各个样本中各个甲基化测序区间的甲基化向量;
划分模块62,用于将所述样本划分为训练样本和测试样本,将训练样本中各个甲基化测序区间的甲基化向量确定为训练向量,将测试样本中各个甲基化测序区间的甲基化向量确定为测试向量,将区间顺序相同的各个甲基化测序区间确定为一组甲基化测序区间,得到多组甲基化测序区间,将各组训练向量分别输入分类模型进行训练,得到各组甲基化测序区间的评估模型,使各个评估模型针对对应的一组测试向量进行测试,以确定各个甲基化测序区间的评估指标;其中,各个样本中各个甲基化测序区间的区间顺序预先设定;一组甲基化测序区间的甲基化向量包括该组甲基化测序区间对应的一组训练向量和一组测试向量;
第三确定模块63,用于将评估指标大于或等于特定阈值的甲基化测序区间确定为特定测序区间。
关于特定测序区间的检测装置的具体限定可以参见上文中对于特定测序区间的检测方法的限定,在此不再赘述。上述特特定测序区间的检测装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供一种特定测序区间的记录方法,包括:
采用上述任一实施例所述的特定测序区间的检测方法获取各个样本的特定测序区间,设置各个特定测序区间分别对应的字典,使各个字典的键表征相应特定测序区间,各个字典的值表征相应特定测序区间的甲基化向量,采用特定格式记录各个字典,以记录各个特定测序区间。
上述特定格式可以为json格式。采用json格式记录各个字典,便于相关处理人员阅读和编写,同时也易于机器解析和生成,还可以有效地提升网络传输效率。
本实施例设置各个特定测序区间分别对应的字典,使各个字典的键表征相应特定测序区间,各个字典的值表征相应特定测序区间的甲基化向量,并采用json格式等便于相关处理人员处理并易于机器解析和生成特定格式记录各个字典,可以进一步提升后续对各个特定测序区间进行相应分析的效率。
在一个示例中,对于各个样本的特定测序区间(重要的甲基化区域),以及其中筛选所得的特征(如甲基化位点或者甲基化位点组合)可以分为两部分进行记录。
参考图24所示,图24中重要甲基化区域为的特定测序区间,各个字典的值,各个字典表征一个重要甲基化区域,字典的值还可以记录相应重要甲基化区域的各个重要排列形式,重要排列形式可以包括其中位点或者位点组合的排列形式。图24所示的文件为json格式,记录字典内容,其中字典的键为重要的甲基化区域,字典的值为列表,包含该甲基化区域中重要的排列形式。例如长度为18的甲基化区域,如果选取阅读区间8,区间重叠3,得到一个长度为768的数值向量,则字典的键为该长度18甲基化区域的名称,字典的值为长度为768的数值向量中,贡献突出的特征所对应的名称。
图25是优选的文件信息存储方式。上述json文件和一个包含更详细信息的母文件夹共同放置于根目录中。层级1子文件夹以重要的甲基化区域进行命名,层级2子文件夹则以该甲基化区域中重要特征所对应排列的数字编号。换言之,该编号反映该特征在1-768中的次序。层级2文件夹内包含两个文件,第一个是json文件,该文件记录了这个特征对每个样本的影响;第二个是txt文件,该文件记录了这个特征对该甲基化区域的总体影响。
图26展示了层级2子文件夹中json文件的形式。该文件记录字典内容。字典键为用于评估影响的样本名称,字典值为列表形式,包含四部分内容(所影响到的Reads序列,影响的位置坐标,用坐标截取Reads所得到的序列(理论上与该重要特征保持一致),该Read在该样本的测得数目)。如果只有一个Reads受到影响,该列表为单层列表。如果有多个,则为嵌套列表。如果没有任何Reads受到影响,该列表依然以空列表“[]”进行占位。
图27展示了层级2子文件夹中txt文件的形式。该文件记录了甲基化区域中某个特征对区间整体所施加的影响。文件中只包含0与1,数字长度表示甲基化区域的甲基化位点长度,0表示某特征认为该点不需要甲基化,而1表示需要甲基化。依旧以长度为18的甲基化区域,选取阅读区间8,区间重叠3为例,图27展示了三种示例,第一种表示其中一个特征强调该区域第2,3,6,9位甲基化位点的重要性,第二种表示另一个特征强调该区域第6,8,9,10,11,13位甲基化位点的重要性,第三种表示第三个特征强调该区域第11,12,14,15,17(三个示例将分别存在于三个独立文件中)。假设该甲基化区域有且仅有上述三个重要特征,则整个区域中,该方法认为2,3,6,8,9,10,11,12,13,14,15,17位置需要进行甲基化,且6,9,11三个甲基化位点有更高权重(如权重可以设为2,其余位点可以设为1)。
本示例提供的特定测序区间的记录方法,从与母文件夹同一层级的json文件可得到贡献突出的特征所对应的名称。从层级2子文件夹中的json文件可得到所影响到的Reads序列,影响的位置坐标,用坐标截取Reads所得到的序列,该Read在该样本的测得数目。从层级2子文件夹中txt文件可得到甲基化区域中某个特征对区间整体所施加的影响。借助上述信息,可对相应甲基化位点的优劣,以及后续实验中存在的潜在问题,进行详细地、全方位的评估。
在一个实施例中,提供一种特定测序区间的记录装置,包括:
第二获取模块,用于采用上述任一实施例所述的特定测序区间的检测装置获取各个样本的特定测序区间,设置各个特定测序区间分别对应的字典,使各个字典的键表征相应特定测序区间,各个字典的值表征相应特定测序区间的甲基化向量,采用特定格式记录各个字典,以记录各个特定测序区间。
关于特定测序区间的记录装置的具体限定可以参见上文中对于特定测序区间的记录方法的限定,在此不再赘述。上述特定测序区间的记录装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
基于如上所述的示例,在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图28所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种甲基化水平的向量化表征方法、特定测序区间的检测方法或者特定测序区间的记录方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图28中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
据此,在一个实施例中还提供一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如上述各实施例中的任意一种甲基化水平的向量化表征方法、特定测序区间的检测方法或者特定测序区间的记录方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。