CN112437961A - 机器学习使能的生物聚合物组装 - Google Patents
机器学习使能的生物聚合物组装 Download PDFInfo
- Publication number
- CN112437961A CN112437961A CN201980047341.5A CN201980047341A CN112437961A CN 112437961 A CN112437961 A CN 112437961A CN 201980047341 A CN201980047341 A CN 201980047341A CN 112437961 A CN112437961 A CN 112437961A
- Authority
- CN
- China
- Prior art keywords
- assembly
- nucleotide
- learning model
- locations
- biopolymer
- 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.)
- Pending
Links
- 229920001222 biopolymer Polymers 0.000 title claims abstract description 208
- 238000010801 machine learning Methods 0.000 title abstract description 212
- 238000012163 sequencing technique Methods 0.000 claims abstract description 187
- 238000000034 method Methods 0.000 claims abstract description 150
- 108090000623 proteins and genes Proteins 0.000 claims abstract description 73
- 230000000712 assembly Effects 0.000 claims abstract description 72
- 238000000429 assembly Methods 0.000 claims abstract description 72
- 102000004169 proteins and genes Human genes 0.000 claims abstract description 62
- 125000003275 alpha amino acid group Chemical group 0.000 claims abstract description 27
- 239000002773 nucleotide Substances 0.000 claims description 298
- 125000003729 nucleotide group Chemical group 0.000 claims description 298
- 108091028043 Nucleic acid sequence Proteins 0.000 claims description 143
- 238000012549 training Methods 0.000 claims description 128
- 238000013136 deep learning model Methods 0.000 claims description 102
- 229920002521 macromolecule Polymers 0.000 claims description 64
- 150000001413 amino acids Chemical class 0.000 claims description 44
- 238000013527 convolutional neural network Methods 0.000 claims description 23
- 102000039446 nucleic acids Human genes 0.000 claims description 22
- 108020004707 nucleic acids Proteins 0.000 claims description 22
- 150000007523 nucleic acids Chemical class 0.000 claims description 22
- 108091035707 Consensus sequence Proteins 0.000 claims description 9
- RWQNBRDOKXIBIV-UHFFFAOYSA-N thymine Chemical compound CC1=CNC(=O)NC1=O RWQNBRDOKXIBIV-UHFFFAOYSA-N 0.000 description 47
- 230000008569 process Effects 0.000 description 41
- OPTASPLRGRRNAP-UHFFFAOYSA-N cytosine Chemical compound NC=1C=CNC(=O)N=1 OPTASPLRGRRNAP-UHFFFAOYSA-N 0.000 description 40
- UYTPUPDQBNUYGX-UHFFFAOYSA-N guanine Chemical compound O=C1NC(N)=NC2=C1N=CN2 UYTPUPDQBNUYGX-UHFFFAOYSA-N 0.000 description 35
- GFFGJBXGBJISGV-UHFFFAOYSA-N Adenine Chemical compound NC1=NC=NC2=C1N=CN2 GFFGJBXGBJISGV-UHFFFAOYSA-N 0.000 description 24
- 229930024421 Adenine Natural products 0.000 description 24
- 229960000643 adenine Drugs 0.000 description 24
- 239000000523 sample Substances 0.000 description 24
- 108020004414 DNA Proteins 0.000 description 23
- 102000053602 DNA Human genes 0.000 description 23
- 229940113082 thymine Drugs 0.000 description 23
- 229940104302 cytosine Drugs 0.000 description 20
- 230000006870 function Effects 0.000 description 16
- 238000013500 data storage Methods 0.000 description 14
- 238000013528 artificial neural network Methods 0.000 description 11
- 230000004044 response Effects 0.000 description 10
- 229920002477 rna polymer Polymers 0.000 description 10
- 108090000765 processed proteins & peptides Proteins 0.000 description 9
- 238000007671 third-generation sequencing Methods 0.000 description 8
- 239000011159 matrix material Substances 0.000 description 7
- 239000012472 biological sample Substances 0.000 description 6
- 238000004590 computer program Methods 0.000 description 6
- 239000003153 chemical reaction reagent Substances 0.000 description 5
- 238000012937 correction Methods 0.000 description 5
- 239000012634 fragment Substances 0.000 description 5
- 239000003550 marker Substances 0.000 description 5
- 102000004196 processed proteins & peptides Human genes 0.000 description 5
- 238000012706 support-vector machine Methods 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 241000588724 Escherichia coli Species 0.000 description 3
- 230000004913 activation Effects 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000003064 k means clustering Methods 0.000 description 3
- 238000011176 pooling Methods 0.000 description 3
- 238000000734 protein sequencing Methods 0.000 description 3
- 240000004808 Saccharomyces cerevisiae Species 0.000 description 2
- 235000014680 Saccharomyces cerevisiae Nutrition 0.000 description 2
- ISAKRJDGNUQOIC-UHFFFAOYSA-N Uracil Chemical compound O=C1C=CNC(=O)N1 ISAKRJDGNUQOIC-UHFFFAOYSA-N 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 238000003786 synthesis reaction Methods 0.000 description 2
- 241000894006 Bacteria Species 0.000 description 1
- 102000016928 DNA-directed DNA polymerase Human genes 0.000 description 1
- 108010014303 DNA-directed DNA polymerase Proteins 0.000 description 1
- 102000003960 Ligases Human genes 0.000 description 1
- 108090000364 Ligases Proteins 0.000 description 1
- 108091005461 Nucleic proteins Proteins 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000004138 cluster model Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010348 incorporation Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 238000007481 next generation sequencing Methods 0.000 description 1
- 230000037452 priming Effects 0.000 description 1
- 238000012175 pyrosequencing Methods 0.000 description 1
- 238000007480 sanger sequencing Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 241000894007 species Species 0.000 description 1
- 238000004885 tandem mass spectrometry Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000009482 thermal adhesion granulation Methods 0.000 description 1
- 229940035893 uracil Drugs 0.000 description 1
Images
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
- G16B40/00—ICT specially adapted for biostatistics; ICT specially adapted for bioinformatics-related machine learning or data mining, e.g. knowledge discovery or pattern finding
-
- 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
- G16B40/00—ICT specially adapted for biostatistics; ICT specially adapted for bioinformatics-related machine learning or data mining, e.g. knowledge discovery or pattern finding
- G16B40/20—Supervised data analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- 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
- G16B15/00—ICT specially adapted for analysing two-dimensional or three-dimensional molecular structures, e.g. structural or functional relations or structure alignment
-
- 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
-
- 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
- G16B30/10—Sequence alignment; Homology search
-
- 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
- G16B30/20—Sequence assembly
-
- 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
- G16B40/00—ICT specially adapted for biostatistics; ICT specially adapted for bioinformatics-related machine learning or data mining, e.g. knowledge discovery or pattern finding
- G16B40/30—Unsupervised data analysis
-
- 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
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Theoretical Computer Science (AREA)
- Medical Informatics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- General Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Biotechnology (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Chemical & Material Sciences (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Bioethics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Proteomics, Peptides & Aminoacids (AREA)
- Analytical Chemistry (AREA)
- Epidemiology (AREA)
- Public Health (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Crystallography & Structural Chemistry (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Biomedical Technology (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Measuring Or Testing Involving Enzymes Or Micro-Organisms (AREA)
- Apparatus Associated With Microorganisms And Enzymes (AREA)
- Addition Polymer Or Copolymer, Post-Treatments, Or Chemical Modifications (AREA)
Abstract
描述了用于生成高分子的生物聚合物组装的机器学习技术。例如,系统可以使用机器学习技术来生成有机体DNA的基因组组装、有机体DNA的一部分的基因序列或蛋白质的氨基酸序列。所述系统可以访问由测序装置生成的生物聚合物序列和从所述序列生成的组装。所述系统可使用所述序列和所述组装生成机器学习模型的输入。所述系统可将所述输入提供给所述机器学习模型,以获得相应的输出。所述系统可以使用所述相应的输出来标识所述组装中的位置处的生物聚合物。并且随后更新所述组装,以在所述组装中的所述位置处指示所标识的生物聚合物,以获得更新的组装。
Description
相关申请的交叉引用
本申请根据美国法典第35条第119款的规定要求享有于2018年05月14日提交的题为“DEEP LEARNING MODEL TO IMPROVE SPEED AND ACCURACY OF GENOME ASSEMBLY”的美国临时申请No.62/671,260,以及2018年05月15日提交的题为“DEEP LEARNING MODEL TOIMPROVE SPEED AND ACCURACY OF GENOME ASSEMBLY”的美国临时申请No.62/671,884的权益,其全部内容通过引用并入在本文中。
背景技术
本公开涉及生成高分子(例如,核酸或蛋白质)的生物聚合物(例如,基因组组装、核苷酸序列或蛋白质序列)的组装。测序装置可以生成可用于生成组装的测序数据。作为一个示例,测序数据可包含来自生物样本的脱氧核糖核酸(DNA)的核苷酸序列,该核苷酸序列可以用于组装(整个或部分)基因组。作为另一示例,测序数据可包含氨基酸序列,该氨基酸序列可用于组装(整个或部分)蛋白质序列。
发明内容
根据一个方面,提供了一种生成高分子的生物聚合物组装的方法。该方法包括:使用至少一个计算机硬件处理器来执行;访问多个生物聚合物序列和组装,所述组装指示存在于相应组装位置处的生物聚合物;使用多个生物聚合物序列和组装生成要提供给经训练的深度学习模型的第一输入;将第一输入提供给经训练的深度学习模型以获得相应的第一输出,针对多个第一组装位置中的每一个组装位置,第一输出指示一个或多个相应生物聚合物中的每个生物聚合物存在于该位置处的一个或多个可能性;使用经训练的深度学习模型的第一输出在多个第一组装位置处标识生物聚合物;以及更新组装以在多个第一组装位置处指示所标识的生物聚合物,以获得更新的组装。
根据一个实施例,高分子包含蛋白质,多个生物聚合物序列包含多个氨基酸序列,并且组装在相应组装位置处指示氨基酸。
根据一个实施例,高分子包含核酸,多个生物聚合物序列包含多个核苷酸序列,并且组装在相应组装位置处指示核苷酸。
根据一个实施例,组装在多个第一组装位置的第一个处指示第一核苷酸;在多个第一组装位置处标识生物聚合物包括在第一组装位置处标识第二核苷酸;并且更新组装包括更新组装以在第一组装位置处指示第二核苷酸。
根据一个实施例,该方法还包括,在更新组装以获得更新的组装之后:将多个核苷酸序列与更新的组装比对;使用多个核苷酸序列和更新的组装生成要提供给经训练的深度学习模型的第二输入;将第二输入提供给经训练的深度学习模型以获得相应的第二输出,针对多个第二组装位置的每一个组装位置,第二输出指示一个或多个相应核苷酸中的每一个核苷酸存在于该位置处的一种或多种可能性;基于经训练的深度学习模型的第二输出,在多个第二组装位置处标识核苷酸;以及更新所述更新的组装以在多个第二组装位置处指示所标识的核苷酸,以获得第二更新的组装。
根据一个实施例,该方法还包括将多个核苷酸序列与组装比对。根据一个实施例,多个核苷酸序列包含至少5个核苷酸序列。根据一个实施例,多个核苷酸序列包含至少9个核苷酸序列。根据一个实施例,多个核苷酸序列包含至少10个核苷酸序列。
根据一个实施例,生成经训练的深度学习模型的第一输入包括:选择多个第一组装位置;以及基于所选择的多个第一组装位置生成第一输入。根据一个实施例,在组装中选择多个第一位置包括:确定在多个第一组装位置组装错误地指示核苷酸的可能性;以及使用所确定的可能性来选择多个第一组装位置。
根据一个实施例,生成要提供给经训练的深度学习模型的第一输入包括将多个核苷酸序列中的相应核苷酸序列与组装进行比较。根据一个实施例,生成要提供给经训练的深度学习模型第一输入以在多个第一组装位置的第一个处标识核苷酸包括:针对在第一组装位置的邻域中的一个或多个组装位置的每一个处的多个核苷酸的每一个:确定指示多个核苷酸序列的数量的计数,所述序列指示核苷酸在该位置处;基于组装是否在该位置处指示所述核苷酸来确定参考值;确定指示计数与参考值之差的误差值;以及将参考值和误差值包括在第一输入中。
根据一个实施例,基于组装是否在该位置处指示所述核苷酸来确定参考值包括:当组装在该位置处指示所述核苷酸时,确定参考值为第一值;以及当组装在该位置处的不指示所述核苷酸时,确定参考值为第二值。根据一个实施例,第一值是所述多个核苷酸序列的数量;第二值为0。
根据一个实施例,生成要提供给经训练的深度学习模型的第一输入包括将值布置到具有列的数据结构中,其中:第一列保存针对第一组装位置处的多个核苷酸确定的参考值和误差值;第二列保存针对第一组装位置的邻域中的一个或多个组装位置中的第二组装位置处的多个核苷酸的参考值和误差值。根据一个实施例,在第一组装位置的邻域中的一个或多个组装位置包括与第一组装位置分开的至少两个组装位置。
根据一个实施例,针对多个核苷酸中的每一个,一个或多个相应生物聚合物中的每一个存在于组装位置处的一个或多个可能性包括:所述核苷酸存在于所述组装位置处的可能性;并且在多个第一组装位置处标识生物聚合物包括:通过确定第一核苷酸存在于第一位置处的可能性大于多个核苷酸中的第二个存在于第一组装位置处的可能性,将多个第一组装位置的第一个处的核苷酸标识为多个核苷酸的第一个核苷酸。
根据一个实施例,该方法还包括从多个核苷酸序列生成组装。根据一个实施例,从多个核苷酸序列生成组装包括将来自多个核苷酸序列的一致序列(consensus sequence)确定为组装。根据一个实施例,从多个核苷酸序列生成组装包括对多个核苷酸序列应用先重叠后扩展(overlap layout consensus,OLC)算法。
根据一个实施例,该方法还包括:访问训练数据,所述训练数据包括从对参考高分子的测序获得的生物聚合物序列和参考高分子的预定组装;以及使用训练数据来训练深度学习模型,以获得经训练的深度学习模型。根据一个实施例,参考高分子不同于所述高分子。根据一个实施例,深度学习模型包括卷积神经网络(CNN)。
根据另一个方面,提供了一种用于生成高分子的生物聚合物组装的系统。该系统包括:至少一个计算机硬件处理器;以及存储指令的至少一个非暂态计算机可读存储介质,所述指令在由至少一个计算机硬件处理器执行时,使至少一个计算机硬件处理器执行:访问多个生物聚合物序列和组装,所述组装指示生物聚合物存在于相应组装位置处;使用多个生物聚合物序列和组装生成要提供给经训练的深度学习模型的第一输入;将第一输入提供给经训练的深度学习模型以获得相应的第一输出,针对多个第一组装位置中的每一个组装位置,所述第一输出指示一个或多个相应生物聚合物中的每一个生物聚合物存在于该位置处的一个或多个可能性;使用经训练的深度学习模型的第一输出来在多个第一组装位置处标识生物聚合物;以及更新组装以在多个第一组装位置处指示所标识的生物聚合物,以获得更新的组装。
根据一个实施例,高分子包含蛋白质,多个生物聚合物序列包括多个氨基酸序列,并且组装在相应组装位置处指示氨基酸。
根据一个实施例,高分子包含核酸,多个生物聚合物序列包括多个核苷酸序列,并且组装在相应组装位置处指示核苷酸。
根据一个实施例,组装在多个第一组装位置中的第一个处指示第一核苷酸;在多个第一组装位置处标识生物聚合物包括在第一组装位置处标识第二核苷酸;并且更新组装包括更新组装以在第一组装位置处指示第二核苷酸。
根据一个实施例,指令还使至少一个计算机硬件处理器在更新组装以获得更新的组装之后执行:将多个核苷酸序列与更新的组装比对;使用多个核苷酸序列和更新的组装生成要提供给经训练的深度学习模型的第二输入;将第二输入提供给经训练的深度学习模型以获得相应的第二输出,针对多个第二组装位置的每一个组装位置,所述第二输出指示一个或多个相应核苷酸中的每一个核苷酸存在于该位置处的一个或多个可能性;基于经训练的深度学习模型的第二输出,在多个第二组装位置处标识核苷酸;以及更新所述更新的组装以在多个第二组装位置处指示所标识的核苷酸,以获得第二更新的组装。
根据一个实施例,指令还使至少一个计算机硬件处理器执行将多个核苷酸序列与组装比对。根据一个实施例,多个核苷酸序列包含至少5个核苷酸序列。根据一个实施例,多个核苷酸序列包含至少9个核苷酸序列。根据一个实施例,多个核苷酸序列包含至少10个核苷酸序列。
根据一个实施例,生成到经训练的深度学习模型的第一输入包括:选择多个第一组装位置;以及基于所选择的多个第一组装位置生成第一输入。根据一个实施例,在组装中选择多个第一位置包括:确定组装在多个第一组装位置处错误地指示核苷酸的可能性;以及使用所确定的可能性来选择多个第一组装位置。
根据一个实施例,生成要提供给经训练的深度学习模型的第一输入包括将多个核苷酸序列中的相应核苷酸序列与组装进行比较。根据一个实施例,生成要提供给经训练的深度学习模型的第一输入以在多个第一组装位置的第一个处标识核苷酸包括:针对在第一组装位置的邻域中的一个或多个组装位置的每一个处的多个核苷酸的每一个:确定指示多个核苷酸序列的数量的计数,所述序列指示核苷酸在该位置处;基于组装是否在该位置处指示所述核苷酸来确定参考值;确定指示计数与参考值之差的误差值;以及将参考值和误差值包括在第一输入中。根据一个实施例,基于组装是否在该位置处指示所述核苷酸来确定参考值包括:当组装在该位置处指示所述核苷酸时,确定参考值为第一值;以及当组装在该位置处不指示所述核苷酸时,确定参考值为第二值。根据一个实施例,第一值是多个核苷酸序列的数量;第二值为0。根据一个实施例,生成要提供给经训练的深度学习模型的第一输入包括将值布置到具有列的数据结构中,其中:第一列保存针对第一组装位置处的多个核苷酸确定的参考值和误差值;第二列保存针对第一组装位置的邻域中的一个或多个组装位置中的第二组装位置处的多个核苷酸的参考值和误差值。根据一个实施例,在第一组装位置的邻域中的一个或多个组装位置包括与第一组装位置分开的至少两个组装位置。
根据一个实施例,针对多个核苷酸中的每一个,一个或多个相应生物聚合物中的每一个存在于组装位置处的一种或多种可能性包括:所述核苷酸存在于所述组装位置处的可能性;并且在多个第一组装位置处标识生物聚合物包括:通过确定第一核苷酸存在于第一位置处的可能性大于多个核苷酸中的第二个存在于第一组装位置处的可能性,将多个第一组装位置的第一个处的核苷酸标识为多个核苷酸的第一个核苷酸。
根据一个实施例,指令还使至少一个计算机硬件处理器执行从多个核苷酸序列生成组装。根据一个实施例,从多个核苷酸序列生成组装包括将来自多个核苷酸序列的一致序列确定为组装。根据一个实施例,从多个核苷酸序列生成组装包括将先重叠后扩展(OLC)算法应用于多个核苷酸序列。
根据一个实施例,指令还使至少一个计算机硬件处理器执行:访问训练数据,所述训练数据包括从对参考高分子测序获得的生物聚合物序列和参考高分子的预定组装;以及使用训练数据来训练深度学习模型,以获得经训练的深度学习模型。根据一个实施例,参考高分子不同于所述高分子。根据一个实施例,深度学习模型包括卷积神经网络(CNN)。
根据另一方面,提供了一种非暂态计算机可读存储介质。非暂态计算机可读存储介质存储指令,当由至少一个计算机硬件处理器执行时,所述指令使至少一个计算机硬件处理器执行生成高分子的生物聚合物组装的方法。该方法包括:访问多个生物聚合物序列和组装,所述组装指示生物聚合物存在于相应组装位置处;使用多个生物聚合物序列和组装生成要提供给经训练的深度学习模型的第一输入;将第一输入提供给经训练的深度学习模型以获得相应的第一输出,针对多个第一组装位置中的每一个组装位置,所述第一输出指示一个或多个相应生物聚合物中的每一个生物聚合物存在于该位置处的一个或多个可能性;使用经训练的深度学习模型的第一输出在多个第一组装位置处标识生物聚合物;以及更新组装以在多个第一组装位置处指示所标识的生物聚合物,以获得更新的组装。
根据一个实施例,高分子包含蛋白质,多个生物聚合物序列包括多个氨基酸序列,并且组装在相应组装位置处指示氨基酸。
根据一个实施例,高分子包含核酸,多个生物聚合物序列包含多个核苷酸序列,并且组装在相应组装位置处指示核苷酸。
根据一个实施例,组装在多个第一组装位置中的第一个处指示第一核苷酸;在多个第一组装位置处标识生物聚合物包括在第一组装位置处标识第二核苷酸;并且更新组装包括更新组装以在第一组装位置处指示第二核苷酸。
根据一个实施例,该方法还包括,在更新组装以获得更新的组装之后:将多个核苷酸序列与更新的组装比对;使用多个核苷酸序列和更新的组装生成要提供给经训练的深度学习模型的第二输入;将第二输入提供给经训练的深度学习模型以获得相应的第二输出,针对多个第二组装位置的每一个组装位置,第二输出指示一个或多个相应核苷酸中的每一个核苷酸存在于该位置处的一种或多种可能性;基于经训练的深度学习模型的第二输出,在多个第二组装位置处标识核苷酸;以及更新所述更新的组装以在多个第二组装位置处指示所标识的核苷酸,以获得第二更新的组装。
根据一个实施例,该方法还包括将多个核苷酸序列与组装比对。根据一个实施例,多个核苷酸序列包含至少5个核苷酸序列。根据一个实施例,多个核苷酸序列包含至少9个核苷酸序列。根据一个实施例,多个核苷酸序列包含至少10个核苷酸序列。
根据一个实施例,生成到经训练的深度学习模型的第一输入包括:选择多个第一组装位置;以及基于所选择的多个第一组装位置生成第一输入。根据一个实施例,生成到经训练的深度学习模型的第一输入包含:选择多个第一组装位置;以及基于所选择的多个第一组装位置生成第一输入。根据一个实施例,在组装中选择多个第一位置包括:确定组装在多个第一组装位置处错误地指示核苷酸的可能性;以及使用所确定的可能性来选择多个第一组装位置。
根据一个实施例,生成要提供给经训练的深度学习模型的第一输入包括将多个核苷酸序列中的相应核苷酸序列与组装进行比较。根据一个实施例,生成要提供给经训练的深度学习模型的第一输入以在多个第一组装位置的第一个处标识核苷酸包括:针对在第一组装位置的邻域中的一个或多个组装位置的每一个处的多个核苷酸的每一个:确定指示多个核苷酸序列的数量的计数,所述序列指示核苷酸在该位置处;基于组装是否在该位置处指示所述核苷酸来确定参考值;确定指示计数与参考值之差的误差值;以及将参考值和误差值包括在第一输入中。根据一个实施例,基于组装是否在该位置处指示核苷酸来确定参考值包括:当组装在该位置处指示所述核苷酸时,确定参考值为第一值;以及当组装在该位置处不指示核苷酸时,确定参考值为第二值。根据一个实施例,第一值是多个核苷酸序列的数量;第二值为0。根据一个实施例,生成要提供给经训练的深度学习模型的第一输入包括将值布置到具有列的数据结构中,其中:第一列保存针对第一组装位置处的多个核苷酸确定的参考值和误差值;第二列保存针对第一组装位置的邻域中的一个或多个组装位置中的第二组装位置处的多个核苷酸的参考值和误差值。根据一个实施例,在第一组装位置的邻域中的一个或多个组装位置包括与第一组装位置分开的至少两个组装位置。
根据一个实施例,针对多个核苷酸中的每一个,一个或多个相应生物聚合物中的每一个存在于组装位置处的一个或多个可能性包括,核苷酸存在于所述组装位置处的可能性;并且在多个第一组装位置处标识生物聚合物包括:通过确定第一核苷酸存在于第一位置处的可能性大于多个核苷酸中的第二个存在于第一组装位置处的可能性,将多个第一组装位置的第一个处的核苷酸标识为多个核苷酸的第一个核苷酸。
根据一个实施例,该方法还包括从多个核苷酸序列生成组装。根据一个实施例,从多个核苷酸序列生成组装包括将来自多个核苷酸序列的一致序列确定为组装。根据一个实施例,从多个核苷酸序列生成组装包括将先重叠后扩展(OLC)算法应用于多个核苷酸序列。
根据一个实施例,该方法还包括:访问包括训练数据,所述序列数据包括从对参考高分子测序获得的生物聚合物序列和参考高分子的预定组装;以及使用训练数据来训练深度学习模型,以获得经训练的深度学习模型。根据一个实施例,参考高分子不同于所述高分子。根据一个实施例,深度学习模型包括卷积神经网络(CNN)。
附图说明
将参考附图描述本申请的各个方面和实施例。应该理解的是,附图未必按比例绘制。在多个图中出现的项在其出现的所有图中由相同的附图标记表示。
图1A-图1C示出了根据本文描述的技术的一些实施例的、可以实现本文描述的技术的各方面的系统。
图2A-图2D示出了根据本文描述的技术的一些实施例的组装系统的实施例。
图3A是根据本文描述的技术的一些实施例的用于训练机器学习模型的示例过程300,该机器学习模型用于生成生物聚合物组装。
图3B是根据本文描述的技术的一些实施例的、用于使用通过图3A的过程获得的机器学习模型来生成生物聚合物组装的示例过程310。
图4A-图4C示出了根据本文描述的技术的一些实施例的、用于生成机器学习模型的输入的示例。
图5示出了根据本文描述的技术的一些实施例的、用于更新生物聚合物组装的示例。
图6示出了根据本文描述的技术的一些实施例的、用于生成生物聚合物组装的说明性卷积神经网络(CNN)模型的结构。
图7示出了根据本文描述的技术的一些实施例实施的组装技术相对于传统技术的性能。
图8是可用于实施本文描述的技术的一些实施例的说明性计算装置800的框图。
具体实施方式
高分子可以是蛋白质或蛋白质片段、(任何类型的DNA的)DNA分子或片段、或者(任何类型的核糖核酸(RNA)的)RNA分子或片段。生物聚合物可以是氨基酸(例如,当高分子是蛋白质或其片段时)或核苷酸(例如,当高分子是DNA、RNA或其片段时)。
发明人开发了使用机器学习技术来生成高分子的生物聚合物组装的系统。例如,发明人所开发的系统可被配置为采用机器学习技术来生成有机体的DNA的基因组组装。作为另一示例,发明人所开发的系统可被配置为采用机器学习技术来生成蛋白质的氨基酸序列。
在一些实施例中,系统可以访问一个或多个生物聚合物序列(例如,由测序装置生成)以及根据这些序列生成的初始组装。组装可指示在相应组装位置处存在生物聚合物(例如,核苷酸、氨基酸)。该系统可以通过以下步骤修正初始组装的生物聚合物指示中的误差:(1)使用这些序列和初始组装生成要提供给机器学习模型的输入;(2)将该输入提供给经训练的机器学习模型以获得相应的输出;以及(3)使用从机器学习模型获得的输出来更新初始组装以获得更新的组装。与初始组装相比,更新的组装可以具有更少的生物聚合物指示误差。
在一些实施例中,组装可包括多个位置和相应位置处生物聚合物(例如,核苷酸或氨基酸)的指示。作为示例,组装可以是指示有机体基因组中的位置处的核苷酸的基因组组装。作为另一示例,组装可以是指示有机体DNA的一部分的核苷酸序列的基因序列。作为另一示例,组装可以是蛋白质的氨基酸序列(也称为“蛋白质序列”)。生物聚合物可以是核苷酸、氨基酸或任何其它类型的生物聚合物。生物聚合物序列在本文中也可称为“序列”或“读长”。
一些常规的生物聚合物组装技术可以利用测序技术来生成高分子(例如,DNA、RNA或蛋白质)的生物聚合物序列,并且使用所生成的序列来生成高分子的组装。例如,测序装置可以根据有机体的DNA样本生成核苷酸序列,该序列进而可用于生成有机体DNA的基因组组装。作为另一示例,测序装置可以生成蛋白质样本的氨基酸序列,该序列进而可用于组装蛋白质的更长的氨基酸序列。计算装置可以对通过测序装置生成的序列应用组装算法以生成组装。例如,计算装置可以对DNA样本的核苷酸序列应用先重叠后扩展(OLC)组装算法,以生成有机体的基因组组装或其部分。
一种用于根据核酸样本生成核苷酸序列的测序技术是第二代测序(也称为“短读长测序”),其生成少于1000个核苷酸的核苷酸序列(即,“短读长”)。测序技术现在已经发展到第三代测序(也称为“长读长测序”),其生成1000个或更多个核苷酸的核苷酸序列(即,“长读长”),并且提供比第二代测序更大部分的组装。然而,发明人已经认识到,第三代测序不如第二代测序精确,因此,由长读长生成的组装不如由短读长生成的组装精确。发明人还认识到,用于改进组装精度的传统误差修正技术需要大量计算且耗时。因此,发明人开发了用于修正组装中的误差的机器学习技术,其提高由第三代测序生成的组装的精度(1),并且比传统误差修正技术更有效(2)。
本文所述的一些实施例解决了发明人认识到的关于生成组装的所有上述问题。然而,应该理解的是,并非本文所述的各实施例都解决这些问题中的每一个。还应该理解的是,本文描述的技术的实施例可用于解决生物聚合物组装的上述问题之外的目的。作为一个示例,本文所描述的技术的实施例可用于提高由氨基酸序列生成的蛋白质序列的精度。作为另一示例,本文所描述的技术的实施例可以用于提高由短读长生成的组装的精度。
在一些实施例中,该系统可被配置为:(1)访问(例如由多个生物聚合物序列生成的)组装,该组装指示在相应组装位置处存在的生物聚合物;(2)使用多个生物聚合物序列和组装生成要提供给经训练的深度学习模型的第一输入;(3)将第一输入提供给经训练的深度学习模型以获得相应的第一输出,针对多个第一组装位置中的每一个组装位置,第一输出指示在该组装位置处存在一个或多个相应生物聚合物中的每一个生物聚合物的一个或多个可能性(例如,概率);(4)使用经训练的深度学习模型的第一输出在多个第一组装位置处标识生物聚合物;以及(5)更新组装以在多个第一组装位置处指示所标识的生物聚合物,以获得更新的组装。在一些实施例中,该系统可被配置为将多个生物聚合物序列与组装比对。
在一些实施例中,高分子可以是蛋白质,多个生物聚合物序列可以是多个氨基酸序列,并且组装在相应组装位置处指示氨基酸。在一些实施例中,高分子可以是核酸(例如,DNA、RNA),多个生物序列可以是核苷酸序列,并且组装在相应组装位置处指示核苷酸。
在一些实施例中,组装在多个组装位置中的第一个组装位置处指示第一核苷酸(例如,腺嘌呤)。在多个第一组装位置处标识生物聚合物包括标识位于不同于第一核苷酸的第一组装位置处的第二核苷酸(例如,胸腺嘧啶);并且更新组装包括更新组装以在第一组装位置处指示第二核苷酸(例如,胸腺嘧啶)。
在一些实施例中,该系统可被配置为执行更新的多次迭代。该系统可被配置为在更新组装以获得更新的组装之后:(1)将多个核苷酸序列与更新的组装比对;(2)使用多个核苷酸序列和更新的组装生成要提供给经训练的深度学习模型的第二输入;(3)将第二输入提供给经训练的深度学习模型以获得相应的第二输出,针对多个第二组装位置的每一个组装位置,第二输出指示在该位置存在一个或多个相应核苷酸中的每一个核苷酸的一各或多个可能性(例如,概率);(4)基于经训练的深度学习模型的第二输出,在多个第二组装位置标识核苷酸;以及(5)更新所述更新的组装以在多个第二组装位置指示所标识的核苷酸,以获得第二更新的组装。
在一些实施例中,该系统可被配置为通过如下步骤生成经训练的深度学习模型的第一输入:(1)选择多个第一组装位置;以及(2)基于所选择的多个第一组装位置生成第一输入。在一些实施例中,该系统可被配置为通过如下步骤选择多个第一组装位置:(1)确定组装在多个第一组装位置处错误地指示核苷酸的可能性;以及(2)使用所确定的可能性来选择多个第一组装位置。
在一些实施例中,该系统可被配置为通过将多个核苷酸序列中的相应核苷酸序列与组装进行比较来生成将被提供给经训练的深度学习模型的第一输入(例如,以确定一个或多个特征的值)。在一些实施例中,该系统可被配置为:通过针对第一组装位置的邻域中的一个或多个组装位置的每一个处的多个核苷酸的每一个执行如下步骤生成第一输入以在多个第一组装位置的第一个处标识核苷酸:(1)确定指示多个核苷酸序列的数量的计数,该序列指示核苷酸在组装位置处;(2)基于组装是否在组装位置处指示所述核苷酸来确定参考值;(3)确定指示计数与参考值之差的误差值;以及(4)将参考值和误差值包括在第一输入中。在一些实施例中,该系统可被配置为如下基于组装是否在组装位置处指示所述核苷酸来确定参考值:(1)当组装在该组装位置处指示所述核苷酸时,确定参考值为第一值(例如,多个核苷酸序列的数量);以及(2)当组装在该组装位置处不指示所述核苷酸时,确定参考值为第二值(例如,0)。在一些实施例中,该系统可被配置为使用3、4、5、6、7、8、9、10、15、20、25、30、35、40、45或50个位置的邻域。
在一些实施例中,该系统可被配置为生成第一输入以通过将值布置成具有行/列的数据结构中来标识第一组装位置处的核苷酸,其中:(1)第一行/列保存针对第一组装位置处的多个核苷酸确定的参考值和误差值;以及(2)第二行/列保存针对第一组装位置的邻域中的第二位置处的多个核苷酸确定的参考值和误差值。
在一些实施例中,针对多个核苷酸中的每一个,一个或多个相应生物聚合物中的每一个存在于组装位置处的一个或多个可能性包括,存在于组装位置处的可能性(例如,概率)。该系统可被配置为通过将在多个第一组装位置中的第一个处的核苷酸标识为多个核苷酸中的第一个,来在组装中的多个第一组装位置处标识生物聚合物。该系统可以通过如下操作标识第一组装位置处的核苷酸为第一核苷酸:确定第一核苷酸存在于第一组装位置处的可能性大于多个核苷酸中的第二个存在于第一组装位置处的可能性。
在一些实施例中,该系统可被配置为由多个核苷酸序列生成组装(例如,初始组装)。在一些实施例中,该系统可被配置为通过将来自多个核苷酸序列的一致序列(例如,通过采取多数表决)确定为组装来生成组装。在一些实施例中,该系统可被配置为通过将先重叠后扩展(OLC)算法应用于多个核苷酸序列来由多个核苷酸序列生成组装。在一些实施例中,该系统可被配置为:(1)访问训练数据,该训练数据包括从对参考高分子测序获得的生物聚合物序列和参考高分子的预定生物聚合物组装;以及(2)使用训练数据来训练深度学习模型(例如,卷积神经网络或递归神经网络),以获得经训练的深度学习模型。在一些实施例中,用于训练深度学习模型的参考高分子可与正在为其生成组装的高分子不同。
应该理解的是,以上介绍并在下面更详细讨论的技术可以以多种方式中的任何方式实施,因为这些技术不限于任何特定的实施方式。本文所提供的实施细节的示例仅仅是为了说明的目的。此外,本文公开的技术可以单独地或以任何合适的组合使用,因为本文所述的技术的方面不限于使用任何特定技术或技术的组合。
图1A示出了可以实施本文描述的技术的各方面的系统100。系统100包括一个或多个测序装置102、组装系统104、模型训练系统106和数据存储设备108A,它们中的每一个均连接到网络111。
在一些实施例中,测序装置102可被配置为通过对高分子的一个或多个样本标本110进行测序来生成测序数据。例如,样本标本110可以是包含核酸(例如,DNA和/或RNA)或蛋白质(例如,肽)的生物样本。测序数据可包括样本标本110的生物聚合物序列。生物聚合物序列可以表示为字母数字符号的序列,其指示高分子样本中存在的生物聚合物的顺序和位置。在一些实施例中,生物聚合物序列可以是通过对生物样本测序生成的核苷酸序列。作为示例,核苷酸序列可以使用:(1)“A”代表腺嘌呤;(2)“C”代表胞嘧啶;(3)“G”代表鸟嘌呤;(4)“T”代表胸腺嘧啶;(5)“U”代表尿嘧啶;以及(6)“-”代表在序列中的某位置处不存在核苷酸。在一些实施例中,生物聚合物序列可以是通过对蛋白质样本(例如,肽)测序而生成的氨基酸序列。作为示例,氨基酸序列可以是字母数字的序列,其使用不同的字母数字字符来代表可能存在于蛋白质中的相应的不同氨基酸。
在一些实施例中,测序装置102可被配置为由对核酸样本(例如,DNA样本)测序来生成核苷酸序列。在一些实施例中,测序装置102可被配置为通过合成对核酸样本进行测序。测序装置102可被配置为当核苷酸被掺入与被测序的核酸互补的核酸的新合成的链中时,标识该核苷酸。在测序期间,聚合酶(例如,DNA聚合酶)可以结合(例如,附接)到目标核酸分子的引发位置(称为“引物”),并且通过聚合酶的作用将核苷酸掺入至引物。测序装置102可被配置为检测掺入的每个核苷酸。在一些实施例中,核苷酸可以与响应于激发而发射光的相应发光分子(例如,荧光团)相关联。当掺入与发光分子相关联的相应核苷酸时,可以激发发光分子。测序装置102可包括用于检测光发射的一个或多个传感器。每种类型的核苷酸可以与相应类型的发光分子相关联。测序装置102可以通过基于检测到的光发射标识发光分子的类型来标识掺入的核苷酸。例如,测序装置102可以使用光发射强度、寿命、波长或其它属性来区分不同的发光分子。在一些实施例中,测序装置102可被配置为检测核苷酸掺入期间生成的电信号以标识掺入的核苷酸。测序装置102可包括用于检测电信号的传感器,并使用这些电信号来标识掺入的核苷酸。
在一些实施例中,测序装置102可被配置为使用与本文描述的技术不同的技术对核酸进行测序。一些实施例不限于本文描述的任何特定的核酸测序技术。
在一些实施例中,测序装置102可被配置为由对蛋白质样本(例如,肽)测序来生成氨基酸序列。在一些实施例中,测序装置102可被配置为使用选择性与相应氨基酸结合的试剂对蛋白质样本进行测序。试剂可以选择性地结合到一种或多种类型的氨基酸而不是其它类型的氨基酸。在一些实施例中,试剂可以与相应的发光分子相关联。发光分子可以响应于与其相关联的试剂与氨基酸之间的相互作用而被激发。在一些实施例中,测序装置102可被配置为通过检测发光分子的光发射来标识氨基酸。测序装置102可包括用于检测光发射的一个或多个传感器。在一些实施例中,每种类型的氨基酸可以与相应类型的发光分子相关联。测序装置102可以通过基于检测到的光发射标识发光分子的类型来标识氨基酸。作为示例,测序装置102可以使用光发射强度、寿命、波长或其它属性来区分不同的发光分子。在一些实施例中,测序装置102可被配置为检测在试剂与氨基酸之间的结合相互作用期间生成的电信号。测序装置102可包括用于检测电信号的传感器,并使用这些信号来标识参与相应的结合相互作用的氨基酸。
在一些实施例中,测序装置102可被配置为使用与本文描述的技术不同的技术对蛋白质进行测序。一些实施例不限于本文所述的任何特定的蛋白质测序技术。
如图1A的实施例所示,测序装置102可被配置为将装置102所生成的测序数据发送至数据存储设备108A进行存储。测序数据可包括由高分子样本的测序生成的序列。测序数据可以被一个或多个其它系统使用。作为示例,测序数据可以被组装系统104使用以生成高分子的组装。作为另一示例,测序数据可以被模型训练系统106用作训练数据,以训练供组装系统104使用的机器学习模型。本文描述了测序数据的示例性用途。
在一些实施例中,组装系统104可以是被配置为使用测序装置102所生成的测序数据来生成组装112的计算装置。组装系统104包括机器学习模型104A,组装系统104使用机器学习模型104A来生成组装。在一些实施例中,机器学习模型104A可以是从模型训练系统106获得的经训练的机器学习模型。本文描述了可以由组装系统104使用的机器学习模型的示例。
在一些实施例中,组装系统104可被配置为通过更新初始组装来生成组装112。初始组装可通过对测序数据应用常规组装算法来获得。在一些实施例中,组装系统104可被配置为生成初始组装。组装系统104可被配置为通过对从测序装置102获得的测序数据应用组装算法来生成初始组装。作为示例,组装系统104可以对来自数据存储设备108A的测序数据(例如,核苷酸序列)应用先重叠后扩展(OLC)组装或德布莱英图(DBG)组装以生成初始组装。在一些实施例中,组装系统104可被配置为获得由与组装系统104分开的系统生成的初始组装。作为示例,组装系统104可以接收由与组装系统104分开的计算装置生成的初始组装,该计算装置对测序装置102生成的测序数据应用组装算法。
在一些实施例中,组装系统104可被配置为使用经训练的机器学习模型104A来更新或改善组装(例如,从组装算法的应用获得的初始组装)。组装系统104可被配置为通过修正组装中的一个或多个误差和/或确认组装中的生物聚合物指示来更新组装。在一些实施例中,组装系统104可被配置为通过以下步骤来更新组装:(1)使用测序数据和组装来生成机器学习模型104A的输入;(2)将所生成的输入提供给机器学习模型104A以获得相应的输出;以及(3)使用从机器学习模型104A获得的输出来更新组装。在一些实施例中,针对组装中的多个位置中的每个位置,机器学习模型104A的输出可以指示在组装中的该位置处存在一个或多个相应生物聚合物(例如,核苷酸或氨基酸)中的每一个的一个或多个可能性。作为示例,针对每个位置,输出可以指示在该位置处存在相应核苷酸的概率。在一些实施例中,组装系统104可被配置为:(1)使用从机器学习模型104A获得的输出在组装位置处标识生物聚合物(例如,核苷酸或氨基酸);以及(2)更新组装以在这些位置处指示所标识的生物聚合物,从而获得更新的组装。本文描述了用于使用机器学习模型来更新组装的示例性技术。
在一些实施例中,组装系统104可被配置为标识组装中要更新(例如,修正或确认)的位置。组装系统104可被配置为使用所选择的位置来生成到机器学习模型104A的输入。在一些实施例中,组装系统104可被配置为通过以下步骤来标识要更新的位置:(1)确定相应组装位置处的生物聚合物的指示不正确的可能性;以及(2)基于所确定的可能性选择要修正的位置。在一些实施例中,组装系统104可被配置为确定指示相应位置处指示的生物聚合物不正确的可能性的数值,并且基于可能性值选择要更新的位置。作为示例,组装系统104可以选择不正确的可能性大于阈值的位置。
在一些实施例中,组装系统104可被配置为通过确定组装中的位置的特征值来生成机器学习模型104A的输入。组装系统104可被配置为使用组装和根据其生成组装的序列来确定特征值。本文描述了示例特征。在一些实施例中,组装系统104可被配置为针对多个位置中的每一个生成机器学习模型104A的输入。针对每个位置,组装系统104可被配置为确定特征值,并且将特征值作为输入提供给机器学习模型104A以获得相应的输出。组装系统104可被配置为使用与针对位置提供的输入相对应的输出来修正在该位置处指示的生物聚合物,或者确认在该位置处指示的生物聚合物是正确的。在一些实施例中,多个位置可以是组装中的所有位置。在一些实施例中,多个位置可以是组装中的位置的子集。
在更新位置的子集的实施例中,组装系统104可被配置为选择位置的子集。组装系统104可被配置为以多种方式选择位置的子集,这些方式包括:(1)确定组装错误地指示多个位置处的生物聚合物的可能性;以及(2)使用所述可能性从多个位置中选择位置的子集。例如,组装系统104可以:(1)标识可能性超过阈值可能性的位置;以及(2)将所标识的位置选择为位置的子集。
在一些实施例中,组装系统104可被配置为使用在待修正位置的邻域中的一个或多个位置处确定的特征值来生成针对该待修正位置的输入。针对所选位置,机器学习模型104A可利用来自组装中的周围位置的背景信息来生成针对所选择位置的输出。在一些实施例中,位置的邻域可包括:(1)所选择的位置;以及(2)围绕所选择位置的位置集。作为示例,邻域可以是以所选择的位置为中心的位置窗口,其中,机器学习模型104A针对所选择的位置生成输出。组装系统104可以使用5个位置的窗口、10个位置的窗口、15个位置的窗口、20个位置的窗口、25个位置的窗口、30个位置的窗口、35个位置的窗口、40个位置的窗口、45个位置的窗口和/或50个位置的窗口。
在一些实施例中,组装系统104可被配置为执行多次更新迭代以生成最终组装112。作为示例,组装系统104可以:(1)对初始组装进行第一次迭代,以获得第一更新组装;以及(2)对第一更新组装进行第二次迭代,以获得第二更新组装。在一些实施例中,组装系统104可被配置为迭代地执行更新。组装系统104可被配置为执行更新迭代,直到满足条件为止。本文描述了示例条件。
在一些实施例中,模型训练系统106可以是计算装置,被配置为访问存储在数据存储设备108A中的数据,并且使用所访问的数据来训练机器学习模型以用于生成组装。在一些实施例中,模型训练系统106可被配置为针对不同的组装系统训练单独的机器学习模型。针对相应的组装系统训练的机器学习模型可以适合组装系统的独特特性。作为示例,模型训练系统106可被配置为:(1)训练用于第一组装系统的第一机器学习模型;以及(2)训练用于第二组装系统的第二机器学习模型。用于每个组装系统的独立机器学习模型可以适合相应组装系统的独特误差分布曲线。例如,不同的组装系统可以采用不同的组装算法来生成初始组装,并且针对每个组装系统训练的机器学习模型可以适合组装算法的误差分布曲线。
在一些实施例中,模型训练系统106可被配置为将单个经训练的机器学习模型提供给多个组装系统。作为示例,模型训练系统106可以聚合来自多个组装系统的组装,并且训练单个机器学习模型。可以针对多个组装系统对单个机器学习模型进行标准化,以减轻由组装系统所采用的组装技术的变化所引起的模型变化。在一些实施例中,模型训练系统106可被配置为提供用于多个测序装置的单个经训练的机器学习模型。作为示例,模型训练系统106可以聚合来自多个测序装置的测序数据,并且训练单个机器学习模型。可以针对多个测序装置对单个机器学习模型进行标准化,以减轻由装置变化引起的模型变化。
在一些实施例中,模型训练系统106可被配置为通过使用训练数据来训练机器学习模型,该训练数据包含:(1)从对一个或多个参考高分子(例如,DNA、RNA、蛋白质)进行测序而获得的生物聚合物序列;和(2)所述参考高分子的一个或多个预定组装。在一些实施例中,模型训练系统106可被配置为使用预定组装中的生物聚合物的指示作为用于训练机器学习模型的标记。标记可以代表组装位置处的正确或期望的指示。作为示例,训练数据可包括来自有机体的测序DNA样本的核苷酸序列,以及有机体的预定基因组组装。在该示例中,模型训练系统106可以使用预定基因组组装中的核苷酸的指示作为用于对训练数据应用监督学习算法的标记。
在一些实施例中,模型训练系统106可被配置为访问来自外部数据库的训练数据。作为示例,模型训练系统106可以访问:(1)来自Pacific Biosciences公司RS II(Pacbio)数据库和/或ONT(Nanopore MiniION)数据库的测序数据;以及(2)来自美国国家生物技术信息中心(NCBI)参考基因组数据库的预定的基因组组装。作为另一示例,模型训练系统106可以从UnitProt数据库和/或人类蛋白质组计划(HPP)数据库存取蛋白质测序数据和相关联的蛋白质组组装。
在一些实施例中,模型训练系统106可被配置为通过使用标记的训练数据应用监督学习训练算法来训练机器学习模型。作为示例,模型训练系统504可以通过使用随机梯度下降来训练深度学习模型(例如,神经网络)。作为另一示例,模型训练系统106可通过优化成本函数来训练支持向量机(SVM)以标识SVM的决策边界。作为示例,模型训练系统106可以:(1)使用测序数据以及通过对该测序数据应用组装算法而生成的组装,来生成机器学习模型的输入;(2)使用高分子的预定组装(例如,来自公共数据库)标记输入;以及(3)对所生成的输入和相应的标记应用监督训练算法。
在一些实施例中,模型训练系统106可被配置为通过对训练数据应用无监督学习算法来训练机器学习模型。作为示例,模型训练系统106可以通过执行k均值聚类来标识聚类模型的聚类。在一些实施例中,模型训练系统106可被配置为:(1)使用测序数据和通过对测序数据应用组装算法而生成的组装,生成机器学习模型的输入;以及(2)对所生成的输入应用无监督学习算法。作为示例,模型训练系统106可以训练聚类模型,其中,该模型的每个聚类代表相应的核苷酸,并且聚类分类可以指示基因组组装或基因序列中的位置处的核苷酸。作为另一示例,模型训练系统106可以训练聚类模型,其中,该模型的每个聚类代表相应的氨基酸,并且聚类分类可以指示蛋白质序列中的位置处的氨基酸。
在一些实施例中,模型训练系统106可被配置为通过对训练数据应用半监督学习算法来训练机器学习模型。在一些实施例中,模型训练系统106可被配置为通过以下步骤对训练数据应用半监督学习算法:(1)通过对训练数据应用无监督学习算法(例如,聚类)来标记一组未标记的训练数据;以及(2)对所标记的训练数据应用监督学习算法。作为示例,模型训练系统106可以:(1)使用测序数据和通过对测序数据应用组装算法而生成的组装,生成机器学习模型的输入;(2)对所生成的输入应用无监督学习算法以标记输入;以及(3)对所标记的训练数据应用监督学习算法。
在一些实施例中,机器学习模型可包括深度学习模型(例如,神经网络)。在一些实施例中,深度学习模型可包括卷积神经网络(CNN)。在一些实施例中,深度学习模型可包括递归神经网络(RNN)、多层感知器、自动编码器和/或CTC拟合的神经网络模型。在一些实施例中,机器学习模型可包括聚类模型。作为示例,聚类模型可包括多个聚类,每个聚类与生物聚合物(例如,核苷酸或氨基酸)相关联。
在一些实施例中,模型训练系统106可被配置为针对多个测序装置中的每一个训练单独的机器学习模型。针对相应的测序装置训练的机器学习模型可以适合该测序装置的独特特性。作为示例,模型训练系统106可以:(1)训练用于第一测序装置的第一机器学习模型;以及(2)训练用于第二测序装置的第二机器学习模型。可以优化针对相应的测序装置训练的机器学习模型,以与由该测序装置生成的测序数据一起使用。例如,可以针对测序装置所使用的特定测序技术(例如,第三代测序)优化机器学习模型。
在一些实施例中,模型训练系统106可被配置为周期性地更新之前训练的机器学习模型。在一些实施例中,模型训练系统106可被配置为通过使用新的训练数据更新机器学习模型的一个或多个参数的值来更新之前训练的模型。在一些实施例中,模型训练系统106可被配置为通过使用之前获得的训练数据和新的训练数据的组合训练新的机器学习模型来更新机器学习模型。
在一些实施例中,模型训练系统106可被配置为响应于不同类型事件中的任何一个来更新机器学习模型。例如,在一些实施例中,模型训练系统106可被配置为响应于用户命令来更新机器学习模型。作为示例,模型训练系统106可以提供用户界面,用户可以经由该用户界面命令训练过程的性能。在一些实施例中,模型训练系统106可被配置为例如响应于软件命令而自动地(即,不是响应于用户命令)更新机器学习模型。作为另一示例,在一些实施例中,模型训练系统106可被配置为响应于检测到一个或多个条件来更新机器学习模型。例如,模型训练系统106可以响应于检测到时间段的期满而更新机器学习模型。作为另一示例,模型训练系统106可以响应于接收新训练数据的阈值量(例如,序列和/或组装的数量)来更新机器学习模型。
尽管在图1A所示的示例性实施例中,模型训练系统106与组装系统104分开,但是在一些实施例中,模型训练系统106可以是组装系统104的一部分。尽管在图1A中所示的示例性实施例中,组装系统104与测序装置102分开,但是在一些实施例中,组装系统104可以是测序装置的组件。在一些实施例中,测序装置102、模型训练系统106和组装系统104可以分别是单个系统的组件。
在一些实施例中,数据存储设备108A可以是用于存储数据的系统。在一些实施例中,数据存储设备108A可包括由一个或多个计算装置(例如,服务器)保持的一个或多个数据库。在一些实施例中,数据存储设备108A可包括一个或多个物理存储装置。作为示例,物理存储装置可包括一个或多个固态驱动器、硬盘驱动器、闪存驱动器和/或光学驱动器。在一些实施例中,数据存储设备108A可包括存储数据的一个或多个文件。作为示例,数据存储设备108A可包括存储数据的一个或多个文本文件。作为另一示例,数据存储设备108A可包括一个或多个XML文件。在一些实施例中,数据存储设备108A可以是计算装置的存储设备(例如,硬盘驱动器)。在一些实施例中,数据存储设备108A可以是云存储系统。
在一些实施例中,网络111可以是无线网络、有线网络或其任何合适的组合。作为一个示例,网络111可以是广域网(WAN),诸如因特网。在一些实施例中,网络111可以是局域网(LAN)。局域网可以通过测序装置102、组装系统104、模型训练系统106和数据存储设备108A之间的有线和/或无线连接形成。一些实施例不限于本文所述的任何特定类型的网络。
图1B示出了系统100被配置用于生成基因组装时的示例。基因组装可以是基因组组装或基因序列。例如,输出的组装112可以是基因组装。测序装置102可被配置为对核酸样本110测序以生成核苷酸序列。作为示例,测序装置102可以对来自有机体的DNA样本测序以生成核苷酸序列。由测序装置102生成的核苷酸序列可以存储在数据存储设备108B中。组装系统104可被配置为使用机器学习模型104A来生成基因组装。作为示例,组装系统104可以:(1)通过对测序装置102所生成的核苷酸序列应用组装技术(例如,OLC),来获得初始基因组装;以及(2)使用机器学习模型104A更新初始基因组装,以获得基因组装112。
图1C示出了系统100被配置用于生成蛋白质序列时的示例。例如,输出的组装112可以是蛋白质序列。测序装置102可被配置为对蛋白质样本标本110测序以生成氨基酸序列。作为示例,测序装置102可以对来自蛋白质的肽测序以生成氨基酸序列。由测序装置102生成的氨基酸序列可以存储在数据存储设备108C中。组装系统104可被配置为使用机器学习模型104A来生成蛋白质序列。作为示例,蛋白质测序系统104可以:(1)对测序装置102所生成的氨基酸序列应用组装算法,以获得蛋白质序列;以及(2)使用机器学习模型104A更新蛋白质序列,以获得蛋白质序列。
图2A示出了根据本文描述的技术的一些实施例的用于生成组装的组装系统200。组装系统200可以是上面参考图1A-C描述的组装系统104。组装系统200可以是计算装置,被配置为使用测序数据202生成组装204。组装系统200包括多个组件,这些组件包括特征生成器200A和机器学习模型200B。组装系统200可以可选地包括组装器200C。
在一些实施例中,特征生成器200A可被配置为确定可以作为输入提供给机器学习模型的一个或多个特征的值。特征生成器200A可被配置为由以下项确定特征的值:(1)序列数据202;以及(2)(例如,通过对序列数据202应用组装算法获得的)组装。序列数据202可包括多个序列,组装算法使用这些序列生成组装。在一些实施例中,特征生成器200A可被配置为通过将每个序列与组装进行比较来确定特征的值。在一些实施例中,特征生成器200A可被配置为将序列与组装的一部分比对。例如,特征生成器200A可以将序列与组装中的一组位置比对,其中根据比对的序列确定组装中的该组位置处的生物聚合物指示。特征生成器200A可被配置为通过将比对的序列与组装中的该组位置处指示的生物聚合物(例如,核苷酸、氨基酸)进行比较来确定特征的值。下面参考图4A-C描述用于确定特征的值的示例技术。
如图2A的实施例所示,特征生成器200A可被配置为生成要提供给机器学习模型200B的输入。在一些实施例中,特征生成器200A可被配置为生成针对组装中的多个位置中的每一个的输入。在一些实施例中,特征生成器200A可被配置为选择位置,并且使用所选择的位置来生成输入。在一些实施例中,特征生成器200A可被配置为如下选择位置:确定组装错误地指示位置处的生物聚合物的可能性,并且使用所确定的可能性选择位置。在一些实施例中,特征生成器200A可被配置为基于与位置比对的如下序列的数量来确定组装错误地指示该位置处的生物聚合物的可能性,这些序列在该位置处指定与组装中所指示的生物聚合物不同的生物聚合物。特征生成器200A可被配置为在确定可能性超过阈值可能性时生成针对该位置的输入。
在一些实施例中,特征生成器200A可被配置为使用以下项来生成要提供给机器学习模型200B的、针对组装中的目标位置的输入:(1)在目标位置处标识的生物聚合物;以及(2)在目标位置的邻域中的一个或多个其它位置处标识的生物聚合物。在一些实施例中,特征生成器200A可被配置为确定目标位置处和目标位置的邻域中的其它位置处的特征值。邻域中的其它位置处的特征值可以向机器学习模型200A提供背景信息以生成针对目标位置的输出。在一些实施例中,邻域的大小可以是可配置的参数。例如,邻域的大小可以由软件应用中的用户输入来指定。
在一些实施例中,特征生成器200A可被配置为生成如下输入:该输入为包括在目标位置邻域中的位置处确定的特征值的窗口。目标位置的邻域可包括目标位置和目标位置的窗口中的一个或多个其它位置。在一些实施例中,窗口的大小可以是2个位置、3个位置、5个位置、10个位置、15个位置、20个位置、25个位置、30个位置、35个位置、40个位置、45个位置或50个位置。在一些实施例中,特征生成器200A可被配置为使用如下邻域大小:60个位置、70个位置、80个位置、90个位置或100个位置。在一些实施例中,窗口可以以目标位置为中心。
在一些实施例中,机器学习模型200B可以是上面参考图1A-C描述的机器学习模型104A。如图1A的实施例所示,机器学习模型200B可被配置为接收来自特征生成器200A的输入。机器学习模型200B可被配置为生成与特征生成器200A所提供的相应输入相对应的输出。机器学习模型200B可被配置为生成如下输出:该输出被组装系统200用来标识组装中的位置处的生物聚合物(例如,核苷酸或氨基酸)。在一些实施例中,机器学习模型200B可被配置为针对各位置输出多个生物聚合物中的每一个存在于该位置处的可能性。作为示例,机器学习模型200B可以针对多个核苷酸中的每一个输出该核苷酸存在于该位置处的概率。作为另一示例,机器学习模型200B可以针对多个氨基酸中的每一个输出氨基酸存在于该位置处的概率。在一些实施例中,组装系统200可被配置为将位于组装中的位置处的生物聚合物标识为这些生物聚合物中的如机器学习模型200B的输出所指示的生物聚合物,该生物聚合物中具有存在于该位置处的最大可能性。作为示例,组装系统200可从多个核苷酸中选择在该位置处存在的可能性最大的一个核苷酸。作为另一示例,组装系统200可以从多个氨基酸中选择在该位置处存在的可能性最大的一个氨基酸。
在一些实施例中,组装系统200可被配置为使用从机器学习模型200B获得的输出生成输出组装204。组装系统200可以被配置为根据从机器学习模型200B获得的输出使用在组装中的位置处标识的生物聚合物来更新组装。组装系统200可被配置为更新组装以指示在该组装中的位置处的所标识的生物聚合物,以获得输出组装204。作为一个示例,组装可以指示腺嘌呤位于组装中的第一位置并且鸟嘌呤位于组装中的第二位置处。在该示例中,组装系统200可以:(1)使用从机器学习模型200B获得的输出,将第一位置处的核苷酸标识为胸腺嘧啶,并将第二位置处的核苷酸标识为鸟嘌呤;以及(2)更新组装中的第一位置以指示胸腺嘧啶,并保持在第二位置处指示的核苷酸不变以生成输出组装204。如以上示例所示,组装系统200可以使用从机器学习模型200B获得的输出来修改组装中的位置处的生物聚合物指示,同时保持其它位置处的生物聚合物指示不变。例如,组装系统200可以确定在组装中的位置处标识的生物聚合物与组装中指示的生物聚合物匹配,并且在更新的组装中保持该位置处的指示不变。
如图1A的实施例所示,组装器200C可被配置为将组装提供给特征生成器200A。在一些实施例中,组装器200C可被配置为通过对(例如,从对高分子样本测序接收的)序列数据202应用组装算法来生成要提供给特征生成器200A的组装。作为示例,组装器200C可被配置为对序列数据202中包括的核苷酸序列应用组装算法以生成组装。随后,可将组装提供给特征生成器200A以生成要提供给机器学习模型200B的输入,从而获得用于标识组装中的位置处的生物聚合物的输出。组装器200C所生成的组装可以由组装系统200使用从机器学习模型200B获得的输出进行更新,以生成输出组装204。
在一些实施例中,组装器200C可被配置为对序列数据202中包括的核苷酸序列应用先重叠后扩展(OLC)算法,以生成组装。测序装置可以对包含核酸的生物样本的多个拷贝测序。因此,针对组装的每个部分(例如,位置的集合),序列数据202可包括与组装的该部分比对的多个序列。覆盖组装中的位置的序列的平均数可以被称为序列的“覆盖度”。组装器200C可被配置为通过以下步骤对序列应用OLC算法:(1)基于序列的重叠区域生成重叠图;(2)使用该重叠图生成与组装的相应部分比对的序列的布局(也称为“重叠群(contigs)”);以及(3)针对与组装的一部分比对的每组序列,获取该组中的序列的一致序列,以生成组装的所述部分。
在一些实施例中,组装器200C可被配置为通过比较序列对以确定它们是否包括一个或多个相同的生物聚合物(例如,核苷酸)子序列,来标识具有重叠区域的序列。在一些实施例中,组装器200C可被配置为:(1)将共享至少阈值数量(例如,3、4、5、6、8、10、20、30、40、50、60、70、80、90、100、200、300、400、500)的核苷酸的相同子序列的序列对标识为重叠序列;(2)确定每个重叠区域的长度(即,核苷酸的数量);以及(3)基于所标识的重叠序列和重叠区域的长度来生成重叠图。重叠图可包括作为连接重叠的相应序列对的顶点和边的序列。所确定的长度可以用作重叠图中的边的标记。
在一些实施例中,组装器200C可被配置为通过使用重叠图将序列连结在一起来生成与组装的相应部分比对的多组序列的布局。组装器200C可被配置为通过重叠图找到路径以连结序列。作为示例,组装器200C可以连结一组代表核苷酸的字母数字字符,以获得连结的序列。在一些实施例中,组装器200C可以将贪婪算法应用于重叠图以标识连结序列。作为示例,组装器200C可以应用贪婪算法以将最短的公共超串标识为连结序列。
在一些实施例中,组装器200C可被配置为使用布局序列来生成组装。在一些实施例中,组装器200C可以标识多组布局序列,其中每组布局序列与组装的一部分比对。组装器200C可被配置为通过与组装的该部分比对的布局序列达成一致来生成组装的该部分。在一些实施例中,组装器200C可被配置为通过确定组装件的该部分中的位置处的生物聚合物(例如,核苷酸)是与组装的该部分比对的大多数序列指示在该位置处的生物聚合物来达成一致。作为示例,组装器200C可以生成核苷酸序列的重叠图,并标识对应于组装中一组四个位置的四个核苷酸序列“TAGA”、“TAGA”
“TAGT”、“TAGA”和“TAGC”。在该示例中,组装器200C可以确定四个核苷酸序列之中的一致为“TAGA”,因为所有四个核苷酸序列指示前三个位置为“TAG”,并且大多数核苷酸序列指示第四个位置为“A”。
在一些实施例中,组装系统200可被配置为使用机器学习技术执行OLC算法的一致步骤。当组装器200C已经生成用于生成组装的布局时,该系统可被配置为使用该布局和从该布局获得的一致组装来生成机器学习模型的输入。在一些实施例中,组装系统200可被配置为使用本文所述的技术来更新一致组装,以获得输出组装204。
在一些实施例中,组装器200C可被配置为对以下文章中描述的序列数据202应用算法:2010年6月发表在Genomics Volume 95第6期的“Assembly Algorithms for Next-Generation Sequencing Data”,其全部内容通过引用纳入在本文中。在一些实施例中,组装器200C可被配置为将不同于OLC算法的组装算法应用于序列数据202以生成组装。在一些实施例中,组装器200C可被配置为将德布莱英图(DBG)组装应用于序列数据202。一些实施例不限于特定类型的组装算法。在一些实施例中,组装器200C可包括软件应用程序,其被配置为使用序列数据202生成组装。作为示例,该系统可包括HGAP、Falcon、Canu、Hinge、Miniasm或Flye组装器。作为另一个示例,该系统可包括SPAdes、Ray、ABySS、ALLPATHS-LG或Trinity组装应用。一些实施例不限于特定的组装器。
如图2A中的虚线所示,在一些实施例中,组装器200C可能不包括在组装系统中。组装系统200可被配置为从单独系统中接收组装并且更新接收到的组装以生成输出组装204。作为示例,单独的计算装置可将组装算法(例如,OLC)应用于序列数据202以生成组装,并将所生成的组装发送给组装系统200。
图2B示出了上面参考图2A所述的组装系统200的实施例,其中组装系统200被配置为对组装执行的多次更新迭代,如从机器学习模型200B到特征生成器200A的反馈箭头所示。在一些实施例中,组装系统200可被配置为确定一个或多个特征的值,在获得第一更新的组装之后所述一个或多个特征的值可以作为输入提供给机器学习模型200B。特征生成器200A可被配置为从以下项确定特征的值:(1)序列数据202;以及(2)通过更新初始组装获得的第一更新组装,该初始组装是通过将组装算法应用于序列数据202获得的。特征生成器200A可被配置为将所确定的特征的值作为输入提供给机器学习模型200B以获得输出。组装系统200可被配置为使用来自机器学习模型200B的输出来:(1)标识第一更新组装中的相应位置处的生物聚合物;以及(2)更新第一更新组装以指示标识的生物聚合物在相应位置处,以获得第二更新组装。第二更新组装可以是由组装系统200输出的组装204。
在一些实施例中,组装系统200可被配置为执行更新迭代,直到满足条件为止。在一些实施例中,组装系统104可被配置为执行更新迭代,直到该系统确定执行了阈值数量的迭代为止。在一些实施例中,迭代的阈值数量可以由用户输入设定(例如,软件命令或硬编码值)。在一些实施例中,组装系统104可被配置为确定迭代的阈值数量。作为示例,组装系统200可以基于用于获得初始组装的组装技术类型来确定更新迭代的阈值数量。在一些实施例中,组装系统200可被配置为迭代地更新组装,直到满足指定的停止标准为止。作为示例,组装系统200可以:(1)确定从最近更新迭代获得的当前组装与之前组装之间的差异的数量;以及(2)当差异的数量小于差异的阈值数量时和/或当差异的百分比小于阈值百分比时,确定停止迭代地更新组装。
图2C示出了上面参考图2A所述的组装系统200的实施例,其中组装系统200被配置为并行地修正组装的多个位置,如从特征生成器200A到机器学习模型200B的多个箭头所示。如参考图2A所述,在一些实施例中,特征生成器200A可被配置为针对多个位置中的每个位置生成要提供给机器学习模型200B的输入。在图2C的实施例中,组装系统200可被配置为并行地更新组装的多个位置。组装系统200可被配置为:(1)更新组装中的第一位置;以及(2)在完成更新组装中的第一位置之前,开始更新组装中的第二位置。在一些实施例中,组装系统200可被配置为通过并行地生成针对多个相应位置生成的多个输入和/或将其并行地提供给机器学习模型200B来并行地更新多个位置。作为示例,特征生成器200A可以:(1)生成针对第一位置的第一输入和/或将第一输入提供给机器学习模型200B;以及(2)在获得来自机器学习模型200B的对应于第一输入的输出之前,生成针对第二位置的第二输入和/或将第二输入提供给机器学习模型200B。
在一些实施例中,图2C的组装系统200可以是包括多个处理器的计算装置,这些处理器被配置为并行地更新组装的多个位置。在一些实施例中,组装系统200可被配置为使用多线程应用,其中应用的每个线程被配置为与一个或多个其它线程并行地更新组装中的相应位置。
图2D示出了上面参考图2A所述的组装系统200的实施例,其中组装系统200被配置为:(1)执行多次更新迭代,如从机器学习模型200B到特征生成器200A的箭头所示;以及(2)并行地修正组装的多个位置,如从特征生成器200A到机器学习模型200B的多个箭头所示。在一些实施例中,组装系统200可被配置为执行如上参考图2B所述的多次更新迭代,并且在每个更新周期期间,如上面参考图2C所述地并行地更新组装中的多个位置。
图3A示出了根据本文描述的技术的一些实施例的、用于训练机器学习模型的示例过程300,该机器学习模型用于生成生物聚合物组装。过程300可由任何合适的计算装置执行。作为示例,过程300可以由参考图1A-C所述的模型训练系统106执行。可以执行过程300以训练本文所述的机器学习模型。作为示例,可以执行过程300以训练深度学习模型,诸如参考图6所述的卷积神经网络(CNN)600。
在一些实施例中,机器学习模型可以是深度学习模型。在一些实施例中,深度学习模型可以是神经网络。作为示例,机器学习模型可以是卷积神经网络(CNN),其生成用于标识组装中的位置处的生物聚合物(例如,核苷酸、氨基酸)的输出。作为另一示例,机器学习模型可以是CTC拟合神经网络。在一些实施例中,可以单独地训练深度学习模型的部分。作为示例,深度学习模型可具有:第一部分,其将输入数据编码为一个或多个特征的值;和第二部分,其接收特征的值作为输入以生成标识一个或多个生物聚合物的输出。
在一些实施例中,机器学习模型可以是聚类模型。在一些实施例中,模型的每个聚类可以与生物聚合物相关联。作为说明性示例,聚类模型可包括5个聚类,其中每个聚类与相应的核苷酸相关联。例如,第一聚类可以是相关联的腺嘌呤;第二聚类可以与胞嘧啶相关联;第三聚类可与鸟嘌呤相关联;第四聚类可以与胸腺嘧啶相关联;第五聚类可以指示(例如,在组装中的位置处)不存在核苷酸。出于说明性目的,本文描述了聚类和相关联的生物聚合物的示例数量。
过程300始于框302,在302处,执行过程300的系统存取来自对一个或多个参考高分子(例如,DNA、RNA或蛋白质)的测序的测序数据。在一些实施例中,该系统可被配置为从数据库存取来自测序参考高分子的测序数据。作为一个示例,该系统可以从ONG数据库存取从对细菌的测序获得的测序数据。测序数据可以从对高分子的一个或多个样本的测序获得。例如,测序数据可以从酿酒酵母的生物样本中获得,该酿酒酵母是酵母的一种。作为另一示例,测序数据可以从对蛋白质的肽样本的测序获得。在一些实施例中,测序数据可包括从对包含核酸(例如,DNA、RNA)的生物样本的测序获得的核苷酸序列。在一些实施例中,测序数据可包括从测序蛋白质样本(例如,来自蛋白质的肽)获得的氨基酸序列。
在一些实施例中,该系统可被配置为访问来自目标测序技术的测序数据,使得可以训练机器学习模型以提高从由目标测序技术生成的测序数据生成的组装的精度。可针对目标测序技术的误差分布训练机器学习模型,使得机器学习模型可被优化以修正目标测序技术的误差特性。在一些实施例中,该系统可被配置为访问从第三代测序获得的数据。在一些实施例中,第三代测序可以是单分子实时测序。作为示例,该系统可以访问从通过检测与核苷酸相关联的发光分子的光发射来对核酸样本测序的系统中获得的数据。作为另一示例,该系统可以访问从通过检测与选择性地与氨基酸交互的试剂相关联的发光分子的光发射来对肽测序的系统中获得的数据。在一些实施例中,该系统可被配置为访问从第二代测序获得的数据。作为示例,该系统可以访问从Sanger测序、Maxam-Gilbert测序、鸟枪(shotgun)测序、焦磷酸测序、组合探针锚定合成法或连接酶测序法获得的测序数据。在一些实施例中,该系统可被配置为访问从肽从头测序获得的数据。作为示例,该系统可以访问从串联质谱法获得的氨基酸序列。一些实施例不限于特定的目标测序技术。
接下来,过程300进行到框304,在框304处,该系统访问根据框302处获得的测序数据的至少一部分生成的组装。在一些实施例中,该系统可被配置为访问通过将组装算法(例如,OLC组装、DBG组装)应用于测序数据获得的组装。在一些实施例中,该系统可被配置为通过对测序数据应用组装算法来访问组装。在一些实施例中,该系统可被配置为访问通过将一个或多个组装算法应用于测序数据生成的预定组装。作为示例,这些组装可以之前已经由单独的计算装置执行并被存储在数据库中。例如,从中获得测序数据的数据库也可以存储通过将一个或多个组装算法应用于测序数据而生成的组装。
在一些实施例中,该系统可被配置为访问根据目标组装技术生成的组装,使得可以训练机器学习模型以修正作为目标组装技术的特性的误差。可以针对目标组装技术的误差分布来训练机器学习模型,使得机器学习模型可被优化以修正目标组装技术的误差特性。在一些实施例中,该系统可被配置为访问由特定的组装算法和/或软件应用生成的组装。作为示例,该系统可以访问由Canu、Miniasm或Flye组装器生成的组装。在一些实施例中,该系统可被配置为访问从一类组装器生成的组装。作为示例,该系统可以访问从贪婪算法组装器或图表法组装器生成的组装。一些实施例不限于特定的组装技术。
接下来,过程300进行到框306,在框306处,该系统访问参考高分子的一个或多个预定组装。在一些实施例中,参考高分子的预定组装可以代表相应高分子的真实或正确的组装。这样,该系统可被配置为使用参考高分子的预定组装来标记训练数据。作为示例,该系统可以从NCBI数据库存取有机体DNA的参考基因组。在该示例中,该系统可以使用参考基因组来确定用于执行监督学习以训练用于标识基因组组装中的核苷酸的机器学习模型的标记。作为另一示例,该系统可以访问来自UnitProt数据库的蛋白质的参考蛋白质序列,并使用该参考蛋白质序列来确定用于执行监督学习以训练用于标识蛋白质序列中氨基酸的机器学习模型的标记。
接下来,过程300进行到框308,在框308处,该系统使用在框302-308处访问的数据来训练机器学习模型。在一些实施例中,该系统可被配置为:(1)使用在框302处访问的测序数据和在框304处访问的组装来生成机器学习模型的输入;(2)使用在框306处访问的预定组装来标记所生成的输入;以及(3)对所标记的训练数据应用监督学习算法。在一些实施例中,该系统可被配置为通过使用测序数据生成一个或多个特征的值来生成机器学习模型的输入。在一些实施例中,该系统可被配置为确定针对组装中的每个位置的特征的值。作为示例,该系统可以通过以下步骤来确定位置的特征值:(1)确定针对相应核苷酸的计数,其中每个计数指示核苷酸序列的数量,该数量指示核苷酸存在于该位置;以及(2)使用计数确定特征的值。本文参考图4A-C描述了用于生成输入并标记输入的示例技术。
在一些实施例中,该系统可被配置为使用所标记的训练数据来训练深度学习模型。在一些实施例中,该系统可被配置为使用所标记的训练数据来训练决策树模型。在一些实施例中,该系统可被配置为使用所标记的训练数据来训练支持向量机(SVM)。在一些实施例中,该系统可被配置为使用所标记的训练数据来训练朴素贝叶斯分类器(Bayesclassifier,NBC)。
在一些实施例中,该系统可被配置为通过使用随机梯度下降来训练机器学习模型。该系统可以迭代地改变机器学习模型的参数,以优化目标函数而获得经训练的机器学习模型。例如,该系统可以使用随机梯度下降来训练卷积网络的滤波器和/或神经网络的权重。
在一些实施例中,该系统可被配置为使用所标记的训练数据来执行监督训练。在一些实施例中,该系统可被配置为通过以下步骤训练机器学习模型:(1)将所生成的输入提供给机器学习模型以获得相应的输出;(2)使用输出标识组装的位置处存在的生物聚合物;以及(2)基于所标识的生物聚合物与在参考组装中的位置处指示的生物聚合物之间的差异来训练机器学习模型。在参考组装中的位置处指示的生物聚合物可以是针对相应输入的标记。该差异可提供机器学习模型在利用其当前参数集配置时再现标记执行得有多好的度量。作为示例,机器学习模型的参数可以使用随机梯度下降和/或适于训练模型的任何其它迭代优化技术来更新。作为示例,该系统可被配置为基于所确定的差异来更新模型的一个或多个参数。
在一些实施例中,该系统可将无监督训练算法应用于一组未标记的训练数据。尽管图3A的实施例包括在框306处访问参考高分子的预定组装,在一些实施例中,该系统可被配置为在不访问预定组装的情况下执行训练。在这些实施例中,该系统可被配置为将无监督训练算法应用于训练数据以训练机器学习模型。该系统可被配置为通过以下步骤来训练模型:(1)使用测序数据和从测序数据生成的组装生成模型的输入;以及(2)将无监督训练算法应用于所生成的输入。在一些实施例中,机器学习模型可以是聚类模型,并且该系统可被配置为通过对训练数据应用无监督学习算法来标识聚类模型的聚类。每个聚类可以与生物聚合物(例如,核苷酸或氨基酸)关联。作为示例,该系统可以执行k均值聚类以使用训练数据来标识聚类(例如,聚类中心)。
在一些实施例中,该系统可被配置为对训练数据应用半监督学习算法。该系统可以:(1)通过将无监督学习算法(例如,聚类)应用于训练数据来标记一组未标记的训练数据;以及(2)对所标记的训练数据应用监督学习算法。作为示例,该系统可以将k均值聚类应用于从测序数据生成的输入和从测序数据获得的组装,以对输入进行聚类。随后,该系统可利用基于聚类成员的分类来标记每个输入。随后,该系统可以通过将随机梯度下降算法和/或任何其它迭代优化技术应用于所标记的数据来训练机器学习模型。
在框308处训练机器学习模型之后,过程300结束。在一些实施例中,该系统可被配置为存储经训练的机器学习模型。该系统可以存储机器学习模型的一个或多个经训练的参数的值。作为示例,机器学习模型可包括一个或多个神经网络,并且该系统可以存储神经网络的经训练的权重的值。作为另一示例,机器学习模型包括卷积神经网络,并且该系统可以存储卷积神经网络的一个或多个经训练的滤波器。在一些实施例中,该系统可被配置为存储经训练的机器学习模型(例如,在组装系统104中),以用于生成组装(例如,基因组组装、蛋白质序列或其部分)。
在一些实施例中,该系统可被配置为获得新数据以使用新训练数据来更新机器学习模型。在一些实施例中,该系统可被配置为通过使用新的训练数据训练新的机器学习模型来更新机器学习模型。作为示例,该系统可以使用新训练数据来训练新的机器学习模型。在一些实施例中,该系统可被配置为通过使用新训练数据重新训练机器学习模型更新机器学习模型的一个或多个参数来更新机器学习模型。作为示例,由模型生成的输出和相应的输入数据可以用作训练数据以及之前获得的训练数据。在一些实施例中,该系统可被配置为使用标识氨基酸的数据和输出(例如,从执行下面参考图3B描述的过程310获得的)来迭代地更新经训练的机器学习模型。作为示例,该系统可被配置为向第一经训练的机器学习模型(例如,教师模型)提供输入数据,并且获得标识一个或多个氨基酸的输出。随后,该系统可以使用输入数据和相应的输出来重新训练机器学习模型以获得第二经训练的机器学习模型(例如,学生模型)。
在一些实施例中,该系统可被配置为针对多种测序技术中的每一种训练单独的机器学习模型。可以使用从测序技术获得的数据来训练针对相应的测序技术的机器学习模型。可以针对测序技术的误差分布来调整机器学习模型。在一些实施例中,该系统可被配置为针对多种组装技术中的每一种来训练单独的机器学习模型。可以使用从组装技术获得的组装来训练针对相应的组装技术的机器学习模型。可以针对组装技术的误差分布曲线来调整机器学习模型。
在一些实施例中,该系统可被配置为训练要用于多种测序技术的通用机器学习模型。可以使用从多种测序技术聚合的数据来训练该通用机器学习模型。在一些实施例中,该系统可被配置为训练要用于多种组装技术的通用机器学习模型。可以使用利用多种组装技术生成的组装来训练通用机器学习模型。
图3B示出了根据本文描述的技术的一些实施例的用于使用从过程300获得的经训练的机器学习模型来生成组装(例如,基因组组装、基因序列、蛋白质序列或其部分)的示例性过程310。过程310可由任何合适的计算装置执行。作为示例,过程310可以由上面参考图1A-C描述的组装系统104执行。
过程310开始于框312,在框312处,该系统对测序数据执行组装算法(例如OLC组装或DBG组装)以生成组装。作为示例,该系统可以将组装算法应用于由对DNA样本的测序生成的核苷酸序列。作为另一示例,该系统可以将组装算法应用于由来自蛋白质的肽样本的测序生成的氨基酸序列。该系统可以应用如上参考图2A-D的组装器200C所述的组装算法。在一些实施例中,该系统可包括组装应用。该系统可被配置为通过执行组装应用来生成组装。本文描述了组装应用的示例。
如框312周围的虚线所示,在一些实施例中,该系统可以不执行组装算法。该系统可以获得由单独系统(例如,单独的计算装置)生成的组装,并且执行框314-322的步骤以更新所获得的组装。
接下来,过程310进行到框312,其中该系统访问测序数据和组装。在一些实施例中,该系统可被配置为访问由该系统生成的组装(例如,在框312处)。在一些实施例中,该系统可被配置为访问由单独系统生成的组装。作为示例,该系统可以接收由在与该系统分开的计算装置上执行的软件应用所生成的组装。在一些实施例中,该系统可被配置为访问根据目标组装技术(例如,算法和/或软件应用,其中,在过程300中训练的机器学习模型已经被优化更新(例如,以修正误差))生成的测序数据。作为示例,可以在从Canu组装应用生成的组装上训练机器学习模型,并且该系统可以访问由Canu组装应用生成的组装。
在一些实施例中,该系统可被配置为访问如下测序数据:该测序数据包括用于生成所访问的组装的生物聚合物序列。作为示例,所访问的测序数据可包括对其应用组装算法以生成基因组组装或基因序列的核苷酸序列。作为另一示例,所访问的测序数据可包括对其应用组装算法以生成蛋白质序列的氨基酸序列。在一些实施例中,该系统可被配置为访问从目标测序技术生成的测序数据,在过程300中训练的机器学习模型已经被优化以更新该目标测序技术。作为示例,可以在根据第三代测序生成的测序数据上来训练机器学习模型,并且该系统可以访问根据第三代测序生成的测序数据。
接下来,过程310进行到框316,其中该系统使用测序数据和组装来生成要提供给机器学习模型的输入。在一些实施例中,该系统可被配置为生成针对组装中的相应位置的输入。该系统可被配置为通过以下步骤生成针对组装中的一组位置的输入:(1)将来自测序数据的序列与组装中的该组位置比对;以及(2)将比对的序列的生物聚合物与组装中的这些位置处指示的生物聚合物进行比较,以确定一个或多个特征的值。在一些实施例中,该系统可被配置为通过从测序数据标识指示在组装中的一组位置处的生物聚合物的序列而将序列与组装中的该组位置比对。作为示例,组装可包括索引从1至10000的位置,并且该系统可以确定核苷酸序列“TAGGTC”、“TAGTTC”、“TAGGCC”、“TAGGTC”分别与组装中索引为5-10的位置比对。在该示例中,该系统可以将每个核苷酸序列与在组装中索引为5-10的位置处指示的生物聚合物进行比较,以确定特征的值。参考图4A-C描述特征的示例和特征值的生成。
在一些实施例中,该系统可被配置为生成针对组装中的相应位置的输入。该系统可被配置为生成针对一个位置的输入以作为输入提供给机器学习模型,以获得可以用于标识存在于组装中的该位置处的生物聚合物(例如,核苷酸、氨基酸)的输出。在一些实施例中,该系统可被配置为基于组装中的一个位置处的生物聚合物指示以及在该位置的邻域中的一个或多个其它位置处的生物聚合物指示来生成针对该位置的输入。该输入可以向机器学习模型提供围绕组装中的位置的背景信息,该模型使用该背景信息生成相应的输出。该系统可被配置为通过确定在该位置处和在该位置的邻域中的其它位置处的特征的值,来基于在该位置的邻域中的位置处的生物聚合物指示来生成针对该位置的输入。作为示例,该系统可以:(1)选择位置;(2)标识以所选择位置为中心的位置的邻域;以及(3)将输入生成为在所选择的位置和位置的邻域中的每一个处的特征的值。
在一些实施例中,该系统可被配置为使用设定大小的邻域。本文描述了示例邻域大小。在一些实施例中,由该系统使用的邻域中的位置的数量可以是可配置参数。例如,该系统可以接收指定要使用的邻域大小的用户输入(例如,在软件应用中)。在一些实施例中,该系统可被配置为确定邻域大小。作为示例,该系统可以基于通过其生成测序数据的测序技术和/或通过其生成组装的组装技术来确定邻域大小。
在一些实施例中,该系统可被配置为通过以下步骤来生成要提供给机器学习模型的输入:(1)选择组装中的位置;以及(2)针对所选择的位置生成相应的输入。在一些实施例中,该系统可被配置为通过如下步骤选择组装中的位置:确定组装错误地指示组装中的这些位置处的生物聚合物的可能性,并且使用所确定的可能性来选择要针对其生成输入的位置。作为示例,该系统可以确定组装错误地指示一个位置处的生物聚合物的可能性是否超过阈值可能性,并且如果该可能性超过阈值可能性,则生成针对该位置的输入。在一些实施例中,该系统可被配置为基于指示生物聚合物存在于该位置处的多个比对序列,来确定该位置错误地指示生物聚合物的可能性。该系统可以确定指示生物聚合物在该位置处的序列数量与序列的总数量之间的差异的可能性。作为示例,基于来自一组9个核苷酸序列的一致,组装可以指示胸腺嘧啶存在于组装中一个位置处,其中4个核苷酸序列指示该位置处存在胸腺嘧啶,2个核苷酸序列指示该位置处存在鸟嘌呤,3个核苷酸序列指示该位置处存在腺嘌呤。在该示例中,该系统可以确定组装错误地指示组装中该位置处的生物聚合物的可能性为指示胸腺嘧啶的核苷酸序列的数量(4)与核苷酸序列的总数量(9)之差,以获得值5。该系统可以确定5大于阈值差(例如,1、2、3、4),并且其结果是,生成针对该位置的输入。
在一些实施例中,该系统可被配置为使用阈值差1、2、3、4、5、6、7、8、9或10。在一些实施例中,阈值差可以是可配置参数。由该系统使用的阈值可能性可以影响该系统针对其生成要提供给模型的输入的位置的数量。作为示例,该系统可以接收阈值的值作为对软件应用的用户输入。在一些实施例中,该系统可以使用设定的阈值可能性。作为示例,可以对阈值可能性的值进行编码。在一些实施例中,该系统可被配置为自动确定阈值可能性。作为示例,该系统可以基于从其生成组装的组装技术和/或从其生成测序数据的测序技术来确定阈值可能性。
在一些实施例中,该系统可被配置为针对2-D矩阵的位置生成输入。在一些实施例中,矩阵的每行/列可以指定在组装中的相应位置处确定的特征的值。在一些实施例中,该系统可被配置为生成作为图像的输入,其中图像的像素保存特征的值。作为示例,图像的每行/列可以指定在组装中的相应位置处确定的特征的值。
接下来,过程310进行到框318,其中该系统将在框316处生成的输入提供给机器学习模型以获得相应的输出。在一些实施例中,该系统可被配置为将针对组装中的相应位置生成的输入作为单独的输入提供给机器学习模型。作为示例,该系统可以提供在目标位置处和在该位置的邻域中的位置处确定的一组特征值作为机器学习模型的输入,以获得针对目标位置的对应输出。在一些实施例中,该系统可被配置为并行地提供针对多个位置生成的输入(例如,如上面参考图2C-D所述)。作为示例,该系统可以:
(1)将针对第一位置生成的第一输入提供给模型;以及(2)在获得与第一输入相对应的第一输出之前,将针对第二位置生成的第二输入提供给模型。在一些实施例中,该系统可被配置为依次提供针对多个位置生成的输入。例如,该系统可以:(1)将针对第一位置生成的第一输入提供给模型,以获得相应的第一输出;以及(2)在获得第一输出之后,提供针对第二位置的第二输入,以获得相应的第二输出。
在一些实施例中,对应于提供给机器学习模型的输入的输出可以针对组装中的多个位置中的每一个指示一个或多个生物聚合物中的每一个生物聚合物存在于该位置处的可能性。作为一个示例,针对基因组组装中的多个位置中的每一个,输出可以指示一个或多个核苷酸(例如腺嘌呤、鸟嘌呤、胸腺嘧啶、胞嘧啶)中的每一个核苷酸存在于该位置的可能性(例如,概率)。作为另一示例,针对蛋白质序列中多个位置中的每一个,输出可以指示一个或多个氨基酸中的每一个氨基酸存在于该位置中的可能性。在一些实施例中,输出可以指示在组装中的位置处不存在生物聚合物的可能性。作为示例,该系统可以指示“-”字符处于组装中的该位置的可能性。
在一些实施例中,模型可以提供与在组装中的相应位置相对应的输出。该系统可以提供针对组装中的目标位置生成的输入,并且获得指示在目标位置处存在一个或多个生物聚合物中的每一个生物聚合物的可能性的对应输出。作为示例,该系统可以提供针对基因组组装中的位置生成的输入,并获得相应输出,该输出指示一组4个可能的核苷酸(例如,腺嘌呤、鸟嘌呤、胸腺嘧啶、胞嘧啶)中的每一个核苷酸存在于该位置的可能性。例如,可能性可以是每个核苷酸存在于该位置处的概率值。
接下来,过程310进行到框320,其中该系统使用从模型获得的输出来标识组装中的位置处的生物聚合物。在一些实施例中,该系统可以被配置为通过使用响应于提供给模型的相应输入而针对位置获得的输出来针对该位置中的每一个标识存在于该位置处的生物聚合物,以标识组装中的位置处的生物聚合物。来自模型的输出可包括与相应位置相对应的多组输出值。每组输出值可以指定一个或多个生物聚合物中的每一个生物聚合物存在于组装中的相应位置处的可能性。该系统可将在相应位置处的生物聚合物标识为具有存在于在该位置处的最大可能性的生物聚合物。作为示例,针对组装中的第一位置的一组输出值可以指示针对该位置的以下一组可能性:腺嘌呤(A)0.1、胞嘧啶(C)0.6、鸟嘌呤(G)0.1、胸腺嘧啶(T)0.15和空白(-)0.05。在该示例中,该系统可以将胞嘧啶(C)标识在组装中的该位置处。在一些实施例中,来自模型的与针对位置生成的输入相对应的输出可以是指定该位置处的生物聚合物的分类。作为示例,来自模型的输出可以是腺嘌呤(A)、胞嘧啶(C)、鸟嘌呤(G)、胸腺嘧啶(T)或空白(-)的分类。
接下来,过程310进行到框322,其中该系统更新组装以获得更新的组装。该系统可被配置为基于在框320处标识的生物聚合物来更新组装。在一些实施例中,该系统可被配置为通过更新组装中的位置处的生物聚合物的指示来更新组装。在一些情况下,在框320处被标识为存在于位置处的生物聚合物可以不同于组装中的生物聚合物指示。在这些情况下,该系统可以修改组装中的该位置处的生物聚合物指示。作为示例,该系统可以:
(1)使用模型的输出,标识胸腺嘧啶“T”存在于组装中具有腺嘌呤“A”指示的第一位置处;以及(2)将组装中的第一位置的指示从之前的指示腺嘌呤“A”改变为胸腺嘧啶“T”。在一些情况下,被标识为存在于位置处的生物聚合物可以与在组装中的该位置处的生物聚合物指示相同。在这些情况下,该系统可以不改变组装中该位置处的生物聚合物指示。作为示例,该系统可以:(1)使用模型的输出,标识胸腺嘧啶“T”存在于组装中具有胸腺嘧啶“T”指示的第一位置处;以及(2)保持第一位置处的指示不变。
在一些实施例中,该系统可被配置为并行地更新组装中的多个位置。作为示例,该系统可以:(1)开始更新组装中的第一位置;以及(2)在完成第一位置处的更新之前,开始更新组装中的第二位置。在一些实施例中,该系统可被配置为依次更新组装中的位置。作为示例,该系统可以:
(1)更新组装中的第一位置;以及(2)在完成在组装中的第一位置处的更新之后,更新在组装中的第二位置。
在一些实施例中,在框322处更新组装以获得第一更新的组装之后,过程310可返回到框316,如从框322到框316的虚线所示。在一些实施例中,该系统可被配置为使用第一更新组装和测序数据来生成机器学习模型的输入。作为示例,该系统可以使用测序数据的一组核苷酸序列和第一更新组装生成到模型的输入。该系统可以将核苷酸序列与第一更新组装的相应位置比对,以生成如上所述的机器学习模型的输入。该系统随后可以在框316至322执行动作以获得第二更新组装。在一些实施例中,组装系统可被配置为执行迭代直到满足条件为止。
在一些实施例中,该系统可被配置为执行更新迭代,直到该系统确定执行了阈值数量的迭代为止。在一些实施例中,迭代的阈值数量可以由用户输入(例如,软件命令或硬编码值)设定。在一些实施例中,该系统可被配置为确定迭代的阈值数量。作为示例,该系统可基于用于获得初始组装的组装技术类型来确定更新迭代的阈值数量。在一些实施例中,该系统可被配置为执行更新迭代,直到该系统检测到组装已经收敛为止。作为示例,组装系统可以:(1)确定从最近迭代获得的当前组装与之前组装之间的差异的数量;以及(2)当差异的数量小于阈值数量或差异的百分比时,确定停止执行更新迭代。
在一些实施例中,该系统可被配置为对组装执行单个更新,并且过程310可以在对组装执行单个更新之后在框322处结束。更新组装可由该系统作为输出组装输出。作为示例,该系统可输出其中组装中的误差已被修正的基因组组装,使得输出组装比在框314处访问的初始组装更加精确。作为另一示例,该系统可以输出其中误差已经被修正的蛋白质序列,使得输出的蛋白质序列比在框314处访问的初始蛋白质序列更加精确。
在一些实施例中,该系统可被配置为针对组装的第一部分执行第一数量的更新迭代以及针对组装的第二部分执行第二数量的更新迭代。作为示例,该系统可以多次更新基因组组装的索引为1-100的位置(例如,通过执行框316-322处的动作的多次迭代),并更新基因组组装的索引为101-200的位置一次(例如,通过执行框316-322处的动作一次)。该系统可被配置为基于可能错误地指示生物聚合物的组装的部分中的位置的数量来确定组装的部分以更新多次。作为示例,该系统可以:(1)确定位置窗口中具有超过阈值可能性的不正确生物聚合物指示的可能性的位置的数量(例如,25、50、75、100或1000个位置);以及(2)当该数量超过位置的阈值数量时,确定执行对位置的窗口的更新周期。
图4A-C示出了根据本文描述的技术的一些实施例的、生成要提供给机器学习模型的输入的示例。
图4A示出了阵列400,其包括核苷酸序列401(在图4A中标记为“堆垒”)、由核苷酸序列401生成的生物聚合物的组装402以及针对组装中相应位置的生物聚合物的标记404。作为示例,图4A中所示的数据可以是从执行用于训练机器学习模型的过程300获得的训练数据,其中:(1)在框302和304处获得测序数据401和组装402;(2)并且在框306处获得标记404。作为另一示例,可以在使用经训练的机器学习模型来生成组装的过程310的框312和/或314处获得测序数据401和组装402。
如图4A的实施例所示,测序数据401包括从测序DNA生成的核苷酸序列。测序数据401的每一行是核苷酸序列。如图4A的示例所示,核苷酸序列表示为字母数字字符的序列,其中“A”代表腺嘌呤,“C”代表胞嘧啶,“G”代表鸟嘌呤,“T”代表胸腺嘧啶,并且“-”表示在该位置处不存在核苷酸。本文所述的示例性字母数字字符是出于说明性目的,因为一些实施例不限于一组特定的字母数字字符以代表相应的核苷酸或其缺失。
在图4A的实施例中,从核苷酸序列401生成组装402。在一些实施例中,可以通过对测序数据401应用组装算法(例如,OLC组装)来获得组装402。在图4A的实施例中,通过获取核苷酸序列的一致获得组装402。通过针对组装402中每个位置的核苷酸序列的多数表决来确定该一致,其中该系统标识在该位置处由最大数量的核苷酸序列指示的生物聚合物。该系统可被配置为,针对多个核苷酸中的每一个:(1)确定对核苷酸进行表决的核苷酸序列的数量(例如,通过指示核苷酸存在于该位置处);以及(2)标识具有最大数量表决的核苷酸以指示在该位置处。作为示例,针对突出显示的列406的位置:(1)序列中的4个指示腺嘌呤,序列中的3个指示胞嘧啶,序列中的2个指示鸟嘌呤;以及(2)组装402中的位置指示腺嘌呤。作为另一示例,针对组装402中的第一位置,所有核苷酸序列都指示胞嘧啶,因此组装402指示胞嘧啶处于第一位置。
在图4A的实施例中,标记404可以指示针对组装402中的位置的期望生物聚合物。在一些实施方式中,该系统可被配置为从参考基因组确定标记。例如,该系统可以从来自有机体的DNA样本的测序获得核苷酸序列,通过将组装算法应用于核苷酸序列获得组装402,以及从有机体的已知参考基因组(例如,从NCBI数据库)获得标记404。标记404可以代表针对用于监督训练和/或用于确定所生成的组装的精度的每个位置的真实或正确的生物聚合物指示。
图4B示出了从图4A所示的数据400确定的值的阵列410。阵列410示出了生成针对组装402中的列406的位置的机器学习模型的输入的中间步骤。阵列410包括一组标记为“堆垒”的行,其代表图4A的核苷酸序列。针对组装中的每个位置,该系统确定多个核苷酸中的每一个核苷酸的计数,其中该计数指示核苷酸序列的数量,该序列指示核苷酸在组装中的位置。阵列410的“堆垒”部分中的每个条目保存核苷酸的计数。作为示例,图4B中的列412针对腺嘌呤的计数为4、针对胞嘧啶的计数为3、针对鸟嘌呤的计数为2、针对胸腺嘧啶的计数为0并且针对无核苷酸的计数为0。作为另一示例,阵列410的第一列针对腺嘌呤的计数为0,针对胞嘧啶的计数为9,针对鸟嘌呤的计数为0,针对胸腺嘧啶的计数为0并且针对无核苷酸的计数为0。
阵列410还包括在图4B中标记为“组装”的一组行,其代表图4B的组装402。针对组装402中的每个位置,阵列410包括从该位置指示的核苷酸确定的一列值。针对每个位置,该系统可以为多个核苷酸中的每一个分配参考值,其中该参考值指示核苷酸是否在组装中的位置处被指示。作为一个示例,在图4B中标记为412的列中,组装部分:(1)针对腺嘌呤的值为9,因为它是在组装402中的相应位置处指示的核苷酸;以及(2)针对其它核苷酸中的每一个的值为0,因为它们未在组装402中的相应位置处被指示。作为另一示例,阵列410的第一列组装部分:(1)针对胞嘧啶的值为9,因为它是在组装402中的相应位置处指示的核苷酸;以及(2)针对其它核苷酸中的每一个的值为0,因为它们未在组装402中的相应位置处指示。如图4B的示例中所示,在一些实施例中,当核苷酸在组装位置处被指示时,分配给组装位置处的核苷酸的参考值等于所比对的核苷酸序列的数量(例如,在图4A的示例中为9)。
图4C示出了使用图4B的阵列410中的值生成的特征值的阵列420。在一些实施例中,阵列420可以作为机器学习模型的输入提供,以获得相应的输出。在图4C的示例中,针对与列422相对应的组装中的位置,阵列420是要提供给模型的输入。阵列420包括在与列422对应的目标位置处确定的特征值,以及针对目标位置的邻域中的24个位置确定的特征值。阵列420包括针对目标位置左边的12个位置和目标位置右边的12个位置的特征值。
在阵列420的堆垒部分中,每列指定多个核苷酸中的每一个核苷酸的误差值。该列中的核苷酸的误差值指示以下项之间的差异:(1)指示核苷酸在组装402中与该列相对应的位置的核苷酸序列的数量,以及(2)分配给阵列420的组装部分中的核苷酸的参考值。作为示例,针对图4C的列422,所述值确定如下:(1)腺嘌呤为4-9=-5(2)胞嘧啶为3-0=3(3)鸟嘌呤为2-0=2;(4)胸腺嘧啶为0-0=0(5)空白为0-0=0。阵列420的组装部分可以与图4B的阵列410的组装部分相同。
在一些实施例中,阵列420中的堆垒的值可以指示组装402错误地标识位置处的核苷酸的可能性。该系统可以使用这些值来选择要针对其生成机器学习模型的输入的位置。如图4C所示,突显堆垒的非零值。在一些实施例中,该系统可被配置为确定当该位置处的堆垒值超过阈值时生成要提供给针对该位置的机器学习模型的输入。例如,该系统可以通过确定针对腺嘌呤确定的为5的差超过为4的阈值差来确定生成针对组装402中与列422相对应的位置的输入。
在一些实施例中,阵列420可以作为机器学习模型的输入提供,以更新组装中的位置(例如,与列422相对应的位置)。该系统可以使用从机器学习模型获得的相应输出来标识存在于组装中的该位置处的核苷酸,并且相应地更新组装。在一些实施例中,阵列420可以是作为训练模型的一部分而被提供给机器学习模型的多个输入中的一个。该系统可以使用从机器学习模型和标记404获得的相应输出来确定对机器学习模型的一个或多个参数的调整。作为示例,机器学习模型可以是神经网络,并且该系统可以使用从机器学习模型的输出标识的核苷酸与标记之间的差异来确定对神经网络的权重的一个或多个调整。
尽管图4A的示例性实施例示出了与核酸相关的数据,但是在一些实施例中,该数据可以与蛋白质相关。例如,序列401可以是氨基酸序列,组装402可以是蛋白质序列,并且标记404可以是针对蛋白质序列中每个位置的参考氨基酸。该系统可以基于氨基酸序列、蛋白质序列和/或标记确定在图4B-C中所示的值。
图5示出了根据本文描述的技术的一些实施例的更新组装的过程。图5示出了从组装数据500生成要提供给机器学习模型502的输入以生成更新的组装508。例如,组装数据500可以是上面参考图4C所述的数据的形式。示出的更新过程可以由上面参考图1A-C所述的组装系统104来执行。
如图5的实施例所示,该系统选择要更新的组装中的位置504A和506A。作为示例,该系统可以通过以下步骤选择位置504A、506A:(1)确定组装错误地指示组装中的位置处的生物聚合物(例如,核苷酸、氨基酸)的可能性;以及(2)确定在位置504A、506A处的可能性分别超过阈值可能性,以选择位置504A、506A。当该系统选择位置504A、506A时,该系统可以确定生成要提供给机器学习模型502的相应输入。
如图5的实施例所示,该系统生成与位置504A相对应的第一输入504B和与位置506A相对应的第二输入506B。该系统可以如上参考图4A-C所述生成输入504B、506B中的每一个。例如,该系统可以通过以下步骤生成输入504B、506B中的每一个:(1)选择以该位置为中心的位置的邻域;(2)确定邻域中的每个位置处的一个或多个特征的值;以及(3)使用特征的值作为针对该位置的输入。在一些实施例中,该系统可被配置为将特征的值存储在数据结构中。作为示例,该系统可以将值存储在二维阵列或图像中,如图4C所示。
如图5的实施例所示,该系统将所生成的输入504B、506B中的每一个作为输入提供给机器学习模型502,以获得相应的输出。输出504C与针对位置504A生成的输入504B相对应,并且输出506C与针对位置506A生成的输入506B相对应。在一些实施例中,该系统可被配置为依次将输入504B、506B提供给机器学习模型502。作为示例,该系统可以:(1)将输入504B提供给机器学习模型502,以获得相应的输出504C;以及(2)在获得输出504C之后,将输入506B提供给机器学习模型502,以获得相应的输出506C。在一些实施例中,该系统可被配置为并行地将输入504B、506B提供给机器学习模型502。作为示例,该系统可以:(1)将输入504B提供给机器学习模型502;以及(2)在获得与输入504B相对应的输出504C之前,将输入506B提供给机器学习模型502。
如图5的实施例所示,输出504C、506C中的每一个指示一个或多个核苷酸中的每一个存在于组装中的该位置处的可能性。在图5的实施例中,该可能性是概率。作为示例,输出504C指定:(1)针对四个不同核苷酸中的每一个,该核苷酸存在于位置504A处的概率;以及(2)在位置504A处没有核苷酸存在的概率(由“-”字符表示)。在输出504C中,腺嘌呤的概率为0.2,胞嘧啶的概率为0.5,鸟嘌呤的概率为0.1,胸腺嘧啶的概率为0.1,并且没有核苷酸在位置504A处的概率为0.1。作为另一示例,输出506C指定:(1)针对四个不同核苷酸中的每一个,该核苷酸存在于位置506A处的概率;以及(2)在506A位置处没有核苷酸存在的概率(由“-”字符表示)。在该示例中,腺嘌呤的概率为0.6,胞嘧啶的概率为0.1,鸟嘌呤的概率为0.2,胸腺嘧啶的概率为0.05,并且没有核苷酸在位置504A的概率为0.05。
如图5的实施例所示,该系统使用从机器学习模型502获得的输出来更新组装中的位置,以获得更新的组装508。在一些实施例中,该系统可被配置为通过以下步骤来更新组装:(1)使用从机器学习模型获得的输出来标识存在于位置处的核苷酸;以及(2)更新组装中的位置以指示所标识的核苷酸,从而获得更新的组装508。如图5的示例所示,该系统通过以下步骤更新初始组装中的位置504A:(1)使用输出504C确定胞嘧啶具有存在于该位置处的最高可能性;以及(2)设置更新的组装508中的相应位置508A,以指示胞嘧啶“C”位于该位置。作为另一示例,该系统通过以下步骤来更新初始组装中的位置506A:(1)使用输出506C确定腺嘌呤具有存在于该位置处的最高可能性;以及(2)设置更新的组装508中的相应的位置508B,以指示腺嘌呤“A”。在一些情况下,该系统可以:(1)确定使用从机器学习模型502获得的输出在该位置处标识的核苷酸可能已经在该位置处指示;并且(2)在更新的组装508中保持该位置处的指示不变。
尽管更新的组装508被示出为与初始组装分开,但在一些实施例中,更新的组装508可以是初始组装的更新版本。例如,该系统可将初始组装存储在存储器中,并在更新存储器中初始组装的值以获得更新的组装508。在一些实施例中,该系统可以生成更新的组装508作为与初始组装不同的组装。例如,该系统可将初始组装存储在第一存储器位置处,并将更新的组装508作为单独的组装存储在第二存储器位置处。
在一些实施例中,该系统可被配置为在初始组装中的位置处依次执行更新。作为示例,该系统可以:(1)使用输出504C对更新的组装508中的位置508A进行更新;以及(2)在位置508A处完成更新之后,使用输出506C对更新的组装508中的位置508B进行更新。在一些实施例中,该系统可被配置为在初始组装中的位置处并行地执行更新。作为示例,该系统可以:(1)使用输出504C开始更新位置508A;以及(2)在位置508A处完成更新之前,开始使用输出506C更新位置508B。
在一些实施例中,该系统可被配置为并行地执行生成针对组装中的相应位置的输入、将输入提供给机器学习模型502以及使用来自机器学习模型的输出更新组装中的位置的过程。作为示例,该系统可以:(1)开始生成针对初始组装的位置504A的输入;以及(2)在完成对在位置504A处的位置的更新之前,开始生成针对初始组装的位置506A的输入。通过使组装更新并行化,该系统使生成组装的过程更有效(例如,通过需要更少的时间)。该系统可以通过使用多个处理器和/或使用多个应用线程来使过程并行化。
尽管图5的实施例示出了更新基因组组装的一部分,但是一些实施例可以实施所示过程以更新蛋白质序列或其部分。例如,初始组装可以是蛋白质序列。随后,该系统可以生成针对蛋白质序列中的位置的输入以提供给机器学习模型502。该系统可以获得指示多个氨基酸中的每一个氨基酸存在于该位置处的可能性(例如,概率)的输出。随后,该系统可以更新初始蛋白质序列,以获得更新的蛋白质序列。
图6示出了根据本文描述的技术的一些实施例的用于生成组装的卷积神经网络模型600的示例。在一些实施例中,可以通过执行上面参考图3A描述的过程300来训练卷积神经网络模型600。在一些实施例中,从过程300获得的经训练的卷积神经网络模型600可用于执行过程310,以生成如上面参考图3B所述的组装。
在一些实施例中,模型600被配置为接收从测序数据生成的输入,以及从测序数据生成的组装。作为示例,模型600可以是由上面参考图1A-C所述的组装系统104使用的机器学习模型。测序数据可包括生物聚合物序列(例如,核苷酸序列或氨基酸序列)。在一些实施例中,该系统可被配置为确定一个或多个特征的值,并且将所确定的值作为输入提供给模型600。作为示例,该系统可以确定在组装中的位置的邻域处的特征的值,并且将所确定的位置的邻域处的值作为输入提供给模型600。本文描述了示例性输入和用于生成输入的技术。
在图6的示例性实施例中,模型600包括第一卷积层602,其接收提供给模型600的输入。在第一层602中,该系统将提供给模型600的输入与表示为3×5×64矩阵的64个3×5滤波器卷积(Conv3×5×64)。例如,该系统可将10×25输入矩阵(例如,如图4C所示)与3×5×64矩阵的每个信道卷积,以获得输出。第一层602包括修正线性函数(ReLu)作为系统应用于来自卷积的输出的激活函数。在一些实施例中,第一层602还可包括池化层,以减小卷积的输出的大小。
在图6的示例性实施例中,模型包括第二卷积层604,其接收第一层602的输出。在第二层604中,该系统将输入与表示为3×5×128矩阵的一组128个3×5滤波器卷积(Conv3×5×128)。该系统可以将来自第一卷积层602的输出与3×5×128滤波器组卷积。第二卷积层604包括ReLU函数作为系统应用于来自卷积的输出的激活函数。在一些实施例中,第二层604还可包括池化层,以减小卷积的输出的大小。随后,第二卷积层604的输出被传递到第三卷积层606。在第三层606中,该系统将输入与表示为3×5×256矩阵的一组256个3×5滤波器卷积。随后,该系统将ReLu激活函数应用于来自卷积的输出。在一些实施例中,第三层606还可包括池化层,以减小卷积的输出的大小。
在图6的示例性实施例中,模型600包括具有5个完全连接层的稠密层(dense)608,其中每个层接收256个输入值。该系统可以压缩从第三卷积层606获得的输出,以作为输入提供给稠密层608。稠密层608可输出多个值,其中每个值指示相应生物聚合物(例如,核苷酸或氨基酸)存在于针对其将输入提供给模型600的位置处的可能性。作为示例,稠密层可输出五个值,其中每个值指示核苷酸(例如,腺嘌呤、胞嘧啶、鸟嘌呤、胸腺嘧啶和/或无核苷酸)存在于该位置的可能性。该系统可将归一化指数函数(softmax)函数应用于稠密层608的输出以获得和为1的一组概率值。如在图6的示例性实施例中所示,该系统将softmax函数应用于稠密层608的输出以获得5个概率的输出610,这些概率指示相应核苷酸存在于组装中的位置处的概率。输出610可用于更新组装(例如,如上面参考图5所述)。
图7示出了根据本文描述的技术的一些实施例的技术的执行结果。每个曲线图示出了由该技术提供的精度相对于常规技术的改进。在图7中,Canu和Miniasm是两种常规的组装技术。Miniasm+Racon表示应用Racon误差修正的Miniasm。Canu+Quorum是本文所述的用于修正从Canu生成的组装技术的实施。Miniasm+Quorum是本文所述的用于修正从Miniasm生成的组装技术的实施。
如图7所示,针对数据的每个样本,Miniasm+Quorum具有比Miniasm+Racon显著更少的误差率。作为示例,针对来自30X Pacbio数据的大肠杆菌,Miniasm+Quorum(由连接点表示)的每次迭代具有小于100个误差/100千碱基的误差率,而Miniasm+Racon具有大约200个误差/100千碱基的最小误差率。作为另一示例,针对来自30X ONT数据的大肠杆菌,Miniasm+Quorum的每次迭代具有大约400个误差/100千碱基的误差率,而Miniasm+Racon具有大约500个误差/100千碱基的误差率。
如图7所示,Canu+Quorum提供了比单独来自Canu的结果更高的精度。尽管Canu包括结合常规误差修正技术,但本文所述的技术提供了改进的组装生成精度。作为示例,针对来自30X ONT数据的大肠杆菌,Canu具有大于500个误差/100千碱基的误差率,而Canu+Quorum的每次迭代具有小于350个误差/100千碱基的误差率。
如图7所示,本文所述的技术可以提供改进的组装精度,而不会增加大量计算时间来执行误差修正。作为示例,Miniasm+Quorum在基本上相同的CPU小时数下实现了比Miniasm+Racon更好的精度。作为另一示例,Canu+Quorum比单独的Canu实现了更好的精度,而基本上没有增加CPU小时数来修正组装。
在一些实施例中,本文所述的系统和技术可以使用一个或多个计算装置来实施。然而,各实施例不限于与任何特定类型的计算装置一起运行。通过进一步说明,图8是说明性计算装置800的框图。计算装置800可包括一个或多个处理器802和一个或多个有形的、非暂态计算机可读存储介质(例如,存储器804)。存储器804可以在有形的非暂态计算机可记录介质中存储计算机程序指令,当执行时,该计算机程序指令实施上述功能中的任何功能。处理器802可联接到存储器804并且可以执行这种计算机程序指令以使该功能被实现和执行。
计算装置800还可包含网络输入/输出(I/O)接口806,计算装置可以经由其与其它计算装置(例如,通过网络)进行通信;并且还可包含一个或多个用户I/O接口808,计算装置可以经由其将输出提供至用户或从用户接收输入。用户I/O接口可包含装置,诸如键盘、鼠标、麦克风、显示装置(例如,监视器或触摸屏)、扬声器、相机和/或各种其它类型的I/O装置。
上述实施例可以以多种方式中的任一方式实施。例如,实施例可使用硬件、软件或其组合实施。当在软件中实施时,软件代码可以在任何合适的处理器(例如,微处理器)或处理器的集合上执行,其可以是在单个计算装置中提供的或分布在多个计算装置之中。应该理解的是,执行上述功能的任何组装或组装的集合一般可被认为是控制上述功能的一个或多个控制器。可以以多种方式实施一个或多个控制器,诸如以专用硬件或以使用微代码或软件编程以执行上述功能的通用硬件(例如,一个或多个处理器)来实施。
在这个方面,应该理解的是,本文所述的实施例的一个实施包含利用计算机程序(即,多个可执行指令)编码的至少一个计算机可读存储介质(例如,RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字通用盘(DVD)或其它光盘存储器、磁盒、磁带、磁盘存储器或其它磁存储装置或其它有形的、非临时性计算机可读存储介质),其中当在一个或多个处理器上执行该计算机程序时,其执行一个或多个实施例的上述功能。计算机可读介质可以是可传输的,使得存储在其上的程序可以被加载到任何计算装置上以实施本文所讨论的技术的各方面。此外,应该理解的是,对计算机程序的参考不限于在主机上运行的应用程序,其中当执行该计算机程序时,其执行上述功能中的任一个。相反,在本文中,在一般意义上,术语计算机程序和软件用于指代可以采用的对实施本文所讨论的技术的各方面的一个或多个处理器进行编程的任何类型的计算机代码(例如,应用软件、固件、微代码或任何其它形式的计算机指令)。
本公开的各个特征和方面可单独、组合地或以前述的实施例中未具体讨论的各种布置使用并且因此不将其应用限制于在前面描述中阐明的或在附图中所示的组装的细节和布置。例如,在一个实施例中描述的各方面可以任何方式与在其它实施例中所述的各方面进行组合。
术语“大约”、“基本上”和“约”可用于表示在一些实施例中目标值的±20%以内,在一些实施例中目标值的±10%以内,在一些实施例中目标值的±5%以内,以及在一些实施例中目标值的±2%以内。术语“大约”和“约”可包含目标值。
此外,本文公开的构思还被具体化为一种方法,本文已提供了该方法的示例。作为该方法的一部分执行的动作可按任何合适的方式进行测序。因此,可以构造按不同于所示顺序的顺序来执行动作的实施例,其可包含同时执行一些即使在所示实施例中被示为连续动作的动作。
在权利要求中使用序数术语,诸如“第一”、“第二”、“第三”等修饰请求保护的元素时,其本身并不表示所执行方法的动作的任何优先性、优先或一个请求保护元素与另一个的顺序或时间顺序,而是仅用作标记以区分具有某个名称的一个请求保护的元素与另一个具有相同名称的元素(但是不使用序数术语),以区分请求保护的元素。
此外,本文所使用的措辞和术语用于描述且不应被认为是限制。使用“包含”、“包含”或“具有”、“含有”、“涉及”及其变型表示含有之后所列的项目及其等同物,以及额外的项目。
Claims (66)
1.一种生成高分子的生物聚合物组装的方法,所述方法包括:
使用至少一个计算机硬件处理器执行如下操作:
访问多个生物聚合物序列和组装,所述组装指示存在于相应组装位置处的生物聚合物;
使用所述多个生物聚合物序列和所述组装生成要提供给经训练的深度学习模型的第一输入;
将所述第一输入提供给所述经训练的深度学习模型以获得对应的第一输出,其中,针对多个第一组装位置中的每个组装位置,所述第一输出指示一个或多个相应生物聚合物中的每一个存在于所述位置处的一个或多个可能性;
使用所述经训练的深度学习模型的所述第一输出来在所述多个第一组装位置处标识生物聚合物;以及
更新所述组装以在所述多个第一组装位置处指示所标识的生物聚合物,从而获得更新的组装。
2.根据权利要求1所述的方法,其中,所述高分子包含蛋白质,所述多个生物聚合物序列包含多个氨基酸序列,并且所述组装在相应组装位置处指示氨基酸。
3.根据权利要求1或任一项其它前述权利要求所述的方法,其中,所述高分子包含核酸,所述多个生物聚合物序列包含多个核苷酸序列,并且所述组装在相应组装位置处指示核苷酸。
4.根据权利要求3或任一项其它前述权利要求所述的方法,其中:
所述组装在所述多个第一组装位置的第一个组装位置处指示第一核苷酸;
在所述多个第一组装位置处标识生物聚合物包括在所述第一组装位置处标识第二核苷酸;以及
所述更新组装包括更新所述组装以在所述第一组装位置处指示所述第二核苷酸。
5.根据权利要求3或任一项其它前述权利要求所述的方法,其中,在更新所述组装以获得更新的组装之后,所述方法还包括:
将所述多个核苷酸序列与所述更新的组装比对;
使用所述多个核苷酸序列和所述更新的组装生成要提供给所述经训练的深度学习模型的第二输入;
将所述第二输入提供给所述经训练的深度学习模型以获得相应的第二输出,其中,针对多个第二组装位置的每一个组装位置,所述第二输出指示一个或多个相应核苷酸中的每一个存在于所述位置处的一个或多个可能性;
基于所述经训练的深度学习模型的所述第二输出,在所述多个第二组装位置处标识核苷酸;以及
更新所述更新的组装以在所述多个第二组装位置处指示所标识的核苷酸,从而获得第二更新的组装。
6.根据权利要求3或任一项其它前述权利要求所述的方法,还包括将所述多个核苷酸序列与所述组装比对。
7.根据权利要求6或任一项其它前述权利要求所述的方法,其中,所述多个核苷酸序列包含至少9个核苷酸序列。
8.根据权利要求3或任一项其它前述权利要求所述的方法,其中,生成所述经训练的深度学习模型的所述第一输入包括:
选择所述多个第一组装位置;以及
基于所选择的多个第一组装位置生成所述第一输入。
9.根据权利要求8或任一项其它前述权利要求所述的方法,其中,选择所述组装中的所述多个第一位置包括:
确定所述组装在所述多个第一组装位置处错误地指示核苷酸的可能性;以及
使用所确定的可能性来选择所述多个第一组装位置。
10.根据权利要求3或任一项其它前述权利要求所述的方法,其中,生成要提供给所述经训练的深度学习模型的第一输入包括:将所述多个核苷酸序列中的相应核苷酸序列与所述组装进行比较。
11.根据权利要求3或任一项其它前述权利要求所述的方法,其中,生成要提供给所述经训练的深度学习模型的第一输入以在所述多个第一组装位置的第一个组装位置处标识核苷酸包括:
针对位于所述第一组装位置的邻域中的一个或多个组装位置的每一个处的多个核苷酸的每一个:
确定指示多个核苷酸序列的数量的计数,其中,所述多个核苷酸序列指示所述核苷酸位于所述位置处;
基于所述组装是否在所述位置处指示所述核苷酸来确定参考值;
确定指示所述计数与所述参考值之差的误差值;以及
将所述参考值和所述误差值包括在第一输入中。
12.根据权利要求11或任一项其它前述权利要求所述的方法,其中,基于所述组装是否在所述位置处指示所述核苷酸来确定参考值包括:
当所述组装在所述位置处指示所述核苷酸时,确定所述参考值为第一值;以及
当所述组装在所述位置处不指示所述核苷酸时,确定所述参考值为第二值。
13.根据权利要求12或任一项其它前述权利要求所述的方法,其中:
所述第一值是所述多个核苷酸序列的数量;以及
所述第二值为0。
14.根据权利要求11或任一项其它前述权利要求所述的方法,其中,生成要提供给所述经训练的深度学习模型的所述第一输入包括将值布置到具有列的数据结构中,其中:
第一列保存针对所述第一组装位置处的多个核苷酸确定的参考值和误差值;以及
第二列保存针对第一组装位置的邻域中的一个或多个组装位置中的第二组装位置处的多个核苷酸的参考值和误差值。
15.根据权利要求11或任一项其它前述权利要求所述的方法,其中,所述第一组装位置的邻域中的一个或多个组装位置包括与所述第一组装位置分开的至少两个组装位置。
16.根据权利要求3或任一项其它前述权利要求所述的方法,其中,一个或多个相应生物聚合物中的每一个存在于所述组装位置处的一个或多个可能性包括,针对多个核苷酸中的每一个,所述核苷酸存在于所述组装位置处的可能性;并且
在所述多个第一组装位置处标识生物聚合物包括:通过确定第一核苷酸存在于第一位置处的可能性大于多个核苷酸中的第二个核苷酸存在于第一组装位置处的可能性,来将所述多个第一组装位置的第一个组装位置处的核苷酸标识为所述多个核苷酸的第一个核苷酸。
17.根据权利要求3或任一项其它前述权利要求所述的方法,还包括由所述多个核苷酸序列生成所述组装。
18.根据权利要求17或任一项其它前述权利要求所述的方法,其中,由所述多个核苷酸序列生成所述组装包括:将来自所述多个核苷酸序列的一致序列确定为所述组装。
19.根据权利要求17或任一项其它前述权利要求所述的方法,其中,由所述多个核苷酸序列生成所述组装包括:对所述多个核苷酸序列应用先重叠后扩展算法。
20.根据权利要求1或任一项其它前述权利要求所述的方法,还包括:
访问训练数据,所述训练数据包括从对参考高分子测序获得的生物聚合物序列和所述参考高分子的预定组装;以及
使用所述训练数据训练深度学习模型,以获得所述经训练的深度学习模型。
21.根据权利要求20或任一项其它前述权利要求所述的方法,其中,所述参考高分子不同于所述高分子。
22.根据权利要求1或任一项其它前述权利要求所述的方法,其中,所述深度学习模型包括卷积神经网络。
23.一种用于生成高分子的生物聚合物组装的系统,所述系统包括:
至少一个计算机硬件处理器;以及
至少一个非暂态计算机可读存储介质,所述存储介质存储指令,所述指令在由所述至少一个计算机硬件处理器执行时,使所述至少一个计算机硬件处理器执行如下操作:
访问多个生物聚合物序列和组装,所述组装指示存在于相应组装位置处生物聚合物;
使用所述多个生物聚合物序列和所述组装生成要提供给经训练的深度学习模型的第一输入;
将所述第一输入提供给所述经训练的深度学习模型以获得对应的第一输出,其中,针对多个第一组装位置中的每个组装位置,所述第一输出指示一个或多个相应生物聚合物中的每一个存在于所述位置处的一个或多个可能性;
使用所述经训练的深度学习模型的所述第一输出来在所述多个第一组装位置处标识生物聚合物;以及
更新所述组装以在所述多个第一组装位置处指示所标识的生物聚合物,从而获得更新的组装。
24.根据权利要求23所述的系统,其中,所述高分子包含蛋白质,所述多个生物聚合物序列包含多个氨基酸序列,并且所述组装在相应组装位置处指示氨基酸。
25.根据权利要求23或任一项其它前述权利要求所述的系统,其中,所述高分子包含核酸,所述多个生物聚合物序列包含多个核苷酸序列,并且所述组装在相应组装位置处指示核苷酸。
26.根据权利要求25或任一项其它前述权利要求所述的系统,其中:
所述组装在所述多个第一组装位置的第一个组装位置处指示第一核苷酸;
在所述多个第一组装位置处标识生物聚合物包括在所述第一组装位置处标识第二核苷酸;以及
所述更新组装包括更新所述组装以在所述第一组装位置处指示所述第二核苷酸。
27.根据权利要求25或任一项其它前述权利要求所述的系统,其中,在更新所述组装以获得所述更新的组装之后,所述指令还使所述至少一个计算机硬件处理器执行如下操作:
将所述多个核苷酸序列与所述更新的组装比对;
使用所述多个核苷酸序列和所述更新的组装生成要提供给所述经训练的深度学习模型的第二输入;
将所述第二输入提供给所述经训练的深度学习模型以获得相应的第二输出,其中,针对多个第二组装位置的每一个组装位置,所述第二输出指示一个或多个相应核苷酸中的每一个存在于所述位置处的一个或多个可能性;
基于所述经训练的深度学习模型的所述第二输出,在所述多个第二组装位置处标识核苷酸;以及
更新所述更新的组装以在所述多个第二组装位置处指示所标识的核苷酸,从而获得第二更新的组装。
28.根据权利要求25或任一项其它前述权利要求所述的系统,其中,所述指令还使至少一个计算机硬件处理器执行如下操作:将所述多个核苷酸序列与所述组装比对。
29.根据权利要求28或任一项其它前述权利要求所述的系统,其中,所述多个核苷酸序列包含至少9个核苷酸序列。
30.根据权利要求25或任一项其它前述权利要求所述的系统,其中,生成所述经训练的深度学习模型的所述第一输入包括:
选择所述多个第一组装位置;以及
基于所选择的多个第一组装位置生成所述第一输入。
31.根据权利要求30或任一项其它前述权利要求所述的系统,其中,选择所述组装中的多个第一位置包括:
确定所述组装在所述多个第一组装位置处错误地指示核苷酸的可能性;以及
使用所确定的可能性来选择所述多个第一组装位置。
32.根据权利要求25或任一项其它前述权利要求所述的系统,其中,生成要提供给所述经训练的深度学习模型的所述第一输入包括:将所述多个核苷酸序列中的相应核苷酸序列与所述组装进行比较。
33.根据权利要求25或任一项其它前述权利要求所述的系统,其中,生成要提供给所述经训练的深度学习模型的第一输入以在所述多个第一组装位置的第一个处标识核苷酸包括:
针对在所述第一组装位置的邻域中的一个或多个组装位置的每一个处的多个核苷酸的每一个:
确定指示多个核苷酸序列的数量的计数,所述多个核苷酸序列指示所述核苷酸位于所述位置处;
基于所述组装是否在所述位置处指示所述核苷酸来确定参考值;
确定指示所述计数与所述参考值之差的误差值;以及
将所述参考值和所述误差值包括在所述第一输入中。
34.根据权利要求33或任一项其它前述权利要求所述的系统,其中,基于所述组装是否在所述位置处指示所述核苷酸来确定参考值包括:
当所述组装在所述位置处指示所述核苷酸时,确定所述参考值为第一值;以及
当所述组装在所述位置处不指示所述核苷酸时,确定所述参考值为第二值。
35.根据权利要求34或任一项其它前述权利要求所述的系统,其中:
所述第一值是所述多个核苷酸序列的数量;以及
所述第二值为0。
36.根据权利要求33或任一项其它前述权利要求所述的系统,其中,生成要提供给所述经训练的深度学习模型的所述第一输入包括将值布置到具有列的数据结构中,其中:
第一列保存针对第一组装位置处的多个核苷酸确定的参考值和误差值;以及
第二列保存针对第一组装位置的邻域中的一个或多个组装位置中的第二组装位置处的多个核苷酸的参考值和误差值。
37.根据权利要求33或任一项其它前述权利要求所述的系统,其中,所述第一组装位置的邻域中的一个或多个组装位置包括与所述第一组装位置分开的至少两个组装位置。
38.根据权利要求25或任一项其它前述权利要求所述的系统,一个或多个相应生物聚合物中的每一个存在于所述组装位置处的一个或多个可能性包括,针对多个核苷酸中的每一个,所述核苷酸存在于所述组装位置处的可能性;并且
在所述多个第一组装位置处标识生物聚合物包括:通过确定第一核苷酸存在于第一位置处的可能性大于多个核苷酸中的第二个核苷酸存在于第一组装位置处的可能性,来将所述多个第一组装位置的第一个组装位置处的核苷酸标识为所述多个核苷酸的第一个核苷酸。
39.根据权利要求25或任一项其它前述权利要求所述的系统,其中,所述指令还使所述至少一个计算机硬件处理器执行如下操作:从所述多个核苷酸序列生成所述组装。
40.根据权利要求39或任一项其它前述权利要求所述的系统,其中,从所述多个核苷酸序列生成所述组装包括:将来自所述多个核苷酸序列的一致序列确定为所述组装。
41.根据权利要求39或任一项其它前述权利要求所述的系统,其中,从多个核苷酸序列生成所述组装包括:对所述多个核苷酸序列应用先重叠后扩展算法。
42.根据权利要求23或任一项其它前述权利要求所述的系统,其中,所述指令还使所述至少一个计算机硬件处理器执行如下操作:
访问训练数据,所述训练数据包括从对参考高分子测序获得的生物聚合物序列和所述参考高分子的预定组装;以及
使用所述训练数据来训练深度学习模型,以获得所述经训练的深度学习模型。
43.根据权利要求42或任一项其它前述权利要求所述的系统,其中,所述参考高分子不同于所述高分子。
44.根据权利要求23或任一项其它前述权利要求所述的系统,其中,所述深度学习模型包括卷积神经网络。
45.至少一个非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储指令,当由至少一个计算机硬件处理器执行时,所述指令使所述至少一个计算机硬件处理器执行生成高分子的生物聚合物组装的方法,所述方法包括:
访问多个生物聚合物序列和组装,所述组装指示存在于相应组装位置处生物聚合物;
使用所述多个生物聚合物序列和所述组装生成要提供给经训练的深度学习模型的第一输入;
将所述第一输入提供给所述经训练的深度学习模型以获得对应的第一输出,其中,针对多个第一组装位置中的每个组装位置,所述第一输出指示一个或多个相应生物聚合物中的每一个存在于所述位置处的一个或多个可能性;
使用所述经训练的深度学习模型的所述第一输出来在所述多个第一组装位置处标识生物聚合物;以及
更新所述组装以在所述多个第一组装位置处指示所标识的生物聚合物,从而获得更新的组装。
46.根据权利要求45所述的至少一个非暂态计算机可读存储介质,其中,所述高分子包含蛋白质,所述多个生物聚合物序列包含多个氨基酸序列,并且所述组装在相应组装位置处指示氨基酸。
47.根据权利要求45或任一项其它前述权利要求所述的至少一个非暂态计算机可读存储介质,其中,所述高分子包含核酸,所述多个生物聚合物序列包含多个核苷酸序列,并且所述组装在相应组装位置处指示核苷酸。
48.根据权利要求47或任一项其它前述权利要求所述的至少一个非暂态计算机可读存储介质,其中:
所述组装在所述多个第一组装位置的第一个组装位置处指示第一核苷酸;
在所述多个第一组装位置处标识生物聚合物包括在所述第一组装位置处标识第二核苷酸;以及
所述更新组装包括更新所述组装以在所述第一组装位置处指示所述第二核苷酸。
49.根据权利要求47或任一项其它前述权利要求所述的至少一个非暂态计算机可读存储介质,其中,在更新所述组装以获得更新的组装之后,所述方法还包括:
将所述多个核苷酸序列与所述更新的组装比对;
使用所述多个核苷酸序列和所述更新的组装生成要提供给所述经训练的深度学习模型的第二输入;
将所述第二输入提供给所述经训练的深度学习模型以获得相应的第二输出,其中,针对多个第二组装位置的每个组装位置,所述第二输出指示一个或多个相应核苷酸中的每一个核苷酸存在于所述位置处的一个或多个可能性;
基于所述经训练的深度学习模型的所述第二输出,在所述多个第二组装位置处标识核苷酸;以及
更新所述更新的组装以在所述多个第二组装位置处指示所标识的核苷酸,从而获得第二更新的组装。
50.根据权利要求47或任一项其它前述权利要求所述的至少一个非暂态计算机可读存储介质,其中,所述方法还包括,将所述多个核苷酸序列与所述组装比对。
51.根据权利要求50或任一项其它前述权利要求所述的至少一个非暂态计算机可读存储介质,其中,所述多个核苷酸序列包含至少9个核苷酸序列。
52.根据权利要求47或任一项其它前述权利要求所述的至少一个非暂态计算机可读存储介质,其中,生成所述经训练的深度学习模型的所述第一输入包括:
选择所述多个第一组装位置;以及
基于所选择的所述多个第一组装位置生成所述第一输入。
53.根据权利要求52或任一项其它前述权利要求所述的至少一个非暂态计算机可读存储介质,其中,在所述组装中选择多个第一位置包括:
确定所述组装在多个第一组装位置处错误地指示核苷酸的可能性;以及
使用所确定的可能性来选择所述多个第一组装位置。
54.根据权利要求47或任一项其它前述权利要求所述的至少一个非暂态计算机可读存储介质,其中,生成要提供给所述经训练的深度学习模型的所述第一输入包括:将所述多个核苷酸序列中的相应核苷酸序列与所述组装进行比较。
55.根据权利要求47或任一项其它前述权利要求所述的至少一个非暂态计算机可读存储介质,其中,生成要提供给所述经训练的深度学习模型的第一输入以在所述多个第一组装位置的第一个组装位置处标识核苷酸包括:
针对在所述第一组装位置的邻域中的一个或多个组装位置的每一个处的多个核苷酸的每一个:
确定指示多个核苷酸序列的数量的计数,所述多个核苷酸序列指示所述核苷酸在所述位置处;
基于所述组装是否在所述位置处指示所述核苷酸来确定参考值;
确定指示所述计数与所述参考值之差的误差值;以及
将所述参考值和所述误差值包括在所述第一输入中。
56.根据权利要求55或任一项其它前述权利要求所述的至少一个非暂态计算机可读存储介质,其中,基于所述组装是否在所述位置处指示所述核苷酸来确定参考值包括:
当所述组装在所述位置处指示所述核苷酸时,确定所述参考值为第一值;以及
当所述组装在所述位置处不指示所述核苷酸时,确定所述参考值为第二值。
57.根据权利要求56或任一项其它前述权利要求所述的至少一个非暂态计算机可读存储介质,其中:
所述第一值是所述多个核苷酸序列的数量;以及
所述第二值为0。
58.根据权利要求55或任一项其它前述权利要求所述的至少一个非暂态计算机可读存储介质,其中,生成要提供给所述经训练的深度学习模型的所述第一输入包括将值布置到具有列的数据结构中,其中:
第一列保存针对所述第一组装位置处的多个核苷酸确定的参考值和误差值;以及
第二列保存针对所述第一组装位置的邻域中的一个或多个组装位置中的第二个组装位置处的多个核苷酸的参考值和误差值。
59.根据权利要求55或任一项其它前述权利要求所述的至少一个非暂态计算机可读存储介质,其中,所述第一组装位置的邻域中的一个或多个组装位置包括与所述第一组装位置分开的至少两个组装位置。
60.根据权利要求47或任一项其它前述权利要求所述的至少一个非暂态计算机可读存储介质,其中,针对所述多个核苷酸中的每个核苷酸,一个或多个相应生物聚合物中的每一个存在于所述组装位置处的一个或多个可能性包括:所述核苷酸存在于所述组装位置处的可能性;以及
在所述多个第一组装位置处标识生物聚合物包括:通过确定第一核苷酸存在于所述第一位置处的可能性大于多个核苷酸中的第二个核苷酸存在于所述第一组装位置处的可能性,将所述多个第一组装位置的第一个组装位置处的核苷酸标识多个核苷酸的第一个核苷酸。
61.根据权利要求47或任一项其它前述权利要求所述的至少一个非暂态计算机可读存储介质,其中,所述方法还包括:从所述多个核苷酸序列生成所述组装。
62.根据权利要求61或任一项其它前述权利要求所述的至少一个非暂态计算机可读存储介质,其中,从所述多个核苷酸序列生成所述组装包括:将来自所述多个核苷酸序列的一致序列确定为所述组装。
63.根据权利要求61或任一项其它前述权利要求所述的至少一个非暂态计算机可读存储介质,其中,从所述多个核苷酸序列生成所述组装包括:对多个核苷酸序列应用先重叠后扩展算法。
64.根据权利要求45或任一项其它前述权利要求所述的至少一个非暂态计算机可读存储介质,其中,所述方法还包括:
访问训练数据,所述训练数据包括从对参考高分子的测序获得的生物聚合物序列和所述参考高分子的预定组装;以及
使用所述训练数据来训练深度学习模型,以获得所述经训练的深度学习模型。
65.根据权利要求64或任一项其它前述权利要求所述的至少一个非暂态计算机可读存储介质,其中,所述参考高分子不同于所述高分子。
66.根据权利要求45或任一项其它前述权利要求所述的至少一个非暂态计算机可读存储介质,其中,所述深度学习模型包括卷积神经网络。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862671260P | 2018-05-14 | 2018-05-14 | |
US62/671,260 | 2018-05-14 | ||
US201862671884P | 2018-05-15 | 2018-05-15 | |
US62/671,884 | 2018-05-15 | ||
PCT/US2019/032065 WO2019222120A1 (en) | 2018-05-14 | 2019-05-13 | Machine learning enabled biological polymer assembly |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112437961A true CN112437961A (zh) | 2021-03-02 |
Family
ID=66669118
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980047341.5A Pending CN112437961A (zh) | 2018-05-14 | 2019-05-13 | 机器学习使能的生物聚合物组装 |
Country Status (10)
Country | Link |
---|---|
US (1) | US20190348152A1 (zh) |
EP (1) | EP3794596A1 (zh) |
JP (1) | JP2021523479A (zh) |
KR (1) | KR20210010488A (zh) |
CN (1) | CN112437961A (zh) |
AU (1) | AU2019270961A1 (zh) |
BR (1) | BR112020022257A2 (zh) |
CA (1) | CA3098876A1 (zh) |
MX (1) | MX2020012278A (zh) |
WO (1) | WO2019222120A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11664090B2 (en) * | 2020-06-11 | 2023-05-30 | Life Technologies Corporation | Basecaller with dilated convolutional neural network |
CA3214755A1 (en) * | 2021-04-09 | 2022-10-13 | Natalie CASTELLANA | Method for antibody identification from protein mixtures |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102460155A (zh) * | 2009-04-29 | 2012-05-16 | 考利达基因组股份有限公司 | 用于关于参考多核苷酸序列标注样本多核苷酸序列中的变异的方法和系统 |
CN103797486A (zh) * | 2011-06-06 | 2014-05-14 | 皇家飞利浦有限公司 | 用于组装核酸序列数据的方法 |
US20150169824A1 (en) * | 2013-12-16 | 2015-06-18 | Complete Genomics, Inc. | Basecaller for dna sequencing using machine learning |
CA2894317A1 (en) * | 2015-06-15 | 2016-12-15 | Deep Genomics Incorporated | Systems and methods for classifying, prioritizing and interpreting genetic variants and therapies using a deep neural network |
-
2019
- 2019-05-13 WO PCT/US2019/032065 patent/WO2019222120A1/en unknown
- 2019-05-13 CN CN201980047341.5A patent/CN112437961A/zh active Pending
- 2019-05-13 JP JP2020564123A patent/JP2021523479A/ja active Pending
- 2019-05-13 EP EP19727233.9A patent/EP3794596A1/en active Pending
- 2019-05-13 BR BR112020022257-7A patent/BR112020022257A2/pt unknown
- 2019-05-13 US US16/411,056 patent/US20190348152A1/en active Pending
- 2019-05-13 AU AU2019270961A patent/AU2019270961A1/en active Pending
- 2019-05-13 KR KR1020207035288A patent/KR20210010488A/ko unknown
- 2019-05-13 CA CA3098876A patent/CA3098876A1/en active Pending
- 2019-05-13 MX MX2020012278A patent/MX2020012278A/es unknown
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102460155A (zh) * | 2009-04-29 | 2012-05-16 | 考利达基因组股份有限公司 | 用于关于参考多核苷酸序列标注样本多核苷酸序列中的变异的方法和系统 |
CN103797486A (zh) * | 2011-06-06 | 2014-05-14 | 皇家飞利浦有限公司 | 用于组装核酸序列数据的方法 |
US20150169824A1 (en) * | 2013-12-16 | 2015-06-18 | Complete Genomics, Inc. | Basecaller for dna sequencing using machine learning |
CA2894317A1 (en) * | 2015-06-15 | 2016-12-15 | Deep Genomics Incorporated | Systems and methods for classifying, prioritizing and interpreting genetic variants and therapies using a deep neural network |
Non-Patent Citations (10)
Title |
---|
ALLEX C F, ET AL.: "Neural network input representations that produce accurate consensus sequences from DNA fragment assemblies", BIOINFORMATICS, vol. 15, no. 9, 1 September 1999 (1999-09-01), pages 723 - 728, XP002267211, DOI: 10.1093/bioinformatics/15.9.723 * |
HIRANUMA N, ET AL.: "DeepATAC: A deep-learning method to predict regulatory factor binding activity from ATAC-seq signals", COLD SPRING HARBOR LABORATORY, vol. 33, no. 14, 12 July 2017 (2017-07-12), pages 1 - 5 * |
KELLEY D R,ET AL: "Basset: learning the regulatory code of the accessible genome with deep convolutional neural networks", GENOME RESEARCH, vol. 26, no. 7, 1 July 2016 (2016-07-01), pages 990 - 999, XP055507160, DOI: 10.1101/gr.200535.115 * |
KOH P W, ET AL.: "Denoising genome-wide histone ChIP-seq with convolutional neural networks", BIOINFORMATICS, vol. 33, no. 14, 24 July 2017 (2017-07-24), pages 1 - 9 * |
LOMAN N J, ET AL.: "A complete bacterial genome assembled de novo using only nanopore sequencing data", BIORXIV, 11 March 2015 (2015-03-11), pages 1 - 30 * |
LOMAN N J,ET AL.: "A complete bacterial genome assembled de novo using only nanopore sequencing data", NATURE METHODS, vol. 12, no. 8, 1 August 2015 (2015-08-01), pages 733 * |
LUO R B, ET AL.: "Clairvoyante: a multi-task convolutional deep neural network for variant calling in Single Molecule Sequencing", BIORXIV, vol. 10, 28 April 2018 (2018-04-28), pages 1 - 20 * |
RYAN P, ET AL.: "Creating a universal SNP and small indel variant caller with deep neural networks", BIORXIV, 21 December 2016 (2016-12-21), pages 1 - 13 * |
UMAROV R K ,ET AL.: "Recognition of prokaryotic and eukaryotic promoters using convolutional deep learning neural networks", PLOS ONE, vol. 12, no. 2, 22 March 2017 (2017-03-22), pages 1 - 12 * |
VASER R,ET AL.: "Fast and accurate de novo genome assembly from long uncorrected reads", GENOME RESEARCH, vol. 27, no. 5, 1 May 2017 (2017-05-01), pages 737 - 746, XP055608901, DOI: 10.1101/gr.214270.116 * |
Also Published As
Publication number | Publication date |
---|---|
CA3098876A1 (en) | 2019-11-21 |
JP2021523479A (ja) | 2021-09-02 |
US20190348152A1 (en) | 2019-11-14 |
KR20210010488A (ko) | 2021-01-27 |
WO2019222120A1 (en) | 2019-11-21 |
AU2019270961A1 (en) | 2020-11-19 |
MX2020012278A (es) | 2021-01-29 |
EP3794596A1 (en) | 2021-03-24 |
BR112020022257A2 (pt) | 2021-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102433458B1 (ko) | 심층 컨볼루션 신경망의 앙상블을 트레이닝하기 위한 반감독 학습 | |
US20190318806A1 (en) | Variant Classifier Based on Deep Neural Networks | |
US20200176082A1 (en) | Analysis of nanopore signal using a machine-learning technique | |
CN112437961A (zh) | 机器学习使能的生物聚合物组装 | |
CN112270953A (zh) | 基于bd单细胞转录组测序数据的分析方法、装置及设备 | |
US11861491B2 (en) | Deep learning-based pathogenicity classifier for promoter single nucleotide variants (pSNVs) | |
CN108427865B (zh) | 一种预测LncRNA和环境因素关联关系的方法 | |
US20230298698A1 (en) | Methods and systems for sequence generation and prediction | |
Zaman et al. | Codon based back propagation neural network approach to classify hypertension gene sequences | |
CN109411020A (zh) | 利用长测序读段进行全基因组序列补洞的方法 | |
Zych et al. | reGenotyper: Detecting mislabeled samples in genetic data | |
CN107516020B (zh) | 序列位点重要度的确定方法、装置、设备及存储介质 | |
Middendorf et al. | Motif discovery through predictive modeling of gene regulation | |
CN111783088A (zh) | 一种恶意代码家族聚类方法、装置和计算机设备 | |
US10937523B2 (en) | Methods, systems and computer readable storage media for generating accurate nucleotide sequences | |
CN114627964B (zh) | 一种基于多核学习预测增强子及其强度分类方法及分类设备 | |
Fan et al. | Identification of vesicle transport proteins via hypergraph regularized k-local hyperplane distance nearest neighbour model | |
WO2022159635A1 (en) | Systems and methods for evaluation of structure and property of polynucleotides | |
US10216899B2 (en) | Sentence construction for DNA classification | |
Ceroni et al. | A combination of support vector machines and bidirectional recurrent neural networks for protein secondary structure prediction | |
Kalakoti et al. | Modulation of DNA-protein Interactions by Proximal Genetic Elements as Uncovered by Interpretable Deep Learning | |
Fujimoto et al. | Learning the Language of Genes: Representing Global Codon Bias with Deep Language Models | |
Shaw | Prediction of Isoform Functions and Interactions with ncRNAs via Deep Learning | |
JPWO2019222120A5 (zh) | ||
Munteanu | Computational models to investigate binding mechanisms of regulatory proteins |
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 |