CN116364195B - 一种基于预训练模型的微生物遗传序列表型预测方法 - Google Patents
一种基于预训练模型的微生物遗传序列表型预测方法 Download PDFInfo
- Publication number
- CN116364195B CN116364195B CN202310520356.7A CN202310520356A CN116364195B CN 116364195 B CN116364195 B CN 116364195B CN 202310520356 A CN202310520356 A CN 202310520356A CN 116364195 B CN116364195 B CN 116364195B
- Authority
- CN
- China
- Prior art keywords
- training
- genetic sequence
- microorganism
- model
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000012549 training Methods 0.000 title claims abstract description 150
- 108091028043 Nucleic acid sequence Proteins 0.000 title claims abstract description 121
- 244000005700 microbiome Species 0.000 title claims abstract description 110
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000013136 deep learning model Methods 0.000 claims abstract description 32
- 238000007781 pre-processing Methods 0.000 claims abstract description 7
- 239000012634 fragment Substances 0.000 claims description 16
- 108020004414 DNA Proteins 0.000 claims description 15
- 230000006870 function Effects 0.000 claims description 8
- 230000007246 mechanism Effects 0.000 claims description 7
- 238000013528 artificial neural network Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 claims description 6
- 230000000873 masking effect Effects 0.000 claims description 3
- 239000002585 base Substances 0.000 description 105
- 108090000623 proteins and genes Proteins 0.000 description 14
- 230000002068 genetic effect Effects 0.000 description 13
- 230000000813 microbial effect Effects 0.000 description 10
- 239000006041 probiotic Substances 0.000 description 9
- 235000018291 probiotics Nutrition 0.000 description 9
- 239000013598 vector Substances 0.000 description 9
- 230000008569 process Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 108700005077 Viral Genes Proteins 0.000 description 4
- 241000700605 Viruses Species 0.000 description 4
- 241000894007 species Species 0.000 description 4
- 238000003860 storage Methods 0.000 description 4
- 241000894006 Bacteria Species 0.000 description 3
- 239000003513 alkali Substances 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 3
- 150000007523 nucleic acids Chemical group 0.000 description 3
- 238000004140 cleaning Methods 0.000 description 2
- 238000005520 cutting process Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000003058 natural language processing Methods 0.000 description 2
- 102000004169 proteins and genes Human genes 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 238000002864 sequence alignment Methods 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 108700028369 Alleles Proteins 0.000 description 1
- 241000710831 Flavivirus Species 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 150000001413 amino acids Chemical class 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000035 biogenic effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000012165 high-throughput sequencing Methods 0.000 description 1
- 230000002906 microbiologic effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 108020004707 nucleic acids Proteins 0.000 description 1
- 102000039446 nucleic acids Human genes 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008092 positive effect Effects 0.000 description 1
- 230000000529 probiotic effect Effects 0.000 description 1
- 108090000765 processed proteins & peptides Chemical group 0.000 description 1
- 238000007711 solidification Methods 0.000 description 1
- 230000008023 solidification Effects 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 238000013518 transcription Methods 0.000 description 1
- 230000035897 transcription Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000009827 uniform distribution Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B50/00—ICT programming tools or database systems specially adapted for bioinformatics
- G16B50/30—Data warehousing; Computing architectures
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B20/00—ICT specially adapted for functional genomics or proteomics, e.g. genotype-phenotype associations
- G16B20/20—Allele or variant detection, e.g. single nucleotide polymorphism [SNP] detection
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B30/00—ICT specially adapted for sequence analysis involving nucleotides or amino acids
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A90/00—Technologies having an indirect contribution to adaptation to climate change
- Y02A90/10—Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation
Landscapes
- Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Theoretical Computer Science (AREA)
- Biophysics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Medical Informatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Biotechnology (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Chemical & Material Sciences (AREA)
- Analytical Chemistry (AREA)
- Proteomics, Peptides & Aminoacids (AREA)
- Databases & Information Systems (AREA)
- Bioethics (AREA)
- Genetics & Genomics (AREA)
- Molecular Biology (AREA)
- Measuring Or Testing Involving Enzymes Or Micro-Organisms (AREA)
Abstract
本发明公开了一种基于预训练模型的微生物遗传序列表型预测方法,包括:获取微生物遗传序列数据并构建数据库,遍历数据库对微生物遗传序列数据进行分析和预处理;采用多碱基单元表示微生物遗传序列;基于多碱基单元构建分预训练数据集和分类数据集;构建深度学习模型,并将预训练数据集向量化后输入至深度学习模型进行训练得到预训练模型;调整预训练模型结构,将分类数据集向量化后输入至预训练模型进行训练得到预测模型;将待预测微生物遗传序列输入至预测模型,从而得到表型预测结果;本发明基于预训练模型对微生物遗传序列进行编码和表示,并可对模型进行微调,从而实现高精度表型预测,不受序列组装和比对的限制。
Description
技术领域
本发明涉及一种计算机处理微生物遗传序列技术领域,具体涉及一种基于预训练模型的微生物遗传序列表型预测方法。
背景技术
微生物的遗传序列记录了微生物的生长发育的信息,其通过转录和翻译后合成蛋白质来控制生物的生长与发育。随着高通量测序技术的不断发展,微生物遗传学研究已经成为一门热门的研究领域。微生物遗传序列的分析可以帮助我们深入了解微生物群落的多样性、组成以及在不同环境中的功能。然而,微生物遗传序列因其具有高度复杂性、多样性和多变性,导致解读微生物遗传序列对于研究人员来说并不是一项容易的工作。
目前,微生物遗传序列预测方法主要有两种:基于组装的方法和基于序列比对的方法。然而,这两种方法都存在一些缺点。基于组装的方法需要大量的计算资源和时间,且结果不可避免地受到组装算法的影响。基于序列比对的方法需要对序列进行比对,这种方法适用于亲缘关系密切的序列,但对于差异较大的序列,比对的准确性会受到影响。
遗传序列是一种高度序列化的,有前后顺序的序列文本数据,这些特征与人类自然语言十分相似。预训练模型技术是近年来自然语言处理领域的重大突破之一,这种技术通过在大规模数据集上训练模型,可以使模型具有在新任务上表现优异的能力。目前,基于预训练模型的相关技术已经成功应用于自然语言处理、计算机视觉等领域。同样的,基于预训练模型的序列预测技术也可以应用到微生物遗传序列表型预测领域上来。
发明内容
本发明为了克服以上技术的不足,提供了一种基于预训练模型的微生物遗传序列表型预测方法,本发明提出的方法能够通过大量的微生物遗传序列信息训练一个大规模预训练模型,在预训练过程中模型能够从大量微生物遗传序列中学习遗传序列内隐含的特征,不需要进行序列组装和比对,在后续任务中,只需要采用少量数据对模型进行微调,就可以实现高精度的微生物遗传序列表型预测。
本发明克服其技术问题所采用的技术方案是:本发明提出的一种基于预训练模型的微生物遗传序列表型预测方法,包括以下步骤:S1,获取所需微生物遗传序列数据并对其进行存储,以及对存储的数据进行处理从而得到包括所有所需微生物遗传序列数据的数据库;S2,遍历数据库中的微生物遗传序列数据,并基于预设规则对数据库中的微生物遗传序列数据进行分析和预处理;S3,采用多碱基单元表示数据库中预处理后的微生物遗传序列;S4,基于多碱基单元构建分别用于预训练任务的预训练数据集和用于分类任务的分类数据集;S5,构建深度学习模型,并将预训练数据集向量化后输入至深度学习模型进行训练从而得到预训练模型;S6,调整预训练模型结构,将分类数据集向量化后输入至调整后的预训练模型进行训练从而得到预测模型;S7,将待预测微生物遗传序列输入至预测模型,从而得到待预测微生物遗传序列的表型的预测结果。
进一步的,所述对存储的数据进行处理从而得到包括所有所需微生物遗传序列数据的数据库,具体包括:S11、读取存储微生物遗传序列数据的FASTA文件,将FASTA文件中包括的全部微生物遗传序列信息按照预设格式存储到同一个表格中;S12、若同样的微生物遗传序列信息出现若干次,则仅保留一次微生物遗传序列信息,从而得到包括全部所需微生物遗传序列数据的数据库;S13、将数据库保存为CSV格式的文件。
进一步的,所述基于预设规则对数据库中的微生物遗传序列数据进行分析和预处理,具体包括:S21、分析微生物遗传序列数据是否包括单个混合碱基N;S22、若任意一条微生物遗传序列数据包括单个混合碱基N,且单个混合碱基N的前后碱基都是正常碱基,则用碱基A、T、C、G中的任意一个随机替代混合碱基N;S23,若任意一条微生物遗传序列数据包括的连续混合碱基N的个数大于等于2,则在数据库中删除对应的连续混合碱基N。
进一步的,所述采用多碱基单元表示数据库中预处理后的微生物遗传序列,具体包括:S31,确定多碱基单元长度的上限值和下限值;S32,基于多碱基单元长度的上限值和下限值构建可变长的滑动窗口;S33,基于可变长的滑动窗口依次截取数据库中预处理后的微生物遗传序列数据的碱基片段,从而得到长度在上限值和下限值之间的多个碱基单元。
进一步的,所述深度学习模型的网络结构至少包括多层Transformer编码器,每层编码器至少包括多头自注意力机制和前向神经网络。
进一步的,所述预训练数据集向量化后输入至深度学习模型进行训练从而得到预训练模型,具体包括:S51,将预训练数据集的所有多碱基单元进行独热码向量化;S52,将独热码向量化后的多碱基单元构建训练DNA子序列;S53,将训练DNA子序列输入至深度学习模型进行预训练任务,从而得到预训练模型。
进一步的,所述预训练任务包括掩码语言模型和下一句预测,其中,所述掩码语言模型具体包括:S531,对预训练数据集中的预训练训练集中的数据随机选择若干位置;S532,将若干位置对应的碱基替换为预设符号进行掩码;S533,通过深度学习模型预测被掩码的碱基。
进一步的,所述下一句预测包括通过深度学习模型随机选择预训练数据集中的预训练训练集的两个DNA序列,并判断两个DNA序列是否是相邻的两个句子,从而得到两个DNA序列的关系。
进一步的,所述深度学习模型还包括卷积层,所述子序列输入至卷积层学习局部的DNA子序列的序列特征,再经过多头自注意力机制和前向神经网络进行编码学习全局DNA子序列的序列特征。
进一步的,所述调整预训练模型结构,将分类数据集向量化后输入至调整后的预训练模型进行训练从而得到预测模型,具体包括:S61,将分类数据集的所有多碱基单元进行独热码向量化并构建分类子序列;S62,调整预训练模型网络结构;S63,将分类子序列输入至调整后的预训练模型中,并基于交叉熵损失函数进行训练,从而得到预测模型。
本发明的有益效果是:
1、直接对微生物遗传序列进行编码和表示,从而避免了序列组装和比对过程中可能产生的错误和偏差。
2、提出的预训练模型可以捕捉微生物遗传序列的特征,如基因组成、编码方式等,从而可以快速准确地预测微生物遗传序列的表型。
3、预训练模型可以通过大规模的训练数据来学习微生物遗传序列的特征,从而提高了模型的适应性和可迁移性,因此可以应用于不同的微生物群体和不同的预测任务,从而更好地满足实际的预测需求。
4、对单个混合碱基N的微生物遗传序列进行数据调整,对包括连续混合碱基N的微生物遗传序列进行数据清洗,从而使训练模型的数据集更加准确。
5、采用多碱基单元表示微生物遗传序列,选择合适的多碱基单元长度的取值,从而使本地数据库中全部病毒基因用多碱基单元表示。
6、根据训练模型数据长度的不同以及训练模型使用的深度学习网络中隐藏层结点数量不同,灵活地调整参数并训练不同的模型。
7、通过预训练得到通用的训练模型,针对更专业的细分预测的对训练模型进行微调训练。使用微调训练后的模型进行分型预测,准确度更高。
附图说明
图1为本发明实施例的一种基于预训练模型的微生物遗传序列表型预测方法的流程图;
图2为本发明实施例的一种基于预训练模型的微生物遗传序列表型预测方法的原理框图;
图3为本发明实施例中对微生物遗传序列数据进行预处理的原理示意图;
图4为本发明实施例采用多碱基表示微生物遗传序列数据的原理示意图。
具体实施方式
为了进一步理解本发明,首先对本发明提到的部分术语进行解释:
GenBank:是一个序列数据库,对所有公开可利用的基因序列与其转录、翻译形成的蛋白质进行收录和注解。GenBank数据库是国际协作核酸序列数据库(INSDC)中的一部分。
FASTA:在生物信息学中,FASTA格式是一种用于记录核酸序列或肽序列的文本格式,其中的核酸或氨基酸均以单个字母编码呈现。
Biopython:Python中的最大最受欢迎的生物信息学软件包,它包含许多用于常规生物信息学任务的不同子模块。
表型:Phenotype,又称表现型,对于一个生物而言,表示它某一特定的物理外观或成分。表型主要受生物的基因型和环境影响。表型可分为连续变异或不连续变异的。前者较易受环境因素影响,基因型上则会受多个等位基因影响。
MLM:Masked Language Model,掩码语言模型。
NSP:Next Sentence Prediction,下一句预测。
为了使本领域的技术人员更好地理解本发明的技术方案,下面结合具体实施例对本发明的优选实施方案进行描述,但是应当理解,附图仅用于示例性说明,不能理解为对本发明的限制;为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。附图中描述位置关系仅用于示例性说明,不能理解为对本发明的限制。
如图1所示,为本发明实施例所述的一种基于预训练模型的微生物遗传序列表型预测方法的流程图,包括以下步骤。如图2所示,为本发明实施例的一种基于预训练模型的微生物遗传序列表型预测方法的原理框图。
S1,获取所需微生物遗传序列数据并对其进行存储,以及对存储的数据进行处理从而得到包括所有所需微生物遗传序列数据的数据库。
在一些实施方式中,获取所需微生物遗传序列数据,首先根据已知的信息或者互联网信息查询,获得希望获取的微生物遗传序列的GenBankID,并将所要获取的这些微生物遗传序列的GenBankID存储在同一个文本文件中,其中存储GenBankID的文件内包括N行GenBankID,每一行仅有一个GenBankID。通过存储GenBankID的文件中列出的所有微生物遗传序列的GenBankID在公开的生物基因数据库中查询,并下载这些索引对应的生物信息。
在一些实施方式中,下载包括通过NCBI网页,并根据网页提示的步骤进行下载。
另外一些实施方式中,还可以通过使用 BioPython工具包内置的 API 进行下载。下载好的微生物遗传序列数据存储在一个FASTA格式的文件中。
在本发明的一个实施例中,存储在FASTA格式的文件中包括Vir_61、Probio651和Probio212三个数据集。其中,Vir_61数据集包括的微生物遗传序列数据规模较大、覆盖范围较广、信息较全面,数据集内包含“弹状病毒”,“披膜病毒”,“囊泡病毒”和“黄病毒”在内的61种不同科(属)的病毒。Probio651数据集包含239种益生菌和412种非益生菌,分别属于41和80种不同种属的菌群。Probio212数据集,包含15种益生菌和57种非益生菌。
在本发明的一个实施例中,对存储的数据进行处理从而得到包括所有所需微生物遗传序列数据的数据库,包括以下步骤 :
S11、读取FASTA格式的文件,将FASTA文件内包括的三个数据集中全部微生物遗传序列信息按照预设格式整理到一个表格当中。
S12、对于多次出现的微生物遗传序列仅保留一条,得到一个包括全部所需微生物遗传序列数据的数据库。
S13、将数据库保存为一个CSV格式的文件,以便于日后调用、比对和查找。
考虑到有些微生物遗传序列在测序的时候只测得了其中的一部分,同一物种的不同生物个体之间有可能在测序的那一段序列上得到的序列是完全一致的,因此就会出现不同生物个体的GenBank数据库内的基因序列完全相同的情况。对于完全一致的序列则进行数据清洗,仅保留一条。
S2、遍历数据库中的微生物遗传序列数据,并基于预设规则对数据库中的微生物遗传序列数据进行分析和预处理。
在一些实施方式中,采用如下步骤对数据库中的微生物遗传序列数据进行分析和预处理。其中,基于预设规则对微生物遗传序列数据进行预处理的原理示意图如图3所示,包括数据替换和数据清洗。
S21、分析微生物遗传序列数据是否包括单个混合碱基N;
S22、若任一条微生物遗传序列数据包括单个混合碱基N,且碱基N的前后碱基都是正常碱基,则用碱基A、T、C、G中的任意一个随机替代混合碱基N;
S23,若任一条微生物遗传序列数据包括的连续混合碱基N的个数大于等于2,则在数据库中删除对应的连续混合碱基N。
在本发明的一个实施例中,包括Vir_61、Probio651和Probio212三个数据集的数据库,包括的微生物遗传序列数据一共含有675395452个碱基,其中嵌入序列内的单个N碱基一共出现85395处,占总数据的0.0126%。例如图3所示的片段中出现单个N,随机将其采用碱基A、T、C、G其中的一个随机替代混合碱基N。而多个N碱基连续出现的片段一共有26358处,其中最长的片段包含了4431个连续的N,这些片段一共由2358672个混合碱基N组成,占总数据的0.3492%,例如图3所示的片段中出现的连续3个N,将多个N碱基连续出现的片段均删除处理,即去掉连续的3个N。
S3、采用多碱基单元表示数据库中预处理后的微生物遗传序列数据;
如图 3所示,为采用多碱基单元表示预处理后的数据库中的微生物遗传序列的原理示意图。
S31、确定多碱基单元长度的上限值和下限值。
由于多碱基单元长度的取值范围比较宽泛,取值越小,得到的相同长度的碱基单元的种类就越少,但是在使用这些碱基单元表示微生物遗传序列时,相同的碱基单元在同一条病毒基因中重复出现的次数越多;同理,取值越大,同一长度下的碱基单元的种类就越多,但是部分碱基单元在表示数据库全部病毒基因的过程中,自始至终都没有被用到过。
在对本实例采用的数据进行如下分析:取特定长度的多碱基单元,每个碱基位置有四种选择,获得其全部的排列组合构成的多碱基单元集合;对本地数据库所用的微生物遗传序列进行同样长度的碱基的分割,用多碱基单元集合的成员对本地数据库所用微生物遗传序列进行表示。以Vir_61数据集中的数据为例,当多碱基单元长度的取值分别在2到8之间时,将Vir_61数据集中全部病毒基因用碱基单元表示,需要用到全部的碱基单元。而当K的取值大于8时,就有部分的碱基单元始终不会被用于表示病毒基因。因此,通过对数据集中的数据分析后得出,当多碱基单元长度的取值在2到8之间时,将本地数据库中全部病毒基因用多碱基单元表示,需要用到全部的多碱基单元。而当多碱基单元长度的取值大于等于9时,由于多碱基单元集合较大,有部分的碱基单元始终不会在本地数据库遗传序列表示过程中被使用。
因此,在本发明的实施例中,多碱基单元长度的上限值和下限值分别为3和8,使用长度为3到8之间的所有碱基单元来表示数据库中的微生物遗传序列数据,具体包括以下步骤。
S32、基于多碱基单元长度的上限值和下限值构建可变长的滑动窗口。其中滑动窗口长度的随机数范围在多碱基单元长度的上限值和下限值之间;
S33,使用可变长的滑动窗口依次截取微生物遗传序列数据的碱基片段,从而得到长度为3到8之间的多个碱基单元,实现了多个碱基单元表示预处理后的数据库中的微生物遗传序列,即所有碱基单元的向量化表示。
在本发明的一个实施例中,对本地数据库每一条基因序列都使用长度为3到8之间的随机数的可变长的滑动窗口,以大小为1步长向前滑动,依次获取窗口内截取的碱基片段。以图4所示的经过预处理后的数据库中微生物遗传序列数据的碱基片段为“CTGTACCAGT”为例,使用长度为3-8之间的滑动窗口,对滑动窗口长度的随机数取值按照均匀分布的采样方式,同等概率地从3到8之间随机取值,这样就可以同时得到长度为3到8之间的所有碱基单元的向量化表示。其中,第一个滑动窗口的长度为4,因此得到的碱基单元表示为“CTGT”,第二个滑动窗口,长度为7,以大小为1步长向前滑动,得到的碱基单元表示为“TGTACCA”。因此,对碱基片段为“CTGTACCAGT”多碱基表示为“CTGA”、“TATACCA”、“GTACC”、“TAC”、“ACCAGTA”、“CAG”和“CAGT”。
其中,可变的滑动窗口的长度为随机数,随机数取值按照均匀分布的采样方式,同等概率地从3到8之间随机取值,这样就可以同时得到长度为3到8之间的所有碱基单元的向量化表示。
S4、基于多碱基单元构建分别用于预训练任务的预训练数据集和用于分类任务的分类数据集。
其中预训练任务用于训练深度学习模型得到预训练模型,分类任务用于微调预训练模型从而得到预测模型。
在本发明的一个实施中,将预处理后的所有的微生物遗传序列数据均采用多碱基单元表示完成后,将三个数据集内的数据分别随机打乱顺序,从而避免深度学习模型因为连续学习同样的类别的基因数据而导致的模式固化,因此,将三个数据集内的数据打乱顺序可以增加模型的健壮性。使用Vir_61和Probio651数据集的数据来执行预训练任务训练得到预训练模型,Probio212数据集则用于微调预训练模型得到预测模型,从而执行微生物遗传序列表型预测任务。
需要说明的是,Vir_61和Probio651为两个具有典型性的大规模数据集,在适应不同任务时,所选择的预训练数据集可选择其他大规模微生物遗传序列数据集。其选择标准一般为数据规模大,数据覆盖的微生物类型多样,且与预测任务所用微生物有相关性。
在本发明的一个实施例中,将用于执行预训练任务和分类任务的数据集分别按照数据总量为“训练集:验证集:测试集=7:2:1”的比例划分为训练集、验证集和测试集,分别保存为对应的CSV文件。
S5、构建深度学习模型,并将预训练数据集向量化后输入至深度学习模型进行训练从而得到预训练模型。
S51、将预训练数据集的所有多碱基单元进行独热码向量化。
多碱基单元是由一系列连续的碱基排列组合而成的字符。根据其中参与排列组合的碱基数量的不同,多碱基单元的长度和种类也会有所不同。为了更方便的使用和处理多碱基单元,我们需要先将它们按照长度分类,并按照长度从短到长的顺序记录在一个文件中,同时为每个多碱基单元赋予一个序号,作为多碱基单元词典。
在本发明的一个实施例中,多碱基单元长度上限为8,下限为3。因此,因此多碱基单元排序得到的多碱基单元词典中共有87360条记录。每一个多碱基单元都有一个大小介于0-87359之间的序号。根据它们的序号分别构造出一个维度为87360的独热向量,最后采用独热向量来替换多碱基单元,而由多碱基单元构成的文本形式的各数据集就转换为由向量构成的数据集。
S52、构建深度学习模型,并将独热码向量化后的多碱基单元构建训练DNA子序列;
预训练模型所能接受的输入数据的长度是有限的,将一条完整的采用独热码向量化后的基因数据输入模型,会导致参数量过大,因此需要将完整的向量化后的基因数据切分成若干小的数据片段。然而,不同的长度数据片段也会对模型训练产生影响。为了保证切分得到的数据片段真实有效,对每一条输入数据都按照长度为250的标准进行数据片段的切分。其中,数据片段的长度可根据实际进行调整,250为遗传序列测序时常用的基本单元。
通常,位于原始数据末尾处最后一个数据片段的长度不够250,对于这一类数据则直接丢弃即可,使用切分后的较短的数据片段即训练DNA子序列作为模型的真正输入数据来训练预训练模型。
其中,深度学习模型的网络结构由多层Transformer编码器组成。每个编码器包含多头自注意力机制和前向神经网络。
S53,将训练DNA子序列输入至深度学习模型进行预训练任务,从而得到预训练模型。
其中,预训练任务包括掩码语言模型MLM和下一句预测NSP。
MLM,深度学习模型在预训练任务的训练集即输入的DNA序列中随机选择一些位置,将这些位置的碱基替换为预设的特殊的[MASK]符号,通过深度学习模型预测被掩码的碱基。
NSP,深度学习模型随机选择两个DNA序列,判断两个DNA序列是否是相邻的两个句子,从而判断两个DNA序列的关系。若两个DNA序列相邻,则表示为同一个物种的不同个体,不相邻就是不同物种的生物。其中,每个DNA序列对应一个句子。
通过预训练任务让深度学习模型学习到DNA序列的上下文信息和语言规律。
预训练训练集,独热码向量化后的训练DNA子序列,首先经过深度学习模型的卷积层,然后再经过多头自注意力机制和前向神经网络进行编码。具体地,卷积层可以学习局部的DNA子序列的序列特征,从而提高预训练模型的感知能力;自注意力机制则可以来学习全局DNA子序列的序列特征,从而提高深度学习模型的表现。
将运行预训练任务得到的效果最佳的深度学习模型作为预训练模型保存在本地,即MLM和NSP两项预训练任务中,预测准确率最高的模型,即为效果最佳的模型。
S6、调整预训练模型结构,将分类数据集向量化后输入至调整后的预训练模型进行训练从而得到预测模型。
S61、将分类数据集的所有多碱基单元进行独热码向量化并构建分类子序列。
在本发明的一个实施例中,与训练数据集中的所有多碱基单元向量化类似,将分类数据集内的所有多碱基单元,采用独热向量来替换,由多碱基单元构成的文本形式的各数据集就转换为由向量构成的数据集。并将构造出的独热向量按照预设长度进行数据片段的切分。
S62、调整预训练模型的网络结构。
在预训练模型的末尾拼接全连接层来实现微生物遗传序列表型的分类预测功能。
在本实例中,需要通过菌种的遗传序列来判断它是否是益生菌,属于二分类任务。即在预训练模型的末尾添加了一个全连接层,并将全连接层的输出的维度设置为2。
S63,将分类子序列输入至调整后的预训练模型中,并基于交叉熵损失函数进行训练,从而得到预测模型。
在微调过程中,本实例将调整后的预训练模型的输出连接到新添加的全连接层,然后通过交叉熵损失函数来训练调整后的预训练模型。在训练过程中,模型的参数会被优化以最小化损失函数,并且全连接层的参数也会被训练。
本实例将微生物遗传序列作为输入,并使用微调后的预训练模型作为预测模型进行预测。预测模型将输出一个2维向量,其中每个元素表示该序列属于每个分类的概率。
S7、将待预测微生物遗传序列输入至预测模型,从而得到待预测微生物遗传序列的表型的预测结果。
预测模型将输出一个2维向量通过Softmax激活函数计算后,可以选择概率最高的分类作为预测结果。
在本发明的一个实施例中,微调预训练模型的Probio212数据集,包含15种益生菌和57种非益生菌。因此,输入细菌的基因序列至微调后的预训练模型,从而可以实现根据细菌的基因序列来判断该细菌是属于益生菌还是非益生菌的一个二分类任务。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明的设施可借助软件加必需的通用硬件平台的方式来实现。本发明的实施例可以使用现有的处理器来实现,或者由被用于此目的或其他目的用于适当系统的专用处理器来实现,或者由硬接线系统来实现。本发明的实施例还包括非暂态计算机可读存储介质,其包括用于承载或具有存储在其上的机器可执行指令或数据结构的机器可读介质;这种机器可读介质可以是可由通用或专用计算机或具有处理器的其他机器访问的任何可用介质。举例来说,这种机器可读介质可以包括RAM、ROM、EPROM、EEPROM、CD-ROM或其他光盘存储器、磁盘存储器或其他磁存储设备,或任何其他可用于以机器可执行指令或数据结构的形式携带或存储所需的程序代码,并可被由通用或专用计算机或其它带有处理器的机器访问的介质。当信息通过网络或其他通信连接(硬接线、无线或硬接线或无线的组合)传输或提供给机器时,该连接也被视为机器可读介质。
依据本发明的描述及附图,本领域技术人员很容易制造或使用本发明的一种基于预训练模型的微生物遗传序列表型预测方法,并且能够产生本发明所记载的积极效果。
以上所述,仅是本发明的较佳实施例,并非对本发明做任何形式上的限制,凡是依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化,均落入本发明的保护范围之内。
Claims (9)
1.一种基于预训练模型的微生物遗传序列表型预测方法,其特征在于,包括以下步骤:
S1,获取所需微生物遗传序列数据并对其进行存储,以及对存储的数据进行处理从而得到包括所有所需微生物遗传序列数据的数据库,所述数据库至少包括用于预训练任务的大规模数据集和用于预测任务的的数据集;
S2,遍历数据库中的微生物遗传序列数据,并基于预设规则对数据库中的微生物遗传序列数据进行分析和预处理;
S3,采用多碱基单元表示数据库中预处理后的微生物遗传序列,具体包括:
S31,分析数据库中的数据集,确定多碱基单元长度的上限值和下限值,得到基于上限值和下限值的全部排列组合构成的多碱基单元集合;
S32,基于多碱基单元长度的上限值和下限值构建可变长的滑动窗口;
S33,基于可变长的滑动窗口依次截取数据库中预处理后的微生物遗传序列数据的碱基片段,从而得到长度在上限值和下限值之间的多个碱基单元;
S4,基于多碱基单元构建分别用于预训练任务的预训练数据集和用于分类任务的分类数据集;
S5,构建深度学习模型,并将预训练数据集向量化后输入至深度学习模型进行训练从而得到预训练模型;
S6,调整预训练模型结构增加全连接层,将分类数据集向量化后输入至调整后的预训练模型进行训练从而得到预测模型;
S7,将待预测微生物遗传序列输入至预测模型,从而得到待预测微生物遗传序列的表型的预测结果。
2.根据权利要求1所述的一种基于预训练模型的微生物遗传序列表型预测方法,其特征在于,所述对存储的数据进行处理从而得到包括所有所需微生物遗传序列数据的数据库,具体包括:
S11、读取存储微生物遗传序列数据的FASTA文件,将FASTA文件中包括的全部微生物遗传序列数据按照预设格式存储到同一个表格中;
S12、若同样的微生物遗传序列数据出现若干次,则仅保留一次微生物遗传序列数据,从而得到包括全部所需微生物遗传序列数据的数据库;
S13、将数据库保存为CSV格式的文件。
3.根据权利要求1所述的一种基于预训练模型的微生物遗传序列表型预测方法,其特征在于,所述基于预设规则对数据库中的微生物遗传序列数据进行分析和预处理,具体包括:
S21、分析微生物遗传序列数据是否包括单个混合碱基N;
S22、若任意一条微生物遗传序列数据包括单个混合碱基N,且单个混合碱基N的前后碱基都是正常碱基,则用碱基A、T、C、G中的任意一个随机替代混合碱基N;
S23,若任意一条微生物遗传序列数据包括的连续混合碱基N的个数大于等于2,则在数据库中删除对应的连续混合碱基N。
4.根据权利要求1所述的一种基于预训练模型的微生物遗传序列表型预测方法,其特征在于,所述深度学习模型的网络结构至少包括多层Transformer编码器,每层编码器至少包括多头自注意力机制和前向神经网络。
5.根据权利要求4所述的一种基于预训练模型的微生物遗传序列表型预测方法,其特征在于,所述预训练数据集向量化后输入至深度学习模型进行训练从而得到预训练模型,具体包括:
S51,将预训练数据集的所有多碱基单元进行独热码向量化;
S52,将独热码向量化后的多碱基单元构建训练DNA子序列;
S53,将训练DNA子序列输入至深度学习模型进行预训练任务,从而得到预训练模型。
6.根据权利要求5所述的一种基于预训练模型的微生物遗传序列表型预测方法,其特征在于,所述预训练任务包括掩码语言模型和下一句预测,其中,掩码语言模型具体包括:
S531,对预训练数据集中的预训练训练集中的数据随机选择若干位置;
S532,将若干位置对应的碱基替换为预设符号进行掩码;
S533,通过深度学习模型预测被掩码的碱基。
7.根据权利要求6所述的一种基于预训练模型的微生物遗传序列表型预测方法,其特征在于,所述下一句预测包括通过深度学习模型随机选择预训练数据集中的预训练训练集的两个DNA序列,并判断两个DNA序列是否是相邻的两个句子,从而得到两个DNA序列的关系。
8.根据权利要求6所述的一种基于预训练模型的微生物遗传序列表型预测方法,其特征在于,所述深度学习模型还包括卷积层,所述训练DNA子序列输入至卷积层学习局部的DNA子序列的序列特征,再经过多头自注意力机制和前向神经网络进行编码学习全局DNA子序列的序列特征。
9.根据权利要求5所述的一种基于预训练模型的微生物遗传序列表型预测方法,其特征在于,所述调整预训练模型结构增加全连接层,将分类数据集向量化后输入至调整后的预训练模型进行训练从而得到预测模型,具体包括:
S61, 将分类数据集的所有多碱基单元进行独热码向量化并构建分类子序列;
S62, 调整预训练模型网络结构;
S63,将分类子序列输入至调整后的预训练模型中,并基于交叉熵损失函数进行训练,从而得到预测模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310520356.7A CN116364195B (zh) | 2023-05-10 | 2023-05-10 | 一种基于预训练模型的微生物遗传序列表型预测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310520356.7A CN116364195B (zh) | 2023-05-10 | 2023-05-10 | 一种基于预训练模型的微生物遗传序列表型预测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116364195A CN116364195A (zh) | 2023-06-30 |
CN116364195B true CN116364195B (zh) | 2023-10-13 |
Family
ID=86905238
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310520356.7A Active CN116364195B (zh) | 2023-05-10 | 2023-05-10 | 一种基于预训练模型的微生物遗传序列表型预测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116364195B (zh) |
Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102021153A (zh) * | 1996-10-01 | 2011-04-20 | 杰龙公司 | 人类的端粒酶催化亚单位 |
CN105986008A (zh) * | 2015-01-27 | 2016-10-05 | 深圳华大基因科技有限公司 | Cnv检测方法和装置 |
CN106919808A (zh) * | 2017-02-28 | 2017-07-04 | 哈尔滨工业大学深圳研究生院 | 基于变步长最小均方误差自适应滤波器的基因识别系统 |
CN107075564A (zh) * | 2014-12-10 | 2017-08-18 | 深圳华大基因研究院 | 确定肿瘤核酸浓度的方法和装置 |
CN109903812A (zh) * | 2019-02-22 | 2019-06-18 | 哈尔滨工业大学(深圳) | 一种基于信息熵的基因序列数字化实现方法及系统 |
CN112037858A (zh) * | 2020-08-20 | 2020-12-04 | 安徽农业大学 | 一种确定植物主要病原菌的方法及应用 |
CN112195238A (zh) * | 2020-11-18 | 2021-01-08 | 上海韦翰斯生物医药科技有限公司 | 一种扩增pkd1基因的引物组及试剂盒 |
CN113268610A (zh) * | 2021-06-22 | 2021-08-17 | 中国平安人寿保险股份有限公司 | 基于知识图谱的意图跳转方法、装置、设备及存储介质 |
WO2021169288A1 (zh) * | 2020-02-26 | 2021-09-02 | 平安科技(深圳)有限公司 | 语义理解模型训练方法、装置、计算机设备和存储介质 |
CN113707220A (zh) * | 2021-08-27 | 2021-11-26 | 云测医学科技(深圳)有限公司 | 一种基于碱基序列匹配分组的免疫细胞受体转录组多样性检测多重引物智能选择方法 |
CN113936738A (zh) * | 2021-12-14 | 2022-01-14 | 鲁东大学 | 一种基于深度卷积神经网络的rna-蛋白质结合位点预测方法 |
CN114237582A (zh) * | 2021-12-17 | 2022-03-25 | 平安证券股份有限公司 | 项目构建方法、装置、介质及电子设备 |
CN114881131A (zh) * | 2022-04-26 | 2022-08-09 | 浙大城市学院 | 一种生物序列处理和模型训练方法 |
CN115202640A (zh) * | 2022-07-26 | 2022-10-18 | 上海交通大学 | 基于自然语义理解的代码生成方法及系统 |
CN115514375A (zh) * | 2022-11-18 | 2022-12-23 | 江苏网进科技股份有限公司 | 一种缓存数据压缩方法 |
CN115579068A (zh) * | 2022-08-31 | 2023-01-06 | 吉林大学 | 一种基于预训练和深度聚类的宏基因组物种重建方法 |
CN116013428A (zh) * | 2023-02-10 | 2023-04-25 | 中南大学 | 基于自监督学习的药物靶标通用预测方法、设备及介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3530842B2 (ja) * | 2001-11-19 | 2004-05-24 | 株式会社日立製作所 | 核酸塩基配列アセンブル装置及びその動作方法 |
TWI783699B (zh) * | 2021-02-09 | 2022-11-11 | 國立臺灣大學 | 一種判別源自不同個體之基因的方法及其深度學習模型 |
-
2023
- 2023-05-10 CN CN202310520356.7A patent/CN116364195B/zh active Active
Patent Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102021153A (zh) * | 1996-10-01 | 2011-04-20 | 杰龙公司 | 人类的端粒酶催化亚单位 |
CN107075564A (zh) * | 2014-12-10 | 2017-08-18 | 深圳华大基因研究院 | 确定肿瘤核酸浓度的方法和装置 |
CN105986008A (zh) * | 2015-01-27 | 2016-10-05 | 深圳华大基因科技有限公司 | Cnv检测方法和装置 |
CN106919808A (zh) * | 2017-02-28 | 2017-07-04 | 哈尔滨工业大学深圳研究生院 | 基于变步长最小均方误差自适应滤波器的基因识别系统 |
CN109903812A (zh) * | 2019-02-22 | 2019-06-18 | 哈尔滨工业大学(深圳) | 一种基于信息熵的基因序列数字化实现方法及系统 |
WO2021169288A1 (zh) * | 2020-02-26 | 2021-09-02 | 平安科技(深圳)有限公司 | 语义理解模型训练方法、装置、计算机设备和存储介质 |
CN112037858A (zh) * | 2020-08-20 | 2020-12-04 | 安徽农业大学 | 一种确定植物主要病原菌的方法及应用 |
CN112195238A (zh) * | 2020-11-18 | 2021-01-08 | 上海韦翰斯生物医药科技有限公司 | 一种扩增pkd1基因的引物组及试剂盒 |
CN113268610A (zh) * | 2021-06-22 | 2021-08-17 | 中国平安人寿保险股份有限公司 | 基于知识图谱的意图跳转方法、装置、设备及存储介质 |
CN113707220A (zh) * | 2021-08-27 | 2021-11-26 | 云测医学科技(深圳)有限公司 | 一种基于碱基序列匹配分组的免疫细胞受体转录组多样性检测多重引物智能选择方法 |
CN113936738A (zh) * | 2021-12-14 | 2022-01-14 | 鲁东大学 | 一种基于深度卷积神经网络的rna-蛋白质结合位点预测方法 |
CN114237582A (zh) * | 2021-12-17 | 2022-03-25 | 平安证券股份有限公司 | 项目构建方法、装置、介质及电子设备 |
CN114881131A (zh) * | 2022-04-26 | 2022-08-09 | 浙大城市学院 | 一种生物序列处理和模型训练方法 |
CN115202640A (zh) * | 2022-07-26 | 2022-10-18 | 上海交通大学 | 基于自然语义理解的代码生成方法及系统 |
CN115579068A (zh) * | 2022-08-31 | 2023-01-06 | 吉林大学 | 一种基于预训练和深度聚类的宏基因组物种重建方法 |
CN115514375A (zh) * | 2022-11-18 | 2022-12-23 | 江苏网进科技股份有限公司 | 一种缓存数据压缩方法 |
CN116013428A (zh) * | 2023-02-10 | 2023-04-25 | 中南大学 | 基于自监督学习的药物靶标通用预测方法、设备及介质 |
Non-Patent Citations (3)
Title |
---|
An effective SNR gene prediction algorithm based on merge of nucleotide segments (MNS);Jiuqiang Han等;2013 9th Asian Control Conference (ASCC);1-6 * |
基于深度学习的基因拷贝数变异检测方法研究;丁淼森;中国优秀硕士学位论文全文数据库 医药卫生科技辑;2021年(2);E060-677 * |
基于遗传神经网络的启动子识别系统;熊清;王远强;李志良;;生物医学工程学杂志(04);730-733 * |
Also Published As
Publication number | Publication date |
---|---|
CN116364195A (zh) | 2023-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Steinegger et al. | Protein-level assembly increases protein sequence recovery from metagenomic samples manyfold | |
CN111798921B (zh) | 一种基于多尺度注意力卷积神经网络的rna结合蛋白预测方法及装置 | |
CN107622182B (zh) | 蛋白质局部结构特征的预测方法及系统 | |
Bonzo et al. | Clustering panel data via perturbed adaptive simulated annealing and genetic algorithms | |
CN114420212B (zh) | 一种大肠杆菌菌株鉴定方法和系统 | |
CN113505225B (zh) | 一种基于多层注意力机制的小样本医疗关系分类方法 | |
CN112599187B (zh) | 一种基于双流神经网络预测药物与靶标蛋白结合分数的方法 | |
De Waele et al. | CpG Transformer for imputation of single-cell methylomes | |
CN112580483B (zh) | 一种基于粗糙模糊模型的遥感影像特征离散化方法 | |
CN114420211A (zh) | 一种基于注意力机制的rna-蛋白质结合位点预测方法 | |
CN111276187A (zh) | 一种基于自编码器的基因表达谱特征学习方法 | |
CN115472221A (zh) | 一种基于深度学习的蛋白质适应度预测方法 | |
Downey et al. | alineR: An R package for optimizing feature-weighted alignments and linguistic distances | |
Yuan et al. | DeCban: prediction of circRNA-RBP interaction sites by using double embeddings and cross-branch attention networks | |
Alam et al. | Short k-mer abundance profiles yield robust machine learning features and accurate classifiers for RNA viruses | |
CN115579068A (zh) | 一种基于预训练和深度聚类的宏基因组物种重建方法 | |
Nabi et al. | Discovering misannotated lncRNAs using deep learning training dynamics | |
CN116364195B (zh) | 一种基于预训练模型的微生物遗传序列表型预测方法 | |
CN115836350A (zh) | 用于确定新抗原的呈递可能性的方法、系统和计算机程序产品 | |
Huang et al. | An attention-based neural network basecaller for Oxford Nanopore sequencing data | |
Gupta et al. | DAVI: Deep learning-based tool for alignment and single nucleotide variant identification | |
CN114566215B (zh) | 一种双端成对的剪接位点预测方法 | |
CN116153396A (zh) | 一种基于迁移学习的非编码变异预测方法 | |
Al-Barhamtoshy et al. | DNA sequence error corrections based on TensorFlow | |
CN118136113A (zh) | 一种基于快速预训练模型的生物序列分类方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |