Methods and systems for detecting variants in sequencing data
By employing a transformer-based generative machine learning model to predict haplotypes and variants in NGS data, the method effectively addresses the issue of false positive detections in existing tools, achieving high accuracy and reducing manual review burdens.
Patent Information
- Application Number
- PCT/US2024/049575
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-10-03
- Filing Date
- 2024-10-02
- Publication Date
- 2025-04-10
AI Technical Summary
Existing variant detection tools in next-generation sequencing (NGS) data generate thousands of false positive detections, leading to a significant manual review burden due to their reliance on statistical algorithms and heuristic techniques.
The use of a generative machine learning model, specifically a transformer-based deep learning model, to convert sequencing data into input tokens and predict two haplotypes for a contiguous genomic region, thereby identifying variants directly from the data.
This approach significantly reduces false positive variant calls, achieving accuracy comparable to state-of-the-art methods, and allows for the reconstruction of complete haplotypes from aligned NGS reads.
Smart Images

Figure US2024049575_10042025_PF_FP_ABST
Abstract
Description
METHODS AND SYSTEMS FOR DETECTING VARIANTS IN SEQUENCING DATACROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority to and the benefit of United States Provisional Patent Application No. 63 / 587,684, filed on October 3, 2023, which is hereby incorporated by reference in its entirety.BACKGROUND
[0002] Detection of germline variants in next-generation sequencing data is an essential component of modern genomics analysis. Identifying variants in a sequencing data is one of the most common and important tasks in modem genomics. Variant detection tools typically rely on statistical algorithms to identify variants in sequencing data and are often coupled with heuristic techniques and thresholds to maximize accuracy. Existing solutions generate thousands of false positive detections in a typical human whole genome, creating a significant manual review burden.BRIEF SUMMARY
[0003] This summary is provided to introduce a selection of concepts that are further described below in the detailed description. This summary is not intended to identify key or essential features of the claimed subject matter, nor is it intended to be used as an aid in limiting the scope of the claimed subject matter.
[0004] Some implementations relate to a method. The method includes converting sequencing data into input tokens, wherein the input tokens are columns of bases aligned to a reference genome. The method includes providing, to a generative machine learning model, each input token. The method includes providing, using the generative machine learning model, a prediction of two haplotypes in the sequencing data for a set of input tokens corresponding to a single contiguous genomic region.
[0005] Some implementations relate to a device. The device includes a memory to store data and instructions; and a processor operable to communicate with the memory, wherein the processor is operable to: convert sequencing data into input tokens, wherein the input tokens are columns of bases aligned to a reference genome; provide, to a generative machine learning model, each input token; and provide, using the generative machinelearning model, a prediction of two haplotypes in the sequencing data for a set of input tokens corresponding to a single contiguous genomic region.
[0006] Some implementations relate to a method. The method includes receiving a sequence of input tokens that include information for a reference genome. The method includes identifying candidate regions in the input tokens. The method includes generating a prediction of two haplotypes for the candidate regions. The method includes identifying a variant in two haplotypes. The method includes outputting a prediction with the two haplotypes and the variant.
[0007] Some implementations relate to a generative machine learning model. The generative machine learning model includes a memory to store data and instructions; and a processor operable to communicate with the memory, wherein the processor is operable to: receive a sequence of input tokens that include information for a reference genome; identify candidate regions in the input tokens; generate a prediction of two haplotypes for the candidate regions; identify a variant in two haplotypes; output a prediction with the two haplotypes and the variant.
[0008] Some implementations relate to a device. The device includes a memory to store data and instructions; and a processor operable to communicate with the memory, wherein the processor is operable to: receive a sequence of input tokens that include information for a reference genome; identify candidate regions in the input tokens; generate a prediction of two haplotypes for the candidate regions; identify a variant in two haplotypes; output a prediction with the two haplotypes and the variant.
[0009] Additional features and advantages of implementations of the disclosure will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by the practice of such implementations. The features and advantages of such implementations may be realized and obtained by means of the instruments and combinations particularly pointed out in the appended claims. These and other features will become more fully apparent from the following description and appended claims, or may be learned by the practice of such implementations as set forth hereinafter.BRIEF DESCRIPTION OF DRAWINGS
[0010] In order to describe the manner in which the above-recited and other features of the disclosure can be obtained, a more particular description will be rendered by reference to specific implementations thereof which are illustrated in the appended drawings. For betterunderstanding, the like elements have been designated by like reference numbers throughout the various accompanying figures. While some of the drawings may be schematic or exaggerated representations of concepts, at least some of the drawings may be drawn to scale. Understanding that the drawings depict some example implementations, the implementations will be described and explained with additional specificity and detail through the use of the accompanying drawings in which:
[0011] Fig. 1 is an example environment for detecting variants in sequencing genetic material in accordance with implementations of the present disclosure.
[0012] Fig. 2 illustrates an example generative machine learning model architecture in accordance with implementations of the present disclosure.
[0013] Fig. 3 illustrates an example method for a variant detection process in accordance with implementations of the present disclosure.
[0014] Fig. 4 illustrates an example method for predicting haplotypes in sequencing data in accordance with implementations of the present disclosure.
[0015] Fig. 5 illustrates components that may be included within a computer system in accordance with implementations of the present disclosure.DETAILED DESCRIPTION
[0016] This disclosure generally relates to variant detection in Next-Generation Sequencing (NGS) data. Identifying the DNA sequence variants in a sample is one of the most common and important tasks in modem genomics. Current Next-Generation Sequencing (NGS) DNA sequencers produce billions of short reads of sequenced DNA. In order to be useful, these short reads must be used to determine which mutations ('variants' in the bioinformatics business) are present in the sequenced sample. Variants come in all shapes and sizes, but most variants are small - less than about 50 or so base pairs, and each human genome contains 4-5 million genetic variants. Accurate identification of all the variants is difficult, because even a very small false positive rate can lead to thousands of false positive variant calls, which in turn create big problems for subsequent downstream analysis.
[0017] Tools that aim to identify variants must overcome several challenges to produce an accurate set of variant calls. For instance, the sequenced reads themselves may contain errors in the form of miscalled bases or PCR-induced repeat length errors, and the tools used to align reads to the reference genome may produce incorrect mapping.
[0018] In addition, large or complex sequence of each candidate (or pairs of candidates in the diploid case) variants may be obscured by limitations in the read alignment algorithm, and often require a sophisticated assembly of reads to identify. Reconciling artifacts produced during lab preparation procedures, sequencing, base calling, and read alignment is a significant technical challenge, and existing variant detection tools employ a variety of statistical and heuristic techniques to attempt to reconcile the artifacts.
[0019] Variant discovery tools must address two challenges. First, callers must identify potential alleles in a region. Second, given a set of potential alleles, the variant discovery tools must assess the likelihood of each candidate (or pairs of candidates in the diploid case) to determine which should be included in the caller output.
[0020] Existing variation detection tools generate candidate alleles and utilize several ad- hoc heuristics and thresholds to determine which alleles are most likely. Some existing variation detection tools have incorporated elements of deep learning into the allele likelihood calculation or allele generation steps. Existing variant detection tools that utilize deep learning techniques employ convolutional neural nets (CNNs) as the primary architecture. In variant detectors, CNNs are often used in an image classification context, such that the primary output is a probability distribution over classes representing, for instance, possible genotypes. However, CNN architectures are less well suited to candidate allele generation.
[0021] The present disclosure provides systems and methods for variant detection in Next- Generation Sequencing (NGS) data. The methods and systems detect small variants (mutations less than about 50 base pairs in size) in NGS data. The methods and systems use a variant detection model to predict the true sample sequences from NGS reads. In some implementations, the method and systems predict the two germline haplotypes present in the sample. In some implementations, the methods and systems use a single end- to-end generative transformer deep learning model to produce predictions. Generative transformer machine learning models can create arbitrarily long or complex output sequences, do not require a separate allele generation step, and can be trained end-to-end to produce the desired output.
[0022] The present disclosure includes a number of practical applications that provide benefits and / or solve problems associated with variant detection in NGS data. Examples of these applications and benefits are discussed in further detail below. One example benefit of the systems and methods of the present disclosure is producing variant calls that are close to state-of-the art in terms of accuracy. By framing variant detection as a generative Alproblem and using modern, large transformer-based deep learning models to learn to predict sequences, the methods and systems produce accurate variant calls.
[0023] Another example benefit is using a single deep learning model to reconstruct complete haplotypes directly from aligned NGS reads. In some implementations, the inputs to the machine learning model are the series of bases aligning to individual reference positions, and the outputs from the machine learning model are the predicted haplotypes. Each output token of the machine learning model is a 4-mer of nucleotide bases, and multiple output tokens are generated to represent full haplotype sequences.
[0024] Generative artificial intelligence (Al) is used to predict variants in sequencing data. For example, a trained deep learning model is used to produce predictions. In some implementations, a method for detecting small variants in sequencing data is described. For example, the small variants in sequencing data may include mutations less than about 50 base pairs in size. In some implementations, the method is applied to short read nextgeneration sequencing (NGS) data.
[0025] In some implementations, a single, transformer-based deep neural network, is used for detecting variants in sequencing data. In these implementations, performance is primarily determined by model size and the amount and quality of training data, which are relatively easy to scale.
[0026] In some implementations, a method for detecting variants in sequencing genetic material includes converting sequencing data into input tokens; encoding base features; embedding features; flatten features; encoding positionally; transforming encoders; and predicting haplotypes.
[0027] In some implementations, a method for training a sequence variant detection model includes generating input tensors; after the input tensors are generated, receiving alignment files from a plurality of Whole Genome Sequenced (WGS) samples; and determining a variant region from the plurality of WGS samples. For example, the alignment files are “Genome in a Bottle” samples where all variants are known.
[0028] One technical advantage of the systems and methods of the present disclosure is using a trained generative machine learning model to generate the predicted haplotypes and variants in the sample. In some implementations, the generative machine learning model employs 2-dimensional (2D) encoding, allowing the generative machine learning model to differentiate across both the token (position) and read dimensions. In some implementations, the generative machine learning model uses two parallel decoders in the generative machine learning model to generate the two haplotypes predicted by thegenerative machine learning model. The two decoders do not communicate, leaving each decoder to decide which haplotype to generate, resulting in improved accuracy of the generated haplotypes. Another technical advantage of the systems and methods of the present disclosure is improved accuracy in predicting variants in sequencing data. The generative machine learning model encompasses both the candidate allele generation and evaluation components, allowing the generative machine learning model to be trained to produce accurate haplotype predictions.
[0029] Fig. 1 illustrates an example environment 100 for detecting variants in sequencing genetic material using a variant detection model 102. The variant detection model 102 receives the sequencing data 10 and a reference genome 14 and outputs the predicted haplotypes 22 in the sequencing data 10. The reference genome 14 is any full sequence of all of the nucleotides present is a representative sample, or collection of samples, from a population. A reference genome must include the sequence of bases present on each chromosome of a representative from the population. For humans, these are typically produced by the Human Genome Reference Consortium, but they need not be In some implementations, the reference genome 14 is obtained from “Genome in a Bottle” samples where all variants are known.
[0030] The sequencing data 10 is a sequencing read of extracted DNA in small fragments. A sequencing read is an output from a DNA sequencing instrument that is a (possibly inaccurate) prediction of the nucleotide bases that occur in some contiguous genomic region. In some implementations, the extracted DNA is sheared into fragments of about 200 to 300 base pairs and sequenced into about 150 base pairs. The sequencing data 10 is aligned to the reference genome 14. In some implementations, the sequencing data 10 is short NGS reads. A short NGS read typically refers to a read that is several hundred base pairs, or less. For example, a short NGS read ranges from about 50 to about 300 base pairs.
[0031] The variant detection model 102 receives the sequencing data 10. In some implementations, input tokens 12 are generated from the sequencing data 10. The input tokens 12 are columns of bases aligned to the reference genome 14. For example, one input token 12 corresponds to a single alignment column in the sequencing data 10.
[0032] The variant detection model 102 identifies candidate regions 16 where a potential variant may exist in the sequencing data 10. In some implementations, a candidate region 16 is any genomic position in which at least three reads contain a base that differs from the reference genome 14 or an indel.
[0033] The variant detection model 102 assigns a haplotype 20 to the candidate region 16. In some implementations, the variant detection model 102 randomly chooses the haplotype 20 to assign to the candidate region 16. The variant detection model 102 computes the loss function on the haplotype 20 and uses the loss function to determine the predicted haplotype 22. In some implementations, the predicted haplotypes 22 include two haplotypes (haplotype 1 and haplotype 2). In some implementations, the predicted haplotypes 22 are the two germline haplotypes present in the sample. In some implementations, the predicted haplotypes 22 are nucleotide Aimers representing haplotypes.
[0034] The variant detection model 102 converts the predicted haplotypes 22 into variant calls. In some implementations, the variant detection model 102 identifies variants 18 in the predicted haplotypes 22. In some implementations, the variant detection model 102 does not identify variants 18 in the predicted haplotypes 22. For example, the variants 18 are determined by the variant detection model 102 based on variant type, variant size, or genomic content. In some implementations, the variant size is small. For example, small variants are mutations less than about 50 base pairs in size. In some implementations, a variant type includes an insertion in the short read NGS data. In some implementations, a variant type includes a deletion in the short read NGS data. In some implementations, a variant type includes MultiNucleotide variants (MNVs). In some implementations, the genomic context is easy or low complexity. In some implementations, a variant type includes Single nucleotide variants (SNVs).
[0035] The variant detection model 102 outputs the predicted haplotypes 22. In some implementations, the output includes the variant 18 identified for the haplotypes 22. The predicted haplotypes 22 may be used for downstream tasks and analysis.
[0036] In some implementations, the detection model 102 is a generative machine learning model. One example of the generative machine learning model is a custom large language model (LLM) trained to detect variants 18 in sequencing data 10 and output the predicted haplotypes 22 in the sequencing data 10.
[0037] In some implementations, one or more computing devices (e.g., servers and / or devices) are used to perform the processing of the environments 100. The one or more computing devices may include, but are not limited to, server devices, cloud virtual machines, personal computers, a mobile device, such as, a mobile telephone, a smartphone, a PDA, a tablet, or a laptop, and / or a non-mobile device. The features and functionalities discussed herein in connection with the various systems may be implemented on one computing device or across multiple computing devices. For example, the variant detectionmodel 102 is implemented on the single computing device. Moreover, in some implementations, one or more subcomponents of the feature and functionalities discussed herein may be implemented are processed on different server devices of the same or different cloud computing networks. For example, the variant detection model 102 is implemented on different server devices. In this way, the environment 100 may be a cloud computing environment, and the variant detection model 102 may be implemented across one or more devices of the cloud computing environment in order to leverage the processing capabilities, memory capabilities, connectivity, speed, etc., that such cloud computing environments offer in order to facilitate the features and functionalities described herein.
[0038] In some implementations, each of the components of the environment 100 is in communication with each other using any suitable communication technologies. In addition, while the components of the environment 100 are shown to be separate, any of the components or subcomponents may be combined into fewer components, such as into a single component, or divided into more components as may serve a particular implementation. In some implementations, the components of the environment 100 include hardware, software, or both. For example, the components of the environment 100 may include one or more instructions stored on a computer-readable storage medium and executable by processors of one or more computing devices. When executed by the one or more processors, the computer-executable instructions of one or more computing devices can perform one or more methods described herein. In some implementations, the components of the environment 100 include hardware, such as a special purpose processing device to perform a certain function or group of functions. In some implementations, the components of the environment 100 include a combination of computer-executable instructions and hardware.
[0039] Fig. 2 illustrate an example architecture of a generative machine learning model 200. In some implementations, the generative machine learning model 200 is used as the variant detection model 102 (Fig. 1) to generate the predicted haplotypes 22 (Fig. 1). The generative machine learning model 200 consists of a single transformer-based encoder 202 connected to two transformer decoders 204, 206, one for each haplotype. For example, the decoder 204 is for haplotype 1 and the decoder 206 is for haplotype 2.
[0040] The input tokens 12 are the collection of bases that align to a given reference genome 14 (Fig. 1). The generative machine learning model 200 adds an additional fully connected layer prior to the encoders 202 which embeds the encoded base calls in ddimensions. In some implementations, d= 12. The embedded base calls are flattened along the read dimension, producing an input token with size dr where r is the number of reads. In some implementations, r = 150. r defines the maximum number of reads that can be considered in a single window. If fewer than r reads are available the input tensor is 0- padded to r, and if more than r reads are present, the reads are uniformly down sampled to r. Instead of the typical 1 -dimensional positional encoding, the generative machine learning model 200 employs a 2-dimensional (2D) encoding, allowing the generative machine learning model 200 to differentiate across both the token (position) and read dimensions.
[0041] In some implementations, input tensors are generated by selecting a 150bp region from a set of aligned reads in a Binary Alignment Map (BAM) / Compressed Reference- oriented Alignment Map (CRAM) format. For each region, all reads overlapping the window are obtained from the corresponding alignment file. Regions containing more than the maximum number of reads (e.g., 150 reads) were down sampled to the maximum size. Reads were sorted by the reference coordinate of the first aligned base. For each aligned base in the selected reads, ten features are encoded; the first four features are the one-hot encoded base call, followed by base quality, two flags indicating if base consumed reference base (i.e. was not an insertion) or consumed a sequence read base (was not a deletion), and additional flags indicating sequence read direction, clipping status, and mapping quality. Insertions or deletions may be handled in a similar manner. In addition to sequenced reads, the first row in each encoded region was the reference sequence. For the first row, a base quality of 100 is inserted for every position without any of the other flags set. Resulting tensors had dimension [g, r, 10], where g indexes genomic positions, r indexes reads, and 10 represents the number of features. Positions in the input without a corresponding aligned base were set to zero.
[0042] In some implementations, the generative machine learning model 200 uses two parallel decoders 204, 206, each of which produces output tokens 208, 210 representing a single haplotype. For example, the decoder 204 produces output token 208 that represents haplotype 1 and the decoder 206 produces output token 210 that represents haplotype 2. In some implementations, output tokens 208, 210 are Aimers of length 4, and the decoders 204, 206 do not share parameters. As there are four possible bases at each position both decoders 204, 206 have model dimension 44= 256. The encoders 202 and the decoders 204, 206 do not necessarily have equal dimensions. The encoder logits are converted to dimension 256 with a single linear layer. A 1 -dimensional positional encoding is applied to the encoder logits prior to decoding.
[0043] The generative machine learning model 200 is trained to predict small variants in short read NGS data. For example, small variants are mutations less than about 50 base pairs in size. In some implementations, small variants include insertions in the short read NGS data. In some implementations, the small variants include deletions in the short read NGS data. In some implementations, the small variants include MultiNucleotide variants (MNVs). In some implementations, the small variants include Single nucleotide variants (SNVs). In some implementations, the training data is alignment files (BAMs) obtained from 37 Whole Genome Sequences (WGS) from seven Genome-in-a-Bottle cell lines where all variants are known. The training data includes selected training regions from each alignment file. For example, 1.48 million regions from each alignment file are selected for training regions resulting in a full training data set of 54.8 million training regions used to train the generative machine learning model 200.
[0044] In some implementations, the regions to include for the training data are selected in a biased manner, prioritizing regions containing variants and regions with multiple or complex variants. Regions of the reference genome overlapping the high-confidence regions from Genome-in-a-Bottle are subdivided into 150bp windows, and these regions labelled according to the presence of variants. Separate labels are generated for regions containing a single SNV, deletion, or insertion, as well as regions containing multiple insertion-deletions, or those containing variants intersecting low-complexity or poor mappability regions. True negative regions where no known variants are present are also included in the training data. In regions containing more than 150 overlapping reads, the reads are repeatedly down sampled to generate multiple training regions. One example of training data includes training data obtained from the human autosomes 1-20 and hold out chromosomes 21 and 22 for model evaluation.
[0045] In some implementations, target haplotype sequences are produced by obtaining truth variants from the BAMs (e.g., the Genome-in-a-Bottle VCF files) for each sample and inserting the variants into the reference sequence. Two sequences are generated for each region, one representing each haplotype. In regions where phasing of the variants is ambiguous, the reads in the sequenced sample may be examined to determine phase status. All possible genotypes (pairs of haplotypes) are generated, and reads are aligned to the possible haplotypes. The highest scoring genotypes are selected as the most likely phasing. In some implementations, the phasing procedure is applied for variants less than lOObp apart, otherwise, the region is discarded.
[0046] In some implementations, the generative machine learning model 200 produces two haplotypes (haplotype 1 and haplotype 2) that is matched to the corresponding target haplotypes. Haplotypes have no intrinsic order. For example, if the model produces haplotypes (Ap , Bp ) and the target haplotypes are (BT , AT ), the generative machine learning model 200 computes the loss and corresponding gradients for L(Ap , AT ) + L(BP , BT ), where L is the loss function. By computing the loss for each haplotype configuration using two loss functions, the generative machine learning model 200 is not penalized for producing haplotypes with a SNV on haplotype A when the targets have the same SNV on haplotype B. The generative machine learning model 200 backpropagates gradients (and model parameters updated) for the configuration that produces the lowest loss.
[0047] By using quality training data and using two loss functions, the generative machine learning model 200 is able to produce accurate haplotype predictions in the NGS data. The generative machine learning model 200 fully encompasses the candidate allele generation and evaluation components, allowing the generative machine learning model 200 to be optimized through training to predict accurate haplotypes.
[0048] Fig. 3 illustrates an example method 300 for a variant detection process. In some implementations, the method 300 is performed by the variant detection model 102 (Fig. 1). In some implementations, the method 300 is performed by the generative machine learning model 200 (Fig. 2).
[0049] At 302, the method 300 includes identifying candidate regions. Given an alignment file in BAM or CRAM format, the generative machine learning model 200 identifies regions where a potential variant might exist. In some implementations, any genomic position in which at least three reads contain a base that differs from the reference sequence or an indel are flagged as potentially containing a variant. Regions are padded by four base pairs in both directions, and regions closer than lOObp may be merged into a single region.
[0050] At 304, the method 300 includes generated haplotypes from the candidate regions. For a single candidate region containing suspected variants, the generative machine learning model 200 performs multiple overlapping forward passes of the generative machine learning model 200 with step size k. In some implementations, k equals 25 beginning 100 bases upstream of the potential variant. In some implementations, the generative machine learning model 200 uses a greedy decoding procedure to generate haplotypes, selecting the single 4-mer with the highest predicted score on each iteration until the predicted sequence spans the entire candidate region or until 374-mers (148 bases) are generated.
[0051] At 306, the method 300 includes aligning haplotypes to the reference sequence and identifying variant reference genomes. The generative machine learning model 200 aligns each haplotype generated to the reference sequence, and any mismatching positions are converted to variant calls.
[0052] At 308, the method 300 includes resolving haplotype configurations. After variants are collected across multiple windows, the generative machine learning model 200 merges the results attempting to minimize the number of conflicting calls between windows. In some implementations, the generative machine learning model 200 uses a majority -rules algorithm to merge the variants collected across multiple windows. For example, if the generative machine learning model 200 finds a variant to be heterozygous in 2 windows and homozygous in one window, the output variant is predicted as heterozygous by the generative machine learning model 200.
[0053] At 310, the method 300 includes collecting final variants and features. For each variant, the generative machine learning model 200 records the number of windows in which each variant is detected, the number of variants in cis and trans, the probability associated with the A mer containing the variant bases, and the position of the variant within each window.
[0054] At 312, the method 300 includes computing final variants quality. In some implementations, the generative machine learning model 200 applies a post-hoc random forest classifier on the final variants. The random forest classifier is trained to discriminate true and false-positive variant calls. The resulting score is used by the generative machine learning model 200 as a final variant quality score suitable for tuning the tradeoff between sensitivity, precision, and the false-discovery rate (FDR). For example, higher cutoffs correspond to lower sensitivity but improved FDR, which may be desirable in applications that require high specificity.
[0055] In some implementations, the generative machine learning model 200 outputs the two haplotypes, any predicted variants for the haplotypes, and the quality score for the predicted variants. For example, the generative machine learning model 200 outputs Haplotype A with a predicted variant 0 with a quality score of 0.918 and a predicted variant 1 with a quality score of 0.925, and outputs Haplotype B without any predicted variants.
[0056] The method 300 provides increased accuracy, sensitivity, and precision of predicted haplotypes and variants for a NGS read.
[0057] Fig. 4 illustrates an example method 400 for predicting haplotypes in sequencing data. The actions of the method 400 are discussed below in reference to Figs. 1-3.
[0058] At 402, the method 400 includes receiving, at a generative machine learning model, a sequence of input tokens that include information for a reference genome. The sequencing data 10 is converted into input tokens 12. The sequencing data 10 is a sequencing read of extracted DNA in small fragments. In some implementations, the sequencing data 10 is short NGS reads. A short NGS read typically refers to a read that is several hundred base pairs, or less. In some implementations, the input tokens 12 are columns of bases aligned to a reference genome. In some implementations, the reference genome 14 is obtained from samples where all variants are known. In some implementations, the sequencing data is short Next-Generation Sequencing (NGS).
[0059] The generative machine learning model 200 receives each input token 12. In some implementations, the generative machine learning model 200 encodes base features into each input token 12, embeds features into each input token 12, flatten features of each input token 12, and positionally encodes each input token 12. In some implementations, the generative machine learning model 200 uses a custom two dimensional (2D) positional encoding for the input tokens 12.
[0060] At 404, the method 400 includes identifying, by the generative machine learning model, candidate regions in the input tokens. The generative machine learning model 200 identifies candidate regions 16 in the sequencing data 10. In some implementations, the candidate regions 16 are identified at a genomic position where at least three reads contain a base that differs from the reference genome 14.
[0061] At 406, the method 400 includes generating, by the generative machine learning model, a prediction of two haplotypes in the candidate regions. The generative machine learning model 200 provides a prediction of two haplotypes (e.g., haplotype 1 and haplotype 2) in the sequencing data 10 for the candidate regions 16. In some implementations, the generative machine learning model 200 uses two decoders (e.g., decoder 204, decoder 206) to generate two different haplotypes (e.g., haplotype 1 and haplotype 2) predicted for the candidate regions 16.
[0062] The generative machine learning model 200 generates two haplotypes (e.g., haplotype 1 and haplotype 2) for the variant 18. In some implementations, the generative machine learning model 200 uses a first decoder (e.g., the decoder 204) to output a first haplotype (e.g., the haplotype 1) and uses a second decoder (e.g., the decoder 206) to output a second haplotype (e.g., the haplotype 2).
[0063] In some implementations, the generative machine learning model 200 uses two parallel decoders (e.g., the decoders 204, 206) to generate the predicted two haplotypes(e.g., the haplotype 1 and the haplotype 2). The two decoders do not communicate, leaving each decoder to decide which haplotype to generate, resulting in improved accuracy of the generated haplotypes.
[0064] In some implementations, the generative machine learning model 200 uses a first loss function for a first decoder (e.g., decoder 204) for a prediction of a first haplotype (e.g., haplotype 1) generated by the first decoder and uses a second loss function for a second decoder (e.g., decoder 206) for a prediction of a second haplotype (e.g., haplotype 2) generated by the second decoder. In some implementations, the generative machine learning model 200 is trained using training data obtained from thirty-seven Whole Genome Sequences (WGS). By using quality training data and using two loss functions, the generative machine learning model 200 is able to produce accurate haplotype predictions in the input tokens 12.
[0065] At 408, the method 400 includes identifying, by the generative machine learning model, a variant in the two haplotypes. The generative machine learning model 200 identifies a variant 18 in the two haplotypes (e.g., haplotype 1 and haplotype 2). In some implementations, the variant 18 is determined by one or more of variant type, variant size, or genomic context. For example, variant type includes MultiNucleotide variants (MNVs), a deletion, or an insertion. In some implementations, the variant size is small.
[0066] At 410, the method 400 includes outputting, by the generative machine learning model, a prediction with the two haplotypes. The generative machine learning model 200 outputs a prediction with the two haplotypes (e.g., haplotype 1 and haplotype 2). In some implementations, the predicted haplotypes 22 output by the generative machine learning model 200 are used for downstream tasks or further analysis.
[0067] The method 400 uses the generative machine learning model 200 to provide increased accuracy, sensitivity, and precision of predicted haplotypes in sequencing data.
[0068] Fig. 5 illustrates components that may be included within a computer system 500. One or more computer systems 500 may be used to implement the various methods, devices, components, and / or systems described herein.
[0069] The computer system 500 includes a processor 501. The processor 501 may be a general-purpose single or multi-chip microprocessor (e.g., an Advanced RISC (Reduced Instruction Set Computer) Machine (ARM)), a special purpose microprocessor (e.g., a digital signal processor (DSP)), a graphics processing unit (GPU), a microcontroller, a programmable gate array, etc. The processor 501 may be referred to as a central processing unit (CPU). Although just a single processor 501 is shown in the computer system 500 ofFig. 5, in an alternative configuration, a combination of processors (e.g., an ARM and DSP) could be used.
[0070] The computer system 500 also includes memory 503 in electronic communication with the processor 501. The memory 503 may be any electronic component capable of storing electronic information. For example, the memory 503 may be embodied as randomaccess memory (RAM), read-only memory (ROM), magnetic disk storage mediums, optical storage mediums, flash memory devices in RAM, on-board memory included with the processor, erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM) memory, registers, and so forth, including combinations thereof.
[0071] Instructions 505 and data 507 may be stored in the memory 503. The instructions 505 may be executable by the processor 501 to implement some or all of the functionality disclosed herein. Executing the instructions 505 may involve the use of the data 507 that is stored in the memory 503. Any of the various examples of modules and components described herein may be implemented, partially or wholly, as instructions 505 stored in memory 503 and executed by the processor 501. Any of the various examples of data described herein may be among the data 507 that is stored in memory 503 and used during execution of the instructions 505 by the processor 501.
[0072] A computer system 500 may also include one or more communication interfaces 509 for communicating with other electronic devices. The communication interface(s) 509 may be based on wired communication technology, wireless communication technology, or both. Some examples of communication interfaces 509 include a Universal Serial Bus (USB), an Ethernet adapter, a wireless adapter that operates in accordance with an Institute of Electrical and Electronics Engineers (IEEE) 802.11 wireless communication protocol, a Bluetooth® wireless communication adapter, and an infrared (IR) communication port.
[0073] A computer system 500 may also include one or more input devices 511 and one or more output devices 513. Some examples of input devices 511 include a keyboard, mouse, microphone, remote control device, button, joystick, trackball, touchpad, and light pen. Some examples of output devices 513 include a speaker and a printer. One specific type of output device that is typically included in a computer system 500 is a display device 515. Display devices 515 used with embodiments disclosed herein may utilize any suitable image projection technology, such as liquid crystal display (LCD), light-emitting diode (LED), gas plasma, electroluminescence, or the like. A display controller 517 may also beprovided, for converting data 507 stored in the memory 503 into text, graphics, and / or moving images (as appropriate) shown on the display device 515.
[0074] The various components of the computer system 500 may be coupled together by one or more buses, which may include a power bus, a control signal bus, a status signal bus, a data bus, etc. For the sake of clarity, the various buses are illustrated in Fig. 5 as a bus system 519.
[0075] In some implementations, the various components of the computer system 500 are implemented as one device. For example, the various components of the computer system 500 are implemented in a mobile phone or tablet. Another example includes the various components of the computer system 500 implemented in a personal computer. Another example includes the various components of the computer system 500 implemented in the cloud. Another example includes the various components of the computer system 500 implemented on an edge device.
[0076] As illustrated in the foregoing discussion, the present disclosure utilizes a variety of terms to describe features and advantages of the methods and systems. Additional detail is now provided regarding the meaning of such terms. For example, as used herein, a “machine learning model” refers to a computer algorithm or model (e.g., a classification model, a clustering model, a regression model, a language model, an object detection model, a probabilistic graphical model) that can be tuned (e.g., trained) based on training input to approximate unknown functions. For example, a machine learning model may refer to a neural network (e.g., a convolutional neural network (CNN), deep neural network (DNN), recurrent neural network (RNN), generative adversarial networks (GANs)), or other machine learning algorithm or architecture that learns and approximates complex functions and generates outputs based on a plurality of inputs provided to the machine learning model. As used herein, a “machine learning system” may refer to one or multiple machine learning models that cooperatively generate one or more outputs based on corresponding inputs. For example, a machine learning system may refer to any system architecture having multiple discrete machine learning components that consider different kinds of information or inputs.
[0077] The techniques described herein may be implemented in hardware, software, firmware, or any combination thereof, unless specifically described as being implemented in a specific manner. Any features described as modules, components, or the like may also be implemented together in an integrated logic device or separately as discrete but interoperable logic devices. If implemented in software, the techniques may be realized atleast in part by a non-transitory processor-readable storage medium comprising instructions that, when executed by at least one processor, perform one or more of the methods described herein. The instructions may be organized into routines, programs, objects, components, data structures, etc., which may perform particular tasks and / or implement particular data types, and which may be combined or distributed as desired in various implementations.
[0078] Computer-readable mediums may be any available media that can be accessed by a general purpose or special purpose computer system. Computer-readable mediums that store computer-executable instructions are non-transitory computer-readable storage media (devices). Computer-readable mediums that carry computer-executable instructions are transmission media. Thus, by way of example, and not limitation, implementations of the disclosure can comprise at least two distinctly different kinds of computer-readable mediums: non-transitory computer-readable storage media (devices) and transmission media.
[0079] As used herein, non-transitory computer-readable storage mediums (devices) may include RAM, ROM, EEPROM, CD-ROM, solid state drives (“SSDs”) (e.g., based on RAM), Flash memory, phase-change memory (“PCM”), other types of memory, other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store desired program code means in the form of computerexecutable instructions or data structures and which can be accessed by a general purpose or special purpose computer.
[0080] The steps and / or actions of the methods described herein may be interchanged with one another without departing from the scope of the claims. In other words, unless a specific order of steps or actions is required for proper operation of the method that is being described, the order and / or use of specific steps and / or actions may be modified without departing from the scope of the claims.
[0081] The term “determining” encompasses a wide variety of actions and, therefore, “determining” can include calculating, computing, processing, deriving, investigating, looking up (e.g., looking up in a table, a database, a datastore, or another data structure), ascertaining and the like. Also, “determining” can include receiving (e.g., receiving information), accessing (e.g., accessing data in a memory) and the like. Also, “determining” can include resolving, selecting, choosing, establishing, predicting, inferring, and the like.
[0082] The articles “a,” “an,” and “the” are intended to mean that there are one or more of the elements in the preceding descriptions. The terms “comprising,” “including,” and“having” are intended to be inclusive and mean that there may be additional elements other than the listed elements. Additionally, it should be understood that references to “one implementation” or “an implementation” of the present disclosure are not intended to be interpreted as excluding the existence of additional implementations that also incorporate the recited features. For example, any element described in relation to an implementation herein may be combinable with any element of any other implementation described herein. Numbers, percentages, ratios, or other values stated herein are intended to include that value, and also other values that are “about” or “approximately” the stated value, as would be appreciated by one of ordinary skill in the art encompassed by implementations of the present disclosure. A stated value should therefore be interpreted broadly enough to encompass values that are at least close enough to the stated value to perform a desired function or achieve a desired result. The stated values include at least the variation to be expected in a suitable manufacturing or production process, and may include values that are within 5%, within 1%, within 0.1%, or within 0.01% of a stated value.
[0083] A person having ordinary skill in the art should realize in view of the present disclosure that equivalent constructions do not depart from the spirit and scope of the present disclosure, and that various changes, substitutions, and alterations may be made to implementations disclosed herein without departing from the spirit and scope of the present disclosure. Equivalent constructions, including functional “means-plus-function” clauses are intended to cover the structures described herein as performing the recited function, including both structural equivalents that operate in the same manner, and equivalent structures that provide the same function. There is no intention to invoke means-plus- function or other functional claiming for any claim except for those in which the words ‘means for’ appear together with an associated function. Each addition, deletion, and modification to the implementations that falls within the meaning and scope of the claims is to be embraced by the claims.
[0084] The present disclosure may be embodied in other specific forms without departing from its spirit or characteristics. The described implementations are to be considered as illustrative and not restrictive. The scope of the disclosure is, therefore, indicated by the appended claims rather than by the foregoing description. Changes that come within the meaning and range of equivalency of the claims are to be embraced within their scope.
Claims
CLAIMSWhat is claimed is:
1. A method, comprising: converting sequencing data into input tokens, wherein the input tokens are columns of bases aligned to a reference genome; providing, to a generative machine learning model, each input token; and providing, using the generative machine learning model, a prediction of two haplotypes in the sequencing data for a set of input tokens corresponding to a single contiguous genomic region.
2. The method of claim 1, wherein predicting the two haplotypes further includes using two decoders of the generative machine learning model to generate two different haplotypes predicted for each input token.
3. The method of claim 2, further comprising: using a first loss function for a first decoder of the generative machine learning model for a prediction of a first haplotype generated by the first decoder; and using a second loss function for a second decoder for a prediction of a second haplotype generated by the second decoder.
4. The method of claim 1, further comprising: using a custom two dimensional (2D) positional encoding for the input tokens.
5. The method of claim 1, wherein the reference genome is obtained from samples where all variants are known.
6. The method of claim 1, wherein the sequencing data is short Next-Generation Sequencing (NGS).
7. A method, comprising: receiving, at a generative machine learning model, a sequence of input tokens that include information for a reference genome;identifying, by the generative machine learning model, candidate regions in the input tokens; generating, by the generative machine learning model, a prediction of two haplotypes for the candidate regions; identifying, by the generative machine learning model, a variant in the two haplotypes; and outputting, by the generative machine learning model, a prediction with the two haplotypes.
8. The method of claim 7, further comprising: using, a first decoder of the generative machine learning model, to output a first haplotype; and using, a second decoder of the generative machine learning model, to output a second haplotype.
9. The method of claim 7, wherein the candidate regions are identified at a genomic position where at least three reads contain a base that differs from the reference genome.
10. The method of claim 7, wherein the variant is determined by one or more of variant type, variant size, or genomic context.
11. The method of claim 10, wherein the variant type is one or more of Single nucleotide variants (SNVs), MultiNucleotide variants (MNVs), a deletion, or an insertion.
12. The method of any of claims 10, wherein the variant size is small.
13. A generative machine learning model, comprising: a memory to store data and instructions; and a processor operable to communicate with the memory, wherein the processor is operable to: receive a sequence of input tokens that include information for a reference genome; identify candidate regions in the input tokens; generate a prediction of two haplotypes for the candidate regions;identify a variant in two haplotypes; output a prediction with the two haplotypes and the variant.
14. The generative machine learning model of claim 13, further comprising two decoders and wherein the processor is further operable to: use, a first decoder, to output a first haplotype; and use, a second decoder, to output a second haplotype.
15. The generative machine learning model of claim 13, wherein the processor is further operable to: train the generative machine learning model using training data obtained from thirty seven Whole Genome Sequences (WGS).