Artificial intelligence based many-to-many base calling

The neural network-based base caller addresses the challenge of resolving data from overlapping clusters in nucleic acid sequencing by employing a dedicated architecture for spatial and temporal convolution, enhancing data quality and throughput in sequencing technologies.

JP2026016366APending Publication Date: 2026-02-03ILLUMINA INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2025155220
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2021-02-19
Filing Date
2025-09-18
Publication Date
2026-02-03

AI Technical Summary

Technical Problem

Current nucleic acid sequencing technologies face challenges in resolving data from closely spaced or spatially overlapping nucleic acid clusters, leading to compromised throughput and quality of nucleic acid sequence information.

Method used

A neural network-based base caller that utilizes a dedicated architecture with spatial and temporal convolutional layers to process sequencing images, enabling many-to-many base calling by generating base calls for multiple sequencing cycles within a given window, and employing a softmax function for probabilistic classification.

Benefits of technology

Enhances the quality and quantity of nucleic acid sequence data obtained rapidly and cost-effectively, improving throughput in high-throughput sequencing technologies.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026016366000001_ABST
    Figure 2026016366000001_ABST
Patent Text Reader

Abstract

Neural network-based methods and systems are provided that address these and similar needs, including increasing the level of throughput in high-throughput nucleic acid sequencing technologies.SOLUTION: A method of performing intelligence-based base calling includes accessing a progression of per-cycle analyte channel sets generated for sequencing cycles for a sequencing run, processing, by an NNBC, windows of the per-cycle analyte channel sets within the progression of windows of the sequencing cycles for the sequencing run to generate, by the NNBC, interim base call predictions for a particular sequencing cycle from multiple windows in which the particular sequencing cycle occurred at different locations, and generating a base call for the particular sequencing cycle based on the multiple base call predictions.SELECTED DRAWING: Figure 6
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The disclosed technology relates to artificial intelligence type computers and digital data processing systems and corresponding data processing methods and products for the emulation of intelligence (i.e., knowledge-based systems, inference systems, and knowledge acquisition systems), including systems for reasoning under uncertainty (e.g., fuzzy logic systems), adaptive systems, machine learning systems, and artificial neural networks. Specifically, the disclosed technology relates to using deep neural networks, such as deep convolutional neural networks, to analyze data.

[0002] (Priority application) This application claims priority to and the benefit of U.S. Provisional Patent Application No. 62 / 979,414, entitled "ARTIFICIAL INTELLIGENCE-BASED MANY-TO-MANY BASE CALLING," filed February 20, 2020 (Attorney Docket No. ILLM1016-1 / IP-1858-PRV), and U.S. Patent Application No. 17 / 180,542, entitled "ARTIFICIAL INTELLIGENCE-BASED MANY-TO-MANY BASE CALLING," filed February 19, 2021 (Attorney Docket No. ILLM1016-2 / IP-1858-US), which priority application is incorporated herein by reference for all purposes as if fully set forth herein.

[0003] (built-in) The following are incorporated by reference as if fully set forth herein:

[0004] U.S. Provisional Patent Application No. 62 / 979,384, entitled "ARTIFICIAL INTELLIGENCE-BASED BASE CALLING OF INDEX SEQUENCES," filed February 20, 2020 (Attorney Docket No. ILLM1015-1 / IP-1857-PRV); U.S. Provisional Patent Application No. 62 / 979,385, entitled "KNOWLEDGE DISTILLATION-BASED COMPRESSION OF ARTIFICIAL INTELLIGENCE-BASED BASE CALLER," filed February 20, 2020 (Attorney Docket No. ILLM1017-1 / IP-1859-PRV); U.S. Provisional Patent Application No. 63 / 072,032, entitled "DETECTING AND FILTERING CLUSTERS BASED ON ARTIFICIAL INTELLIGENCE-PREDICTED BASE CALLS," filed August 28, 2020 (Attorney Docket No. ILLM1018-1 / IP-1860-PRV); U.S. Provisional Patent Application No. 62 / 979,412, entitled "MULTI-CYCLE CLUSTER BASED REAL TIME ANALYSIS SYSTEM," filed February 20, 2020 (Attorney Docket No. ILLM1020-1 / IP-1866-PRV); U.S. Provisional Patent Application No. 62 / 979,411, entitled "DATA COMPRESSION FOR ARTIFICIAL INTELLIGENCE-BASED BASE CALLING," filed February 20, 2020 (Attorney Docket No. ILLM1029-1 / IP-1964-PRV); U.S. Provisional Patent Application No. 62 / 979,399, entitled "SQUEEZING LAYER FOR ARTIFICIAL INTELLIGENCE-BASED BASE CALLING," filed February 20, 2020 (Attorney Docket No. ILLM1030-1 / IP-1982-PRV); U.S. Nonprovisional Patent Application No. 16 / 825,987, entitled "TRAINING DATA GENERATION FOR ARTIFICIAL INTELLIGENCE-BASED SEQUENCING," filed March 20, 2020 (Attorney Docket No. ILLM1008-16 / IP-1693-US); U.S. Nonprovisional Patent Application No. 16 / 825,991, entitled "ARTIFICIAL INTELLIGENCE-BASED GENERATION OF SEQUENCING METADATA," filed March 20, 2020 (Attorney Docket No. ILLM1008-17 / IP-1741-US); U.S. Non-Provisional Patent Application No. 16 / 826,126, entitled "ARTIFICIAL INTELLIGENCE-BASED BASE CALLING," filed March 20, 2020 (Attorney Docket No. ILLM1008-18 / IP-1744-US); U.S. Nonprovisional Patent Application No. 16 / 826,134, entitled "ARTIFICIAL INTELLIGENCE-BASED QUALITY SCORING," filed March 20, 2020 (Attorney Docket No. ILLM1008-19 / IP-1747-US); and U.S. Non-Provisional Patent Application No. 16 / 826,168, entitled "ARTIFICIAL INTELLIGENCE-BASED SEQUENCING," filed March 21, 2020 (Attorney Docket No. ILLM1008-20 / IP-1752-PRV-US). [Background technology]

[0005] The subject matter discussed in this section should not be assumed to be prior art merely as a result of its mention in this section. Similarly, it should not be assumed that the problems mentioned in this section, or problems associated with the subject matter provided as background, have been previously recognized in the prior art. The subject matter in this section merely represents different approaches, which themselves may also correspond to embodiments of the claimed technology.

[0006] Deep neural networks are a class of artificial neural networks that use multiple nonlinear and complex transformation layers to continuously model high-level functions. Deep neural networks provide feedback via backpropagation, which transmits the difference between observed and predicted outputs to adjust parameters. Deep neural networks have evolved with the availability of large training datasets, the power of parallel and distributed computing, and advanced training algorithms. Deep neural networks have driven major advances in many domains, such as computer vision, speech recognition, and natural language processing.

[0007] Convolutional neural networks (CNNs) and recurrent neural networks (RNNs) are components of deep neural networks. Convolutional neural networks, particularly those with structures including convolutional layers, nonlinear layers, and pooling layers, have been successful in image recognition. Recurrent neural networks are designed to exploit the continuous information of input data with periodic connections between their constituent units, such as perceptrons, long short-term memory units, and gated recurrent units. In addition, many other emerging deep neural networks have been proposed for limited situations, such as deep spatiotemporal neural networks, multidimensional recurrent neural networks, and convolutional autoencoders.

[0008] The goal of training a deep neural network is to optimize the weight parameters in each layer, gradually combining simpler features into more complex ones so that a better hierarchical representation can be learned from the data. A single cycle of the optimization process consists of the following: First, given a training dataset, a forward pass sequentially computes the outputs in each layer and propagates a functional signal forward through the network. At the final output layer, an objective loss function measures the error between the predicted output and a given label. To minimize the training error, a backward pass backpropagates the error signal using a chain rule and computes gradients for all weights throughout the neural network. Finally, stochastic parameters are updated using an optimization algorithm based on stochastic gradient descent. While batch gradient descent updates parameters for the entire dataset, stochastic gradient descent provides a stochastic approximation by performing updates for each small set of data examples. Several optimization algorithms are derived from stochastic gradient descent. For example, the Adagrad and Adam training algorithms perform stochastic gradient descent while adaptively modifying the learning rate based on the update frequency of each parameter and the momentum of the gradient, respectively.

[0009] Another core element in deep neural network training is regularization, which refers to a strategy intended to avoid overfitting and thus achieve good generalization performance. For example, weight decay adds a penalty term to the objective loss function so that weight parameters converge to smaller absolute values. Dropout randomly removes hidden units from a neural network during training and can be viewed as a collection of possible subnetworks. To improve dropout's capabilities, a new activation function, maxout, and a variant of dropout for recurrent neural networks called rnnDrop have been proposed. Furthermore, batch normalization provides a new regularization method via scalar feature normalization for each activation within a mini-batch, learning its mean and variance as parameters.

[0010] Given the multidimensional and high-dimensional nature of sequence data, deep neural networks hold considerable promise for bioinformatics research due to their broad applicability and enhanced predictive capabilities. Convolutional neural networks have been employed to solve sequence-based problems in genomics, such as motif discovery, pathogenic variant identification, and gene expression inference. Convolutional neural networks use a weight-sharing strategy that is particularly useful for studying deoxyribonucleic acid (DNA) because they can capture sequence motifs, which are short, repetitive local patterns in DNA that are predicted to have significant biological functions. A notable feature of convolutional neural networks is the use of convolutional filters.

[0011] Unlike traditional classification approaches based on carefully designed, manually crafted features, convolutional filters perform adaptive feature learning, similar to the process of mapping raw input data to information representations of knowledge. In this sense, convolutional filters function as a series of motif scanners, as a set of such filters can recognize relevant patterns in the input and update themselves during the training procedure. Recurrent neural networks can capture long-range dependencies in continuous data of various lengths, such as protein or DNA sequences.

[0012] Therefore, an opportunity arises to use a coherent deep learning-based framework for template generation and base calling.

[0013] In the era of high-throughput technologies, accumulating the highest yield of interpretable data at the lowest cost per effort remains a significant challenge. Cluster-based methods of nucleic acid sequencing, such as those that utilize bridge amplification for cluster formation, have made valuable contributions to the goal of increasing nucleic acid sequencing throughput. These cluster-based methods rely on sequencing dense populations of nucleic acids immobilized on a solid support and typically involve the use of image analysis software to suppress the optical signals generated during the simultaneous sequencing of multiple clusters located at distinct locations on the solid support.

[0014] However, such solid-phase nucleic acid cluster-based sequencing technology faces considerable obstacles that limit the amount of throughput that can be achieved.For example, in cluster-based sequencing methods, determining the nucleic acid sequences of two or more clusters that are too close to each other physically to be spatially resolved, or that actually physically overlap on a solid support, can pose obstacles.For example, current image analysis software may require valuable time and computational resources to determine which of two overlapping clusters an optical signal originates from.As a result, various detection platforms inevitably compromise on the quantity and / or quality of nucleic acid sequence information that can be obtained.

[0015] High-density nucleic acid aggregate-based genomics methods extend to other areas of genome analysis as well. For example, nucleic acid cluster-based genomics can be used in sequencing applications, diagnostics and screening, gene expression analysis, epigenetic analysis, genetic analysis of polymorphisms, etc. Each of these nucleic acid cluster-based genomics techniques is limited by the inability to resolve data generated from closely spaced or spatially overlapping nucleic acid clusters.

[0016] Clearly, there remains a need to improve the quality and quantity of nucleic acid sequence data that can be obtained rapidly and cost-effectively for a variety of applications, including genomics (e.g., for the genomic characterization of any and all animal, plant, microbial, or other biological species or populations), pharmacogenomics, transcriptomics, diagnostics, prognostics, biomedical risk assessment, clinical and research genetics, personalized medicine, drug efficacy and drug interaction assessment, veterinary medicine, agriculture, evolutionary biodiversity research, aquaculture, forestry, oceanography, ecological and environmental management, and other purposes.

[0017] The disclosed technology provides neural network-based methods and systems that address these and similar needs, including increasing the level of throughput in high-throughput nucleic acid sequencing technologies, and offers other related advantages. Summary of the Invention [Means for solving the problem]

[0018] See paragraphs

[0176] -

[0177] .

[0019] In the drawings, like reference characters generally refer to like parts throughout the different views. Also, the drawings are not necessarily to scale, emphasis instead being placed upon illustrating the principles of the disclosed technology. In the following description, various embodiments of the disclosed technology are described with reference to the following drawings: [Brief explanation of the drawings]

[0020] [Figure 1A] 1 shows the disclosed many-to-many base calling. [Figure 1B] 1 shows the disclosed many-to-many base calling. [Figure 1C] 1 shows the disclosed many-to-many base calling. [Figure 1D] 1 illustrates different examples of the disclosed many-to-many base calling. [Figure 1E] 1 illustrates different examples of the disclosed many-to-many base calling. [Figure 2] 1 illustrates different embodiments of a base call generator. [Figure 3] 1 illustrates different embodiments of a base call generator. [Figure 4] 1 illustrates different embodiments of a base call generator. [Figure 5] 1 illustrates one implementation of the disclosed multi-cycle gradient backpropagation. [Figure 6] 1 is a flowchart of one embodiment of the disclosed technology. [Figure 7] The technical effects and advantages of the disclosed technology are illustrated. [Figure 8A] 1 depicts one embodiment of a sequencing system, the sequencing system including a configurable processor. [Figure 8B] 1 depicts one embodiment of a sequencing system, the sequencing system including a configurable processor. [Figure 9] FIG. 1 is a simplified block diagram of a system for analysis of sensor data from a sequencing system, such as base call sensor output. [Figure 10] FIG. 1 is a simplified diagram illustrating aspects of base calling operations, including the functionality of a runtime program executed by a host processor. [Figure 11] 10 is a simplified diagram of a configuration of a configurable processor such as the configurable processor of FIG. 9. [Figure 12] A computer system that can be used by the disclosed sequencing system to implement the base calling techniques disclosed herein. DETAILED DESCRIPTION OF THE INVENTION

[0021] The following discussion is presented to enable any person skilled in the art to make and use the disclosed technology and is provided in the context of a particular application and its requirements. Various modifications to the disclosed embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other embodiments and applications without departing from the spirit and scope of the disclosed technology. Thus, the disclosed technology is not intended to be limited to the embodiments shown, but is to be accorded the widest scope consistent with the principles and features disclosed herein.

[0022] Sequencing images Base calling is the process of determining the nucleotide composition of a sequence. Base calling involves analyzing image data, or sequencing images, produced during a sequencing run (or sequencing reaction) performed by a sequencing instrument such as Illumina's iSeq, HiSeqX, HiSeq3000, HiSeq4000, HiSeq2500, NovaSeq6000, NextSeq550, NextSeq1000, NextSeq2000, NextSeqDx, MiSeq, and MiSeqDx.

[0023] The following discussion outlines how a sequencing image is generated and what it depicts, according to one embodiment.

[0024] Base calling decodes the intensity data encoded in the sequencing image into nucleotide sequences. In one embodiment, the Illumina sequencing platform employs cyclic reversible termination (CRT) chemistry for base calling. This process relies on growing a nascent strand complementary to a template strand with fluorescently labeled nucleotides while tracking the emitted signal of each newly added nucleotide. The fluorescently labeled nucleotides have a 3' removable block that anchors the fluorophore signal of the nucleotide type.

[0025] Sequencing occurs in repeated cycles, with each cycle comprising three steps: (a) extending the nascent strand by adding fluorescently labeled nucleotides; (b) exciting the fluorophore using one or more lasers in the sequencing instrument's optical system and imaging through different filters in the optical system to obtain a sequencing image; and (c) cleaving the fluorophore and removing the 3' block in preparation for the next sequencing cycle. The incorporation and imaging cycles are repeated for a specified number of sequencing cycles, defining the read length. Using this approach, each cycle interrogates a new position along the template strand.

[0026] The tremendous power of Illumina sequencers comes from their ability to simultaneously run and sense millions or even billions of clusters (also called "analytes") undergoing CRT reactions. A cluster contains approximately 1,000 identical copies of a template strand, but the clusters vary in size and shape. Prior to the sequencing operation, clusters are grown from the template strands by bridge amplification or exclusion amplification of the input library. The purpose of amplification and cluster growth is to increase the intensity of the emitted signal, since imaging devices cannot reliably sense the fluorophore signal of a single strand. However, because the physical distance between strands within a cluster is small, imaging devices perceive a cluster of strands as a single spot.

[0027] Sequencing occurs in a flow cell (or biosensor)—a small glass slide that holds the input strand. The flow cell is connected to an optical system that includes microscope imaging, an excitation laser, and a fluorescence filter. The flow cell contains multiple chambers called lanes. The lanes are physically separated from each other and can contain different tagged sequencing libraries that are distinguishable without sample cross-contamination. In some embodiments, the flow cell comprises a patterned surface. "Patterned surface" refers to the arrangement of different regions within or on the exposed layer of a solid support.

[0028] The sequencing instrument's imaging device (e.g., a solid-state imager such as a charge-coupled device (CCD) or complementary metal-oxide-semiconductor (CMOS) sensor) takes snapshots at multiple locations along the lane in a series of non-overlapping regions called tiles. For example, there may be 64 or 96 tiles per lane. A tile holds hundreds of thousands to millions of clusters.

[0029] The output of a sequencing operation is a sequencing image. A sequencing image uses a grid (or array) of pixelated units (e.g., pixels, superpixels, subpixels) to depict the intensity radiation of clusters and their surrounding background. The intensity radiation is stored as intensity values ​​of the pixelated units. A sequencing image has dimensions of a grid of pixelated units, w x h, where w (width) and h (height) are any number ranging from 1 to 100,000 (e.g., 115 x 115, 200 x 200, 1800 x 2000, 2200 x 25000, 2800 x 3600, 4000 x 400). In some embodiments, w and h are the same. In other embodiments, w and h are different. A sequencing image depicts the intensity radiation generated as a result of incorporating nucleotides into a nucleotide sequence during a sequencing operation. The intensity radiation is from the associated clusters and their surrounding background.

[0030] Neural network-based base calling The following discussion focuses on the neural network-based base caller 102 described herein. First, the input to the neural network-based base caller 102, according to one embodiment, is described. Then, an example of the structure and form of the neural network-based base caller 102 is provided. Finally, the output of the neural network-based base caller 102, according to one embodiment, is described.

[0031] The data flow logic provides the sequencing image to the neural network-based base caller 102 for base calling. The neural network-based base caller 102 accesses the sequencing image on a patch-by-patch (or tile-by-tile) basis. Each patch is a subgrid (or subarray) of pixelated units within the grid of pixelated units that forms the sequencing image. A patch has dimensions qxr of the subgrid of pixelated units, where q (width) and r (height) are any number in the range of 1 to 10,000 (e.g., 3x3, 5x5, 7x7, 10x10, 15x15, 25x25, 64x64, 78x78, 115x115). In some embodiments, q and r are the same. In other embodiments, q and r are different. In some embodiments, the patches extracted from the sequencing image are the same size. In other embodiments, the patches are different sizes. In some embodiments, the patches can have overlapping pixelated units (e.g., on edges).

[0032] Sequencing produces m sequencing images per sequencing cycle for the corresponding m image channels. That is, each sequencing image has one or more image (or intensity) channels (similar to the red, green, and blue (RGB) channels in a color image). In one embodiment, each image channel corresponds to one of a plurality of filter wavelength bands. In another embodiment, each image channel corresponds to one of a plurality of imaging events in a sequencing cycle. In yet another embodiment, each imaging channel corresponds to a combination of illumination by a particular laser and imaging through a particular optical filter. Image patches are tiled (or accessed) from each of the m image channels for a particular sequencing cycle. In different embodiments, such as 4-, 2-, and 1-channel chemistries, m is 4 or 2. In other embodiments, m is greater than 1, 3, or 4.

[0033] For example, consider that a sequencing operation is implemented using two different image channels, i.e., a blue channel and a green channel. Then, in each sequencing cycle, the sequencing operation produces a blue image and a green image. In this manner, for a series of k sequencing cycles for the sequencing operation, an array of k pairs of blue and green images is produced as output and stored as a sequencing image. This results in a series of k pairs of arrays of blue image batches and green image patches being generated for patch-level processing by the neural network-based base caller 102.

[0034] The input image data to the neural network-based base caller 102 for a single iteration of base calling (or a single instance of a forward pass or a single forward traversal) includes data for a sliding window of multiple sequencing cycles. The sliding window can include, for example, the current sequencing cycle, one or more preceding sequencing cycles, and one or more subsequent sequencing cycles.

[0035] In one embodiment, the image data includes data for three sequencing cycles, such that the data for the current (time t) sequencing cycle being base called is accompanied by (i) data for the left adjacent / context / previous / preceding / earlier (time t-1) sequencing cycle, and (ii) data for the right adjacent / context / next / following / later (time t+1) sequencing cycle.

[0036] In another embodiment, the input image data includes data for five sequencing cycles, so that the data for the current (time t) sequencing cycle being base called involves (i) data for the first left adjacent / context / previous / preceding / previous (time t-1) sequencing cycle, (ii) data for the second left adjacent / context / previous / preceding / previous (time t-2) sequencing cycle, (iii) data for the first right adjacent / context / next / subsequent / subsequent (time t+1), and (iv) data for the second right adjacent / context / next / subsequent / subsequent (time t+2) sequencing cycle.

[0037] In yet another embodiment, the input image data includes data for seven sequencing cycles, such that the data for the current (time t) sequencing cycle to be base called involves: (i) data for the first left adjacent / context / previous / preceding / previous (time t-1) sequencing cycle, (ii) data for the second left adjacent / context / previous / preceding / previous (time t-2) sequencing cycle, (iii) data for the third left adjacent / context / previous / preceding / previous (time t-3), (iv) data for the first right adjacent / context / next / subsequent / subsequent (time t+1) sequencing cycle, (v) data for the second right adjacent / context / next / subsequent / subsequent (time t+2) sequencing cycle, and (vi) data for the third right adjacent / context / next / subsequent / subsequent (t+3) sequencing cycle. In other embodiments, the input image data includes data for a single sequencing cycle. In still other embodiments, the input image data includes data for 10, 15, 20, 30, 58, 75, 92, 130, 168, 175, 209, 225, 230, 275, 318, 325, 330, 525, or 625 sequencing cycles.

[0038] According to one embodiment, the neural network-based base caller 102 processes image patches through its convolutional layers to produce alternative representations. The alternative representations are then used by an output layer (e.g., a softmax layer) to generate base calls for the current (time t) sequencing cycle or for each of the sequencing cycles, i.e., the current (time t) sequencing cycle, the first and second preceding (time t-1, time t-2) sequencing cycles, and the first and second subsequent (time t+1, time t+2) sequencing cycles. The resulting base calls form sequencing reads.

[0039] In one embodiment, the neural network-based base caller 102 outputs a base call for a single target cluster for a particular sequencing cycle. In another embodiment, the neural network-based base caller 102 outputs a base call for each target cluster within a plurality of target clusters for a particular sequencing cycle. In yet another embodiment, the neural network-based base caller 102 outputs a base call for each target cluster within a plurality of target clusters for each sequencing cycle within the plurality of sequencing cycles, thereby producing a base call sequence for each target cluster.

[0040] In one embodiment, the neural network-based base caller 102 is a multilayer perceptron (MLP). In another embodiment, the neural network-based base caller 102 is a feedforward neural network. In yet another embodiment, the neural network-based base caller 102 is a fully connected neural network. In a further embodiment, the neural network-based base caller 102 is a fully convolutional neural network. In yet a further embodiment, the neural network-based base caller 102 is a semantic segmentation neural network. In yet another embodiment, the neural network-based base caller 102 is a generative adversarial network (GAN).

[0041] In one embodiment, the neural network-based base caller 102 is a convolutional neural network (CNN) having multiple convolutional layers. In another embodiment, the neural network-based base caller 102 is a recurrent neural network (RNN), such as a long short-term memory network (LSTM), a bi-directional LSTM (Bi-LSTM), or a gated recurrent unit (GRU). In yet another embodiment, the neural network-based base caller 102 includes both a CNN and an RNN.

[0042] In yet other implementations, the neural network-based base caller 102 may use 1D convolution, 2D convolution, 3D convolution, 4D convolution, 5D convolution, dilated or monotonic convolution, transposed convolution, depthwise separable convolution, point convolution, 1x1 convolution, group convolution, flattened convolution, spatial and cross-channel convolution, shuffled grouped convolution, spatially separable convolution, and deconvolution. The neural network-based base caller 102 may use one or more loss functions such as logistic regression / log loss, multi-class cross-entropy / softmax loss, binary cross-entropy loss, mean squared error loss, L1 loss, L2 loss, smoothed L1 loss, and Huber loss. The neural network-based base caller 102 can use any parallelism, efficiency, and compression scheme, such as TFRecords, compression encoding (e.g., PNG), sharding, parallel calls for map transforms, batching, prefetching, model parallelism, data parallelism, and synchronous / asynchronous stochastic gradient descent (SGD). The neural network-based base caller 102 can include upsampling layers, downsampling layers, recurrent connections, gates and gated memory units (e.g., LSTM or GRU), residual blocks, residual connections, highway connections, skip connections, peephole connections, activation functions (e.g., nonlinear transformation functions such as rectifying linear unit (ReLU), leaky ReLU, exponential linear unit (ELU), sigmoid, and hyperbolic tangent (tanh)), batch normalization layers, regularization layers, dropout, pooling layers (e.g., max or average pooling), global average pooling layers, and attention mechanisms.

[0043] The neural network-based base collaborator 102 is trained using a backpropagation-based gradient update technique. Exemplary gradient descent techniques that can be used to train the neural network-based base collaborator 102 include stochastic gradient descent, batch gradient descent, and mini-batch gradient descent. Some examples of gradient descent optimization algorithms that can be used to train the neural network-based base collaborator 102 are Momentum, Nesterov accelerated gradient, Adagrad, Adadelta, RMSprop, AdaMax, Nadam, and AMSGrad.

[0044] In one embodiment, the neural network-based base caller 102 uses a dedicated structure to separate the processing of data for different sequencing cycles. The motivation for using the dedicated structure is explained first. As described above, the neural network-based base caller 102 processes image patches for the current sequencing cycle, one or more previous sequencing cycles, and one or more subsequent sequencing cycles. Data for the additional sequencing cycles provides sequence-specific context. The neural network-based base caller 102 learns the sequence-specific context during training and base calls them. Furthermore, data for the pre- and post-sequencing cycles provide secondary contributions of pre-phasing and phasing signals to the current sequencing cycle.

[0045] However, images captured in different sequencing cycles and in different image channels are misaligned and have residual positioning errors relative to each other. To account for this misalignment, the dedicated architecture includes a spatial convolution layer that does not mix information between sequencing cycles, but only mixes information within a sequencing cycle.

[0046] The spatial convolutional layer (or spatial logic) uses so-called "separate convolutions" that enable separation by independently processing the data for each of multiple sequencing cycles through a "dedicated, unshared" array of convolutions. Separate convolutions convolve the data and resulting feature maps only within a given sequencing cycle, i.e., cycle, without convolving the data and resulting feature maps of any other sequencing cycles.

[0047] For example, consider input image data that includes (i) a current image patch for the current (time t) sequencing cycle to be base-called, (ii) a previous image patch for the previous (time t-1) sequencing cycle, and (iii) a next image patch for the next (time t+1) sequencing cycle. The dedicated architecture then initiates three separate convolution pipelines: a current convolution pipeline, a previous convolution pipeline, and a next convolution pipeline. The current data processing pipeline receives the current image patch for the current (time t) sequencing cycle as input and independently processes it through multiple spatial convolution layers to produce a so-called "current spatial convolution representation" as the output of the final spatial convolution layer. The previous convolution pipeline receives the previous image patch for the previous (time t-1) sequencing cycle as input and independently processes it through multiple spatial convolution layers to produce a so-called "previous spatial convolution representation" as the output of the final spatial convolution layer. The next convolution pipeline receives as input the next image patch for the next (time t+1) sequencing cycle and processes it independently through multiple spatial convolution layers to produce the so-called “next spatial convolution representation” as the output of the final spatial convolution layer.

[0048] In some implementations, the current, previous, and next convolution pipelines run in parallel. In some implementations, the spatial convolution layer is part of a spatial convolution network (or sub-network) within a dedicated structure.

[0049] The neural network-based base caller 102 further includes temporal convolutional layers (or temporal logic) that blend information between sequencing cycles, i.e., between cycles. The temporal convolutional layers receive their inputs from the spatial convolutional networks and operate on the spatially convolved representations produced by the final spatial convolutional layer for each data processing pipeline.

[0050] The inter-cycle operational freedom of the temporal convolutional layers arises from the fact that misalignment features present in the image data supplied as input to the spatial convolutional network are removed from the spatial convolutional representation by the stack or cascade of separate convolutions performed by the array of spatial convolutional layers.

[0051] The temporal convolutional layer uses so-called "combinatorial convolution," which convolves group-wise on input channels with subsequent inputs on a sliding window basis. In one embodiment, the subsequent inputs are subsequent outputs generated by previous spatial or temporal convolutional layers.

[0052] In some embodiments, the temporal convolutional layer is part of a temporal convolutional network (or sub-network) within a dedicated structure. The temporal convolutional network receives its input from a spatial convolutional network. In one embodiment, the first temporal convolutional layer of the temporal convolutional network combines the spatial convolutional representations between sequencing cycles by group. In another embodiment, subsequent temporal convolutional layers of the temporal convolutional network combine subsequent outputs of previous temporal convolutional layers. The output of the final temporal convolutional layer is fed to an output layer, which generates an output. The output is used to base call one or more clusters in one or more sequencing cycles.

[0053] The data flow logic provides per-cycle cluster data to the neural network-based base caller 102. The per-cycle cluster data is for a plurality of clusters and for a first subset of sequencing cycles for the sequencing operation. For example, consider a sequencing operation having 150 sequencing cycles. The first subset of sequencing cycles can then include any subset of the 150 sequencing cycles, such as the first 5, 10, 15, 25, 35, 40, 50, or 100 sequencing cycles of the 150-cycle sequencing operation. Each sequencing cycle also produces a sequencing image depicting the intensity emissions of clusters within the plurality of clusters. In this manner, the per-cycle cluster data for the plurality of clusters and for the first subset of sequencing cycles for the sequencing operation includes sequencing images only for the first 5, 10, 15, 25, 35, 40, 50, or 100 sequencing cycles of the 150-cycle sequencing operation, and does not include sequencing images for the remaining sequencing cycles of the 150-cycle sequencing operation.

[0054] The neural network-based base caller 102 base calls each cluster within the plurality of clusters in each sequencing cycle within the first subset of sequencing cycles. To do so, the neural network-based base caller 102 processes the cluster data for each cycle and generates an intermediate representation of the cluster data for each cycle. The neural network-based base caller 102 then processes the intermediate representation through an output layer to produce a per-cluster probability quadruplex for each cluster and a per-cycle probability quadruplex for each sequencing cycle. Examples of output layers include a softmax function, a log-softmax function, an ensemble output average function, a multi-layer perceptron uncertainty function, a Bayesian Gaussian distribution function, and a cluster strength function. The per-cluster, per-cycle probability quadruplex is stored as a probability quadruplex, referred to herein as a "per-base likelihood" because of the four nucleotide bases A, C, T, and G.

[0055] The softmax function is the preferred function for multi-class classification. The softmax function calculates the probability of each target class across all possible target classes. The output of the softmax function ranges from zero to one, with the sum of all probabilities equal to one. The softmax function calculates the exponent of a given input value and the sum of the exponent values ​​of all input values. The ratio of the input value's exponent to the sum of the exponent values ​​is the output of the softmax function and is referred to herein as "exponent normalization."

[0056] Formally, training a so-called softmax classifier is a regression on class probabilities rather than a true classifier, since it does not return classes, but rather confidence predictions of the likelihood of each class. The softmax function takes classes of values ​​and converts them into probabilities that are 1. The softmax function squashes any real-valued n-dimensional vector into an n-dimensional vector of real values ​​in the range 0 to 1. Therefore, using a softmax function ensures that the output is a valid, exponentially normalized probability mass function (non-negative and equal to 1).

[0057] Intuitively, the softmax function is a "soft" version of the max function. The term "soft" comes from the fact that the softmax function is continuous and distinguishable. Instead of selecting a single largest element, it divides the vector into parts of the whole, with the largest input element getting a proportionally larger value and the others getting a smaller fraction of the value. The property of outputting a probability distribution makes the softmax function suitable for probabilistic interpretation in classification tasks.

[0058] Think of z as a vector of inputs to a softmax layer. The softmax layer units are the number of nodes in the softmax layer, so the length of the z vector is the number of units in the softmax layer (if you have 10 output units, there will be 10 z elements).

[0059] n-dimensional vector Z=[z1,z2,...z n], the softmax function uses exponential normalization (exp) to create another n-dimensional vector p(Z) with normalized values ​​in the range [0, 1] and adds it to 1.

number

[0060] For example, the softmax function is

number

[0061] A particular cluster-by-cluster, cycle-by-cycle probability quadruplex identifies the probability that the base incorporated into a particular cluster in a particular sequencing cycle is A, C, T, and G. If the output layer of the neural network-based base caller 102 uses a softmax function, the cluster-by-cycle probability quadruplex probabilities are exponentially normalized classification scores that sum to 1.

[0062] In one embodiment, the method includes processing the convolutional representation through an output layer to generate likelihoods of bases being incorporated into the target analyte in the current sequencing cycle, the likelihoods being A, C, T, and G, and classifying the base as A, C, T, or G based on the likelihoods. In one embodiment, the likelihoods are exponentially normalized scores generated by a softmax layer.

[0063] In one embodiment, the method includes deriving from the output an output pair for the target analyte that identifies a class label for a base incorporated into the target analyte in the current sequencing cycle: A, C, T, or G; and base calling the target analyte based on the class labels. In one embodiment, the class label 1,0 identifies an A base, the class label 0,1 identifies a C base, the class label 1,1 identifies a T base, and the class label 0,0 identifies a G base. In another embodiment, the class label 1,1 identifies an A base, the class label 0,1 identifies a C base, the class label 0.5,0.5 identifies a T base, and the class label 0,0 identifies a G base. In yet another embodiment, the class label 1,0 identifies an A base, the class label 0,1 identifies a C base, the class label 0.5,0.5 identifies a T base, and the class label 0,0 identifies a G base. In yet further embodiments, the class labels 1, 2 identify an A base, the class label 0, 1 identify a C base, the class label 1, 1 identify a T base, and the class label 0, 0 identify a G base. In one embodiment, the method includes deriving class labels for the target analyte from the output that identify the base incorporated into the target analyte in the current sequencing cycle as A, C, T, or G, and base calling the target analyte based on the class labels. In one embodiment, the class label 0.33 identifies an A base, the class label 0.66 identifies a C base, the class label 1 identifies a T base, and the class label 0 identifies a G base. In another embodiment, the class label 0.50 identifies an A base, the class label 0.75 identifies a C base, the class label 1 identifies a T base, and the class label 0.25 identifies a G base. In one embodiment, the method includes deriving a single output value from the output; comparing the single output value to class value ranges corresponding to bases A, C, T, and G; assigning the single output value to a particular class value range based on the comparison; and base calling the target analyte based on the assignment.In one embodiment, the single output value is derived using a sigmoid function, and the single output value ranges from 0 to 1. In another embodiment, the class value range of 0 to 0.25 represents A bases, the class value range of 0.25 to 0.50 represents C bases, the class value range of 0.50 to 0.75 represents T bases, and the class value range of 0.75 to 1 represents G bases.

[0064] Additional details regarding the neural network-based base coder 102 can be found in U.S. Provisional Patent Application No. 62 / 821,766, entitled "ARTIFICIAL INTELLIGENCE-BASED SEQUENCING," filed March 21, 2019 (Attorney Docket No. ILLM1008-9 / IP-1752-PRV), which is incorporated herein by reference.

[0065] Many-to-many base calling The disclosed technology, according to one embodiment, causes the neural network-based base caller 102 to generate base calls not only for the center sequencing cycle but also for adjacent sequencing cycles for a given window of input. That is, in one implementation, the disclosed technology simultaneously generates base calls for cycle N, cycle N+1, cycle N-1, cycle N+2, cycle N-2, etc. for a given input window. That is, a single forward propagation / traverse / base calling iteration of the neural network-based base caller 102 generates base calls for multiple sequencing cycles within the input window of sequencing cycles, which is referred to herein as "many-to-many base calling."

[0066] The disclosed technology then uses the disclosed many-to-many base calling to generate multiple base calls for the same target sequencing cycle that occurred across multiple sliding windows of the input. For example, a target sequencing cycle may occur at different positions within multiple sliding windows of the input (e.g., starting at position N+2 in a first sliding window, progressing to position N+1 in a second sliding window, and ending at position N in a third sliding window).

[0067] Multiple base calls for a target sequencing cycle generate multiple candidate correct base calls for the target sequencing cycle. The disclosed technology evaluates the multiple candidate correct base calls as a set to determine a final base call for the target sequencing cycle. The final base call for the target sequencing cycle can be selected using aggregation analysis techniques such as averaging, consensus, and weighted consensus.

[0068] 1A, 1B, and 1C illustrate the disclosed many-to-many base calling 100. A neural network-based base calling device 102 (i.e., base calling device 102) processes at least a right adjacent input, a center input, and a left adjacent input and produces at least a right adjacent output, a center output, and a left adjacent output, according to one embodiment of the disclosed technology.

[0069] Many-to-many base calling 100 is configured to provide data for n sequencing cycles as input to base caller 102 and generate base calls for any number of cycles in the n cycles in one iteration of base calling (i.e., one forward pass instance). A target sequencing cycle 108 may be base called n times and may appear / occur / disappear at various positions in the n of the base calling iterations.

[0070] The target sequencing cycle 108 may be a central sequencing cycle ( FIG. 1B ) in some base calling iterations. In other iterations, the target sequencing cycle 108 may be a right adjacent / context sequencing cycle ( FIG. 1A ) adjacent to the central sequencing cycle, or a left adjacent / context sequencing cycle ( FIG. 1C ) adjacent to the central sequencing cycle. The right or left offset from the central sequencing cycle may also vary. That is, the target sequencing cycle 108 in n base calling iterations may occur at the central position, immediately to the right of the central position, immediately to the left of the central position, at any offset to the right of the central position, at any offset to the left of the central position, or at any other position in the n base calling iterations. The base calling iterations for a target sequencing cycle may have sequencing cycle inputs of various lengths in a given input window of the sequencing cycle, and may have multiple base call outputs for sequencing cycles of various lengths.

[0071] In one implementation, the disclosed technology includes accessing a progression of analyte channel sets per cycle generated for sequencing cycles for a sequencing operation; processing windows of analyte channel sets per cycle during the progression of sequencing cycle windows for the sequencing operation via a neural network-based base caller 102, such that the neural network-based base caller 102 processes the subject window of analyte channel sets per cycle during the progression of the subject window of sequencing cycles for the sequencing operation and generates tentative base call predictions for three or more sequencing cycles within the subject window of the sequencing cycle; generating tentative base call predictions for a particular sequencing cycle using the neural network-based base caller 102 from multiple windows in which the particular sequencing cycle appears at different positions; and determining a base call for the particular sequencing cycle based on the tentative base call predictions.

[0072] In one implementation, the disclosed technology includes accessing a series of per-cycle analyte channel sets generated for sequencing cycles for a sequencing operation; processing the per-cycle analyte channel set windows of the series of windows of sequencing cycles for the sequencing operation through the neural network-based base caller 102, such that the neural network-based base caller 102 processes the per-cycle analyte channel set subject windows in the series of subject windows of sequencing cycles for the sequencing operation and generates base call predictions for two or more sequencing cycles within the sequencing cycle subject windows; processing multiple windows of per-cycle analyte channel sets through the neural network-based base caller 102 in the series of multiple windows of sequencing cycles for the sequencing operation; and generating an output for each window within the multiple windows.

[0073] Each window in the plurality of windows can include a particular cycle-by-cycle analyte channel set for a particular sequencing cycle for the sequencing operation. The output of each window in the plurality of windows can include (i) a base call prediction for the particular sequencing cycle and (ii) one or more additional base call predictions for one or more additional sequencing cycles for the sequencing operation, thereby generating multiple base call predictions for the particular sequencing cycle across the multiple windows (e.g., generated in parallel or simultaneously by an output layer). Finally, the disclosed techniques include determining a base call for the particular sequencing cycle based on the multiple base call predictions.

[0074] Right neighbor input 132 includes current image data 108 for the current sequencing cycle for the sequencing operation (e.g., cycle 4), supplemented with previous image data 104 and 106 for one or more previous sequencing cycles preceding the current sequencing cycle (e.g., cycles 2 and 3). Right neighbor output 142 includes right neighbor base call prediction 114 for the current sequencing cycle, and base call predictions 110 and 112 for previous sequencing cycles.

[0075] The central input 134 includes current image data 108, supplemented with previous image data 106 (e.g., cycle 3) and subsequent image data 116 for one or more subsequent sequencing cycles (e.g., cycle 5) following the current sequencing cycle. The central output 144 includes central base call predictions 120 for the current sequencing cycle, and base call predictions 118 and 122 for the previous and subsequent sequencing cycles.

[0076] Left adjacent input 136 includes current image data 108, supplemented with subsequent image data 116 and 124. Left adjacent output 146 includes left adjacent base call prediction 126 for the current sequencing cycle, as well as base call predictions 128 and 130 for subsequent sequencing cycles (e.g., cycles 5 and 6).

[0077] 1D and 1E illustrate different examples of the disclosed many-to-many base calling. In FIGS. 1D and 1E, the blue boxes represent a specific or target sequencing cycle (or data therefor). A specific sequencing cycle is also considered the current sequencing cycle, and is a variety of implementations of the disclosed technology. The orange boxes represent sequencing cycles (or data therefor) that are different from the specific sequencing cycle. The green circles represent one or more base calls generated for a specific sequencing cycle. The base calls can be generated by any base caller, such as Illumina's Real-Time Analysis (RTA) software or the disclosed neural network-based base caller 102. The data for a sequencing cycle can be an image or some other type of input data, such as current readings, voltage changes, pH scale data, etc.

[0078] Referring to FIG. 1D , a first many-to-many base calling example 180 shows three base call iterations 180a, 180b, and 180c and three corresponding input windows / groups of sequencing cycles, w1, w2, and w3 (or data therefor). In one embodiment, the base call iteration generates base calls for each sequencing cycle within the corresponding input window of the sequencing cycle. In another embodiment, the base call iteration generates base calls for only some of the sequencing cycles (e.g., only certain sequencing cycles) within the corresponding input window of the sequencing cycle. Also, a certain sequencing cycle may appear at different positions within the input windows / groups of sequencing cycles w1, w2, and w3. In other embodiments (not shown), two or more input windows / groups of sequencing cycles may have a certain sequencing cycle at the same position. Furthermore, the input windows / groups of sequencing cycles w1, w2, and w3 have the certain sequencing cycle as at least one overlapping cycle and one or more non-overlapping cycles. That is, orange boxes in different positions in different input windows / groups of a sequencing cycle represent different non-overlapping cycles. Finally, the three base call iterations 180a, 180b, and 180c generate three base calls (i.e., three green circles) for a particular sequencing cycle, which may be considered tentative base calls and subsequently analyzed collectively to develop the final base calls for a particular sequencing cycle. Different examples of analysis are described below in Figures 2, 3, and 4.

[0079] The second and third examples of many-to-many base calling 181 and 182 illustrate that a particular sequencing cycle can be anywhere within the input window / group of sequencing cycles, with any number of right and left neighboring cycles, or no neighboring cycles at all (e.g., the third window (w3) in the third many-to-many base calling example 182). Three base call iterations 181a, 181b, and 181c generate three base calls (i.e., three green circles) for a particular sequencing cycle, which may be considered tentative base calls and subsequently analyzed collectively to develop the final base call for the particular sequencing cycle. Different examples of analysis are described below in Figures 2, 3, and 4. The three base call repeats 182a, 182b, and 182c generate three base calls (i.e., three green circles) for a particular sequencing cycle, which may be considered tentative base calls and subsequently analyzed as a group to develop the final base calls for a particular sequencing cycle. Different examples of analysis are described below in Figures 2, 3, and 4.

[0080] Figure 1E illustrates a many-to-many base calling example 183 having five base call repeats 183a-183e, each of which generates base call predictions for a particular sequencing cycle by processing five respective windows / sets / groups of input data in which the data for that particular sequencing cycle occurs at different positions. The five base call repeats 183a-183e generate five base calls (i.e., five green circles) for the particular sequencing cycle, which may be considered tentative base calls and subsequently analyzed collectively to develop the final base calls for the particular sequencing cycle. Different examples of analysis are described below in Figures 2, 3, and 4.

[0081] 2, 3, and 4 show different implementations of a base call generator. A base call generator 202 (e.g., running on a host processor) is coupled (e.g., via a PCI bus or Ethernet or InfiniBand (IB)) to a neural network-based base caller 102 (e.g., running on a chip) and is configured to generate base calls for a current sequencing cycle (e.g., cycle 4) based on the right-adjacent base call prediction, the center base call prediction, and the left-adjacent base call prediction for the current sequencing cycle.

[0082] The current image data for the current sequencing cycle describes the intensity emissions of the analytes incorporated in the current sequencing cycle and their surrounding background. The right adjacent 114 base call prediction, center 120 base call prediction, and left adjacent 126 base call prediction for the current sequencing cycle (e.g., cycle 4) identify the likelihood that the bases incorporated into one or more of the analytes in the current sequencing cycle are A, C, T, and G. In one embodiment, the likelihoods are exponentially normalized scores produced by a softmax layer used as an output layer by base caller 102.

[0083] In one embodiment, the right adjacent base call prediction 114 for the current sequencing cycle takes into account the prephasing effect between the current sequencing cycle (e.g., cycle 4) and the previous sequencing cycle. In one implementation, the center base call prediction 120 for the current sequencing cycle (e.g., cycle 4) takes into account the prephasing effect between the current sequencing cycle and the previous sequencing cycle, and the phasing effect between the current sequencing cycle and the subsequent sequencing cycle. In one implementation, the left adjacent base call prediction 126 for the current sequencing cycle (e.g., cycle 4) takes into account the phasing effect between the current sequencing cycle and the subsequent sequencing cycle.

[0084] As shown in FIG. 2, the base call generator is further configured to include an averager 204 that sums the likelihoods across the right adjacent 114 base call predictions, the center 120 base call predictions, and the left adjacent 126 base call predictions for a current sequencing cycle (e.g., cycle 4) per base, determines a per-base average 212 based on the per-base sums, and generates a base call 214 for the current sequencing cycle (e.g., cycle 4) based on the highest per-base average (e.g., 0.38).

[0085] As shown in FIG. 3 , the base call generator is further configured to include a consensus 304 that determines a preliminary base call for each of the right adjacent 114 base call prediction, the center 120 base call prediction, and the left adjacent 126 base call prediction for a current sequencing cycle (e.g., cycle 4) based on the highest of the likelihoods, thereby generating an array of preliminary base calls 306, and generates a base call for the current sequencing cycle based on the most common base call 308 among the array of preliminary base calls.

[0086] 4 , the base call generator is further configured to include a weighted consensus 404 that determines a preliminary base call for each of the right-adjacent base call prediction, the center base call prediction, and the left-adjacent base call prediction for a current sequencing cycle based on the highest likelihood among the likelihoods, thereby generating an array of preliminary base calls 406, applies per-base weights 408 to each preliminary base call in the array of preliminary base calls to create an array of weighted preliminary base calls 410, and generates a base call for a current sequencing cycle (e.g., cycle 4) based on the heaviest weighted base call 412 in the array of weighted preliminary base calls. In some embodiments, the per-base weights 408 are preset, for example, for each cycle. In other embodiments, the per-base weights 408 are learned, for example, using a least-squares method.

[0087] In one implementation illustrated in FIG. 6, the disclosed technology includes accessing current image data for a current sequencing cycle for a sequencing operation, previous image data for one or more previous sequencing cycles preceding the current sequencing cycle, and subsequent image data for one or more subsequent sequencing cycles following the current sequencing cycle (action 602); processing different groupings of the current image data, the previous image data, and the subsequent image data through a neural network-based base caller to generate a first base call prediction, a second base call prediction, and a third base call prediction for the current sequencing cycle (action 612); and generating base calls for the current sequencing cycle based on the first base call prediction, the second base call prediction, and the third base call prediction (action 622).

[0088] In one embodiment, the different groupings include a first grouping including the current image data and the previous image data, a second grouping including the current image data, the previous image data, and the subsequent image data, and a third grouping including the current image data and the subsequent image data.

[0089] In one implementation, the disclosed technique includes processing a first grouping through a neural network-based base caller to produce a first base call prediction, processing a second grouping through a neural network-based base caller to produce a second base call prediction, and processing a third grouping through a neural network-based base caller to produce a third base call prediction.

[0090] In one embodiment, the first base call prediction, the second base call prediction, and the third base call prediction for the current sequencing cycle identify the likelihood that the bases incorporated into one or more samples in the current sequencing cycle are A, C, T, and G.

[0091] In one embodiment, the disclosed techniques include generating a base call for a current sequencing cycle by summing likelihoods per base across the first base call prediction, the second base call prediction, and the third base call prediction for the current sequencing cycle, determining a per-base average based on the per-base sums, and generating a base call for the current sequencing cycle based on the highest of the per-base averages.

[0092] In one implementation, the disclosed technology includes generating a base call for a current sequencing cycle by determining a preliminary base call for each of the first base call prediction, the second base call prediction, and the third base call prediction for the current sequencing cycle based on the highest of the likelihoods, thereby creating an array of preliminary base calls, and generating a base call for the current sequencing cycle based on the most common base call among the array of preliminary base calls.

[0093] In one implementation, the disclosed technology includes determining a preliminary base call for each of the first base call prediction, the second base call prediction, and the third base call prediction for a current sequencing cycle based on the highest of the likelihoods, thereby applying a per-base weight to each preliminary base call in the sequence of preliminary base calls to create an sequence of weighted preliminary base calls, and generating a base call for the current sequencing cycle by generating a base call for the current sequencing cycle based on the heaviest weighted base call in the sequence of weighted preliminary base calls.

[0094] In one embodiment, referred to as "multiple-cycle training, single-cycle inference," base caller 102 is trained using a base call generator to produce two or more base call predictions for two or more sequencing cycles during training, but produces base call predictions for only a single sequencing cycle during inference.

[0095] In one embodiment, referred to as "multiple-cycle training, multiple-cycle inference," base caller 102 produces two or more base call predictions for two or more sequencing cycles during training, and is trained to do the same using base call generator 202 during inference.

[0096] Multi-cycle gradient backpropagation 5 illustrates one embodiment of the disclosed "multi-cycle gradient backpropagation 500." As shown in FIG. 5, the many-to-many basecalling 100 is further configured to include a trainer, which: calculating errors 512, 532, and 552 between base calls generated by the base call generator 202 for the current sequencing cycle (e.g., cycle 3), the previous sequencing cycle (e.g., cycle 2), and the subsequent sequencing cycle (e.g., cycle 4) based on the right neighbor 506 output, the center 504 output, and the left neighbor 502 output of the neural network-based base caller 102 and the respective ground truth base calls 554, 534, and 514; Based on the error, the gradients 542, 522, and 562 for the current, previous, and subsequent sequencing cycles, respectively, are determined and the parameters of the neural network-based base call are updated by backpropagating the gradients.

[0097] Technical Effects / Advantages FIG. 7 illustrates the technical effects and advantages of the disclosed technology.

[0098] The "multiple-cycle training, single-cycle inference" embodiment, referred to as "DL 3C intermediate" in Figure 7, improves the base calling error rate by 8% over conventional non-neural network-based real-time analytical base calling software.

[0099] The "multiple-cycle training, multiple-cycle inference" embodiment, referred to as "DL 3C average" in Figure 7, improves the base calling error rate by an additional 8% over the DL 3C intermediate embodiment.

[0100] Multiple base calling sequencing cycles improve base calling accuracy and detect and resolve base calling discrepancies and ambiguous base calls.

[0101] Multi-cycle gradient backpropagation also improves the gradient of basecaller 102 and its basecalling accuracy for basecalling training tasks.

[0102] Sequencing System 8A and 8B depict one embodiment of a sequencing system 800A. The sequencing system 800A includes a configurable processor 846. The configurable processor 846 implements the base calling techniques disclosed herein. A sequencing system is also referred to as a "sequencer."

[0103] Sequencing system 800A can operate to obtain any information or data related to at least one of biological or chemical substances. In some embodiments, sequencing system 800A is a workstation that can be similar to a benchtop device or desktop computer. For example, most (or all) of the systems and components for conducting the desired reactions can be within a common housing 802.

[0104] In certain embodiments, the sequencing system 800A is a nucleic acid sequencing system configured for various applications, including, but not limited to, de novo sequencing, resequencing of whole or targeted genome regions, and metagenomics. The sequencer may also be used for DNA or RNA analysis. In some embodiments, the sequencing system 800A may also be configured to generate reaction sites within a biosensor. For example, the sequencing system 800A may be configured to receive a sample and generate surface-bound clusters of clonovirus-amplified nucleic acids derived from the sample. Each cluster may constitute or be part of a reaction site within a biosensor.

[0105] The exemplary sequencing system 800A may include a system receptacle or interface 810 configured to interact with a biosensor 812 to carry out a desired reaction within the biosensor 812. In the following description of FIG. 8A , the biosensor 812 is loaded into the system receptacle 810. However, it is understood that a cartridge including the biosensor 812 may be inserted into the system receptacle 810, and that in some conditions the cartridge may be temporarily or permanently removed. As mentioned above, the cartridge may include, among other things, fluid control and fluid storage components.

[0106] In certain embodiments, the sequencing system 800A is configured to perform multiple parallel reactions within the biosensor 812. The biosensor 812 includes one or more reaction sites where desired reactions can occur. The reaction sites may be immobilized, for example, on a solid surface of the biosensor or on beads (or other movable substrates) located within corresponding reaction chambers of the biosensor. The reaction sites may include, for example, clusters of clonovirus-amplified nucleic acids. The biosensor 812 may include a solid-state imaging device (e.g., a CCD or CMOS imager) and a flow cell attached thereto. The flow cell may include one or more flow channels that receive solutions from the sequencing system 800A and direct the solutions toward the reaction sites. Optionally, the biosensor 812 may be configured to engage a thermal element for transferring thermal energy into and out of the flow channels.

[0107] Sequencing system 800A may include various components, assemblies, and systems (or subsystems) that interact with each other to perform a predetermined method or assay protocol for biological or chemical analysis. For example, sequencing system 800A includes a system controller 806 that may be in communication with the various components, assemblies, and subsystems of sequencing system 800A, as well as biosensor 812. For example, in addition to system receptacle 810, sequencing system 800A may also include a fluid control system 808 for controlling fluid flow throughout the fluidic network of sequencing system 800A and biosensor 812, a fluid reservoir system 814 configured to hold any fluids (e.g., gases or liquids) that may be used by the bioassay system, a temperature control system 804 that may regulate the temperature of fluids within the fluidic network, fluid reservoir system 814, and / or biosensor 812, and an illumination system 816 configured to illuminate biosensor 812. As described above, when a cartridge having a biosensor 812 is loaded into the system receptacle 810, the cartridge may also include fluid control and storage components.

[0108] As also shown, sequencing system 800A may include a user interface 818 for interacting with a user. For example, user interface 818 may include a display 820 for displaying or requesting information from a user and a user input device 822 for receiving user input. In some embodiments, display 820 and user input device 822 are the same device. For example, user interface 818 may include a touch-sensitive display configured to detect the presence of an individual touch and identify the location of the touch on the display. However, other user input devices 822, such as a mouse, touchpad, keyboard, keypad, handheld scanner, voice recognition system, motion recognition system, etc., may also be used. As discussed in more detail below, sequencing system 800A may communicate with various components, including biosensor 812 (e.g., in the form of a cartridge), to perform desired reactions. Sequencing system 800A may also be configured to analyze data obtained from the biosensor to provide desired information to the user.

[0109] The system controller 806 may include a microcontroller, a reduced instruction set computer (RISC), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a coarse-grained reconfigurable architecture (CGRA), a logic circuit, and any other circuit or processor capable of performing the functions described herein. The above examples are merely illustrative and thus are not intended to limit the definition and / or meaning of the term system controller. In an exemplary implementation, the system controller 806 executes a set of instructions stored in one or more storage elements, memories, or modules to acquire and / or analyze detection data. The detection data may include multiple sequences of pixel signals, thereby allowing sequences of pixel signals from each of millions of sensors (or pixels) to be detected over many base call cycles. The storage elements may be in the form of information sources or physical memory elements within the sequencing system 800A.

[0110] The set of instructions may include various commands that instruct the sequencing system 800A or biosensor 812 to perform specific operations, such as the methods and processes of various embodiments described herein. The set of instructions may be in the form of a software program, which may form part of a tangible, non-transitory computer-readable medium or media. As used herein, the terms "software" and "firmware" are used interchangeably and include any computer program stored in memory executed by a computer, including RAM memory, ROM memory, EPROM memory, EEPROM memory, and non-volatile RAM (NVRAM) memory. The above memory types are exemplary only and thus not limiting of the types of memory that may be used to store a computer program.

[0111] The software may be in various forms, such as system software or application software. Furthermore, the software may be in the form of a collection of separate programs, or a program module or portion of a program module within a larger program. The software may also include modular programming in the form of object-oriented programming. After acquiring the detection data, the detection data may be processed automatically by the sequencing system 800A, may be processed in response to user input, or may be processed in response to a request made by another processing machine (e.g., a remote request over a communications link). In another illustrated embodiment, the system controller 806 includes an analysis module 844. In other embodiments, the system controller 806 does not include the analysis module 844 but instead has access to the analysis module 844 (e.g., the analysis module 844 may be separately hosted on the cloud).

[0112] The system controller 806 may be connected to the biosensor 812 and other components of the sequencing system 800A via a communication link. The system controller 806 may also be communicatively connected to an off-site system or server. The communication link may be a wire, a cord, or wireless. The system controller 806 may receive user inputs or commands from a user interface 818 and a user input device 822.

[0113] The fluid control system 808 includes a fluid network and is configured to direct and regulate the flow of one or more fluids through the fluid network. The fluid network may be in fluid communication with a biosensor 812 and a fluid reservoir system 814. For example, a selected fluid may be drawn from the fluid reservoir system 814 and directed to the biosensor 812 in a controlled manner, or fluid may be drawn from the biosensor 812 and directed to, for example, a waste reservoir within the fluid reservoir system 814. Although not shown, the fluid control system 808 may include a flow sensor that detects the flow rate or fluid pressure of the fluid within the fluid network. The sensor may be in communication with the system controller 806.

[0114] Temperature control system 804 is configured to regulate the temperature of fluids in different regions of the fluid network, fluid reservoir system 814, and / or biosensor 812. For example, temperature control system 804 may include a thermocycler that interfaces with biosensor 812 and controls the temperature of fluids flowing along reaction sites within biosensor 812. Temperature control system 804 may also regulate the temperature of solid elements or components of sequencing system 800A or biosensor 812. Although not shown, temperature control system 804 may include sensors for detecting the temperature of fluids or other components. The sensors may be in communication with system controller 806.

[0115] The fluid storage system 814 is in fluid communication with the biosensor 812 and may store various reaction components or reactants used to induce a desired reaction. The fluid storage system 814 may also store fluids for washing or purifying the fluidic network and the biosensor 812 and for diluting reactants. For example, the fluid storage system 814 may include various reservoirs for storing samples, reagents, enzymes, other biomolecules, buffer solutions, aqueous solutions, non-polar solutions, etc. Additionally, the fluid storage system 814 may also include a waste reservoir for receiving waste from the biosensor 812. In embodiments including a cartridge, the cartridge may include one or more of a fluid storage system, a fluid control system, or a temperature control system. Accordingly, one or more of the components described herein for these systems may be contained within the cartridge housing. For example, the cartridge may have various reservoirs for storing samples, reagents, enzymes, other biomolecules, buffer solutions, aqueous and non-polar solutions, waste, etc. Thus, one or more of the fluid reservoir system, fluid control system, or temperature control system may be removably engaged with the bioassay system via a cartridge or other biosensor.

[0116] The illumination system 816 may include a light source (e.g., one or more light-emitting diodes (LEDs)) and multiple optical components to illuminate the biosensor. Examples of light sources include lasers, arc lamps, LEDs, or laser diodes. The optical components may be, for example, reflectors, polarizers, beam splitters, collimators, lenses, filters, wedges, prisms, mirrors, detectors, etc. In embodiments using an illumination system, the illumination system 816 may be configured to direct excitation light to the reaction sites. As an example, a fluorophore may be excited by a green wavelength of light, and therefore the wavelength of the excitation light may be approximately 532 nm. In one embodiment, the illumination system 816 is configured to create illumination parallel to the surface normal of the surface of the biosensor 812. In another embodiment, the illumination system 816 is configured to create illumination that is off-angled relative to the surface normal of the surface of the biosensor 812. In yet another embodiment, the illumination system 816 is configured to create illumination with multiple angles, including some parallel illumination and some off-angle illumination.

[0117] System receptacle or interface 810 is configured to engage biosensor 812 in at least one of mechanical, electrical, and fluidic manners. System receptacle 810 can hold biosensor 812 in a desired orientation to facilitate fluid flow through biosensor 812. System receptacle 810 can also include electrical contacts configured to engage biosensor 812 so that sequencing system 800A can communicate with and / or provide power to biosensor 812. Additionally, system receptacle 810 can include a fluid port (e.g., a nozzle) configured to engage biosensor 812. In some embodiments, biosensor 812 is removably coupled to system receptacle 810 in mechanical, electrical, and fluidic manners.

[0118] Additionally, the sequencing system 800A may communicate remotely with other systems or networks, or with other bioassay systems 800A. Detection data acquired by the bioassay system 800A may be stored in a remote database.

[0119] FIG. 8B is a block diagram of a system controller 806 that can be used in the system of FIG. 8A. In one embodiment, the system controller 806 includes one or more processors or modules that can communicate with each other. Each of the processors or modules may include an algorithm (e.g., instructions stored on a tangible and / or non-transitory computer-readable storage medium) or sub-algorithm for performing a particular process. While the system controller 806 is conceptually illustrated as a collection of modules, it may be implemented using any combination of dedicated hardware boards, DSPs, processors, etc. Alternatively, the system controller 806 may be implemented using an off-the-shelf PC with a single processor or multiple processors, with functional operations distributed among the processors. As a further option, the modules described below may be implemented using a hybrid configuration in which certain modular functions are implemented using dedicated hardware, while remaining modular functions are implemented using an off-the-shelf PC, etc. The modules may also be implemented as software modules within a processing unit.

[0120] During operation, the communication port 850 may send information (e.g., commands) to and receive information (e.g., data) from the biosensor 812 (FIG. 8A) and / or the subsystems 808, 814, 804 (FIG. 8A). In an embodiment, the communication port 850 may output multiple arrays of pixel signals. The communication link 834 may receive user input from the user interface 818 (FIG. 8A) and send data or information to the user interface 818. Data from the biosensor 812 or the subsystems 808, 814, 804 may be processed in real time by the system controller 806 during a bioassay session. Additionally or alternatively, the data may be temporarily stored in system memory during a bioassay session and processed slower than in real time or for offline operation.

[0121] As shown in FIG. 8B, the system controller 806 may include multiple modules 824-848 in communication with a main control module 824 along with a central processing unit (CPU) 852. The main control module 824 may be in communication with a user interface 818 (FIG. 8A). While the modules 824-848 are shown in direct communication with the main control module 824, the modules 824-848 may also be in direct communication with each other, the user interface 818, and the biosensor 812. The modules 824-848 may also be in communication with the main control module 824 through other modules.

[0122] The plurality of modules 824-848 includes system modules 828-832, 826 that communicate with subsystems 808, 814, 804, and 816, respectively. The fluid control module 828 may communicate with the fluid control system 808 to control valves and flow sensors in the fluid network to control the flow of one or more fluids through the fluid network. The fluid storage module 830 may notify a user when fluid is low or when a waste reservoir is at or near maximum capacity. The fluid storage module 830 may also communicate with a temperature control module 832 so that fluids can be stored at a desired temperature. The illumination module 826 may communicate with the illumination system 816 to illuminate reaction sites at specified times during a protocol, such as after a desired reaction (e.g., a binding event) has occurred. In some embodiments, the illumination module 826 may communicate with the illumination system 816 to illuminate reaction sites at a specified angle.

[0123] The plurality of modules 824-848 may also include a device module 836 that communicates with the biosensor 812 and an identification module 838 that determines identification information about the biosensor 812. The device module 836 may communicate with the system receptacle 810, for example, to confirm that the biosensor has established electrical and fluidic connection with the sequencing system 800A. The identification module 838 may receive a signal that identifies the biosensor 812. The identification module 838 may use the identification information of the biosensor 812 to provide other information to a user. For example, the identification module 838 may determine and then display the lot number, manufacturing date, or recommended protocol for operating the biosensor 812.

[0124] The plurality of modules 824-848 also includes an analysis module 844 (also referred to as a signal processing module or signal processor) that receives and analyzes signal data (e.g., image data) from the biosensor 812. The analysis module 844 includes memory (e.g., RAM or Flash) for storing the detection / image data. The detection data can include multiple sequences of pixel signals, such that sequences of pixel signals from each of millions of sensors (or pixels) can be detected over many base call cycles. The signal data can be stored for subsequent analysis or transmitted to the user interface 818 to display desired information to the user. In some embodiments, the signal data can be processed by a solid-state imager (e.g., a CMOS image sensor) before the analysis module 844 receives the signal data.

[0125] Analysis module 844 is configured to acquire image data from the photodetector in each of the plurality of sequencing cycles. The image data is derived from the luminescence signals detected by the photodetector, and processes the image data for each of the plurality of sequencing cycles through base caller 102 to generate base calls for at least some of the analytes in each of the plurality of sequencing cycles. The photodetector may be part of one or more overhead cameras (e.g., a CCD camera in an Illumina GAIIx that takes images of the clusters on biosensor 812 from above) or may be part of biosensor 812 itself (e.g., a CMOS image sensor in an Illumina iSeq that is below the clusters on biosensor 812 and takes images of the clusters from the bottom).

[0126] The output of the photodetectors is a sequencing image showing the intensity emissions of each cluster and their surrounding background. The sequencing image shows the intensity emissions generated as a result of incorporating nucleotides into a sequence during sequencing. The intensity emissions are from the associated analytes and their surrounding background. The sequencing image is stored in memory 848.

[0127] Protocol modules 840 and 842 communicate with main control module 824 to control the operation of subsystems 808, 814, and 804 when implementing a predetermined assay protocol. Protocol modules 840 and 842 may include sets of instructions for instructing sequencing system 800A to perform specific operations according to a predetermined protocol. As shown, a protocol module may be a sequencing-by-synthesis (SBS) module 840 configured to issue various commands to execute a sequencing-by-synthesis process. In SBS, the extension of nucleic acid primers along a nucleic acid template is monitored to determine the sequence of nucleotides in the template. The underlying chemical process may be polymerization (e.g., catalyzed by a polymerase enzyme) or ligation (e.g., catalyzed by a ligase enzyme). In certain polymer-based SBS embodiments, fluorescently labeled nucleotides are added to primers (thereby extending the primers) in a template-dependent manner, such that detection of the order and type of nucleotides added to the primers can be used to determine the sequence of the template. For example, to initiate the first SBS cycle, one or more labeled nucleotides, DNA polymerase, etc. can be delivered into / through a flow cell containing an array of nucleic acid templates. The nucleic acid templates may be located at corresponding reaction sites. These reaction sites can be detected through an imaging event, where primer extension incorporates labeled nucleotides. During the imaging event, an illumination system 816 can provide excitation light to the reaction sites. Optionally, the nucleotides can further include a reversible termination feature that terminates further primer extension once the nucleotide is added to the primer. For example, a nucleotide analog with a reversible terminator moiety can be added to the primer to prevent further extension until a deblocking agent is delivered to remove the moiety. Thus, in another embodiment using reversible termination, a command can be given to deliver a deblocking reagent to the flow cell (either before or after detection).One or more commands can be provided to effect washing between the various delivery steps. The cycle is then repeated n times to extend the primer by n nucleotides, thereby detecting a sequence of length n. Exemplary sequencing techniques are described, for example, in Bentley et al., Nature 456:53-59 (2008), WO 04 / 018497, U.S. Pat. No. 7,057,026, WO 91 / 06678, WO 07 / 123744, U.S. Pat. No. 7,329,492, U.S. Pat. No. 7,211,414, U.S. Pat. No. 7,315,019, U.S. Pat. No. 7,405,281, and U.S. Pat. No. 2008 / 014708082, each of which is incorporated herein by reference.

[0128] The nucleotide delivery step of the SBS cycle can deliver either a single type of nucleotide at a time or multiple different nucleotide types (e.g., A, C, T, and G). In nucleotide delivery configurations where only a single type of nucleotide is present at a time, different nucleotides do not need to have distinct labels because they can be distinguished based on the temporal separation inherent in individualized delivery. Thus, a sequencing method or apparatus can use single-color detection. For example, the excitation source only needs to provide excitation at a single wavelength or a single wavelength range. In nucleotide delivery configurations where delivery results in multiple different nucleotides being present in the flow cell at a given time, the sites at which different nucleotide types incorporate can be distinguished based on the different fluorescent labels attached to each nucleotide type in the mixture. For example, four different nucleotides, each bearing one of four different fluorophores, can be used. In one embodiment, four different fluorophores can be distinguished using excitation in four different regions of the spectrum. For example, four different excitation radiation sources can be used. Alternatively, fewer than four different excitation sources can be used, but optical filtering of the excitation radiation from a single source can be used to generate different excitation radiation ranges in the flow cell.

[0129] In some embodiments, fewer than four different colors can be detected in a mixture having four different nucleotides. For example, pairs of nucleotides can be detected at the same wavelength but can be distinguished based on the difference in intensity of one member of the pair compared to the other member of the pair, or based on a change to one member of the pair (e.g., via chemical, photochemical, or physical modification) that causes a distinct signal to appear or disappear compared to the signal detected for the other member of the pair. Exemplary devices and methods for distinguishing four different nucleotides using detection of fewer than four colors are described, for example, in U.S. Patent Application Nos. 61 / 538,294 and 61 / 619,878, which are incorporated herein by reference in their entireties. U.S. Application No. 13 / 624,200, filed September 21, 2012, is also incorporated by reference in its entirety.

[0130] The multiple protocol modules may also include a sample preparation (or generation) module 842 configured to issue commands to the fluidic control system 808 and the temperature control system 804 to amplify the product within the biosensor 812. For example, the biosensor 812 may be coupled to a sequencing system 800A. The amplification module 842 may issue commands to the fluidic control system 808 to deliver the necessary amplification components to a reaction chamber within the biosensor 812. In other embodiments, the reaction site may already contain some components for amplification, such as template DNA and / or primers. After delivering the amplification components to the reaction chamber, the amplification module 842 may command the temperature control system 804 to cycle through different temperature steps according to a known amplification protocol. In some embodiments, amplification and / or nucleotide incorporation is performed isothermally.

[0131] The SBS module 840 can issue commands to perform bridge PCR, in which clusters of clonal amplicons are formed over localized regions within the flow cell channel. After generating amplicons via bridge PCR, the amplicons can be "linearized" to create single-stranded template DNA, and sstDNA and sequencing primers can be hybridized to universal sequences flanking the region of interest. For example, reversible terminator-based sequencing by synthesis methods can be used, as described above or as follows.

[0132] Each base calling or sequencing cycle can extend the sstDNA by a single base, which can be achieved, for example, by using a modified DNA polymerase and a mixture of four types of nucleotides. Different types of nucleotides can have unique fluorescent labels, and each nucleotide can further have a reversible terminator that allows only a single base to be incorporated in each cycle. After addition of a single base to the sstDNA, excitation light can enter the reaction site and detect fluorescent emission. After detection, the fluorescent label and terminator can be chemically cleaved from the sstDNA. Another similar base calling or sequencing cycle may be as follows: In such a sequencing protocol, the SBS module 840 can instruct the fluid control system 808 to direct the flow of reagent and enzyme solutions through the biosensor 812. Exemplary reversible terminator-based SBS methods that can be utilized with the devices and methods described herein are described in U.S. Patent Application Publication No. 2007 / 0166705(A1), U.S. Patent Application Publication No. 2006 / 0188901(A1), U.S. Patent No. 7,057,026, U.S. Patent Application Publication No. 2006 / 0240439(A1), U.S. Patent Application Publication No. 2006 / 02814714709(A1), WO 05 / 065814, U.S. Patent Application Publication No. 2005 / 014700900(A1), WO 06 / 08B199, and WO 07 / 01470251, each of which is incorporated by reference in its entirety. Exemplary reagents for reversible terminator-based SBS are described in U.S. Patent No. 7,541,444, U.S. Patent No. 7,057,026, U.S. Patent No. 7,414,14716, U.S. Patent No. 7,427,673, U.S. Patent No. 7,566,537, U.S. Patent No. 7,592,435, and WO 07 / 14835368, each of which is incorporated herein by reference.

[0133] In some embodiments, the amplification and SBS modules may operate in a single assay protocol, eg, template nucleic acids are amplified and subsequently sequenced within the same cartridge.

[0134] The sequencing system 800A may also allow the user to reconfigure the assay protocol. For example, the sequencing system 800A may suggest options to the user through the user interface 818 to modify the determined protocol. For example, if it is determined that the biosensor 812 should be used for amplification, the sequencing system 800A may request a temperature for the annealing cycle. Furthermore, the sequencing system 800A may issue a warning to the user if the user provides user input that is not generally accepted for the selected assay protocol.

[0135] In an embodiment, biosensor 812 includes millions of sensors (or pixels), each of which generates multiple sequences of pixel signals over subsequent base call cycles. Analysis module 844 detects the multiple sequences of pixel signals and attributes them to corresponding sensors (or pixels) according to the row and / or column location of the sensors on the array of sensors.

[0136] FIG. 9 is a simplified block diagram of a system for analyzing sensor data, such as base call sensor output, from a sequencing system 800A. In the example of FIG. 9, the system includes a configurable processor 846. The configurable processor 846 can execute a base caller (e.g., a neural network-based base caller 102) in coordination with a runtime program executed by a central processing unit (CPU) 852 (i.e., a host processor). The sequencing system 800A includes a biosensor 812 and a flow cell. The flow cell can include one or more tiles in which clusters of genetic material are exposed to a series of analyte flows that are used to trigger reactions within the clusters to identify bases in the genetic material. A sensor detects reactions for each cycle of sequencing in each tile of the flow cell to provide tile data. Genetic sequencing is a data-intensive operation that converts base call sensor data into a sequence of base calls for each group of genetic material sensed during the base calling operation.

[0137] The system in this example includes a CPU 852 that executes a runtime program to coordinate the base calling operations, and memory 848B for storing the sequences of arrays of tile data, base call reads produced by the base calling operations, and other information used in the base calling operations. Also in this example, the system includes memory 848A for storing a configuration file (or files), such as an FPGA bit file, and model parameters of a neural network used to configure and reconfigure configurable processor 846 and to run the neural network. Sequencing system 800A can include a program for configuring the configurable processor, and in some embodiments, the reconfigurable processor to run the neural network.

[0138] Sequencing system 800A is coupled to configurable processor 846 by bus 902. Bus 902, in one example, may be implemented using high-throughput technology, such as bus technology compatible with the PCIe (Peripheral Component Interconnect Express) standard currently maintained and developed by the PCI-SIG (Peripheral Components Interconnect Express) standard. Also in this example, memory 848A is coupled to configurable processor 846 by bus 906. Memory 848A may be on-board memory disposed on a circuit board with configurable processor 846. Memory 848A is used for fast access by configurable processor 846 of working data used in base calling operations. Bus 906 may also be implemented using high-throughput technology, such as bus technology compatible with the PCIe standard.

[0139] Configurable processors, including field programmable gate arrays (FPGAs), coarse-grained configurable reconfigurable arrays (CGRAs), and other configurable and reconfigurable devices, can be configured to implement various functions more efficiently or faster than can be achieved using general-purpose processors running computer programs. Configuring a configurable processor involves compiling a functional description to generate a configuration file, sometimes referred to as a bitstream or bitfile, and distributing the configuration file to configurable elements on the processor. The configuration file configures the circuit to set dataflow patterns, including the use of distributed memory and other on-chip memory resources, lookup table contents, the operation of configurable logic blocks, and configurable execution units such as configurable interconnects and other elements of the configurable array. A configuration file is reconfigurable if it can be changed in the field by modifying a loaded configuration file. For example, the configuration file may be stored in a volatile SRAM element, a non-volatile read-write memory element, or distributed among an array of configurable elements on a configurable or reconfigurable processor. Various commercially available configurable processors are suitable for use in basecall operations as described herein.Examples include Google's Tensor Processing Unit (TPU)™, GX4 Rackmount Series™, GX9 Rackmount Series™, NVIDIA DGX-1™, Microsoft's Stratix V FPGA™, Graphcore's Intelligent Processor Unit (IPU)™, Qualcomm's Zeroth Platform™ (Snapdragon processors™), NVIDIA Volta™, NVIDIA's Drive PX™, NVIDIA's JETSON TX1 / TX2 MODULE™, Intel's Nirvana™, Movidius VPU™, Fujitsu DPI™, Arm's DynamicIQ™, IBM TrueNorth™, Lambda GPU Server with Testa V100s™, Xilinx Alveo™ U200, Xilinx Alveo™ U250, Xilinx Alveo™ U280, Intel / Altera Stratix™ GX2800, Intel / Altera Stratix™ GX2800, and Intel Stratix™ GX10M. In some embodiments, the host CPU may be implemented on the same integrated circuit as the configurable processor.

[0140] The embodiments described herein implement the neural network-based base caller 102 using a configurable processor 846. The configuration file for the configurable processor 846 may be implemented by specifying the logic functions to be performed using a high level description language (HDL) or a register transfer level (RTL) language specification. This specification can be compiled using resources designed for a selected configurable processor to generate the configuration file. The same or similar specifications can be compiled to generate a design for an application-specific integrated circuit, which may not be a configurable processor.

[0141] Thus, alternative examples of the configurable processor 846, in all embodiments described herein, include a configured processor comprising an application specific ASIC or dedicated integrated circuit or set of integrated circuits, or a system-on-chip SOC device, or a graphics processing unit (GPU) processor or a coarse-grained reconfigurable architecture (CGRA) processor configured to perform the neural network-based base call operations described herein.

[0142] In general, the configurable and configured processors described herein that are configured to perform neural network operations are referred to herein as neural network processors.

[0143] Configurable processor 846 is configured, in this example, using a program executed by CPU 852 or by a configuration file loaded by another source, which configures an array of configurable elements 916 (e.g., Configuration Logic Blocks (CLBs) such as Look Up Tables (LUTs), flip-flops, compute processing units (PMUs), and Compute Memory Units (CMUs), configurable I / O blocks, programmable interconnect) on the configurable processor to perform base calling functions. In this example, the configuration includes data flow logic 908 coupled to buses 902 and 906 and performing functions for distributing data and control parameters among elements used in base calling operations.

[0144] The configurable processor 846 also configures the base call execution dataflow logic 908 to execute the neural network-based base caller 102. The dataflow logic 908 includes multi-cycle execution clusters (e.g., 914), which in this example include execution cluster 1 through execution cluster X. The number of multi-cycle execution clusters may be selected according to tradeoffs including the desired throughput of operation and the available resources on the configurable processor 846.

[0145] The multi-cycle execution clusters are coupled to the dataflow logic 908 by dataflow paths 910 implemented using configurable interconnect and memory resources on the configurable processor 846. The multi-cycle execution clusters are also coupled to the dataflow logic 908 by control paths 912 implemented using configurable interconnect and memory resources, for example, on the configurable processor 846, to provide control signals indicating available execution clusters, readiness to provide input units for execution of the operations of the neural network-based base caller 102, readiness to provide trained parameters for the neural network-based base caller 102, readiness to provide output patches of base call classification data, and other control data used in the execution of the neural network-based base caller 102.

[0146] The configurable processor 846 is configured to execute the operation of the neural network-based base caller 102 using the trained parameters to generate classification data for the detection cycles of the base calling operation. The operation of the neural network-based base caller 102 is executed to generate classification data for the subject detection cycles of the base calling operation. The operation of the neural network-based base caller 102 operates on an array including an array of number N of tile data from each detection cycle of N detection cycles, which, in the example described herein, provide sensor data for different base calling operations at one base position per operation in the time sequence. Optionally, some of the N detection cycles can be removed from the array as needed according to the particular neural network model being implemented. The number N can be any number greater than 1. In some examples described herein, the detection cycles of the N detection cycles represent a set of detection cycles for at least one detection cycle preceding the subject detection cycle and at least one detection cycle following the subject cycle. Examples described herein include an integer number N of 5 or greater.

[0147] The data flow logic 908 is configured to use an input unit for a given operation that includes tile data for an array of N spatially aligned patches to move the tile data and at least some of the trained parameters of the model parameters from memory 848A to the configurable processor 846 for operation of the neural network-based base caller 102. The input unit may be moved by a direct memory access operation in a single DMA operation, or in smaller units that move during available time slots in coordination with the execution of the deployed neural network.

[0148] The tile data of the sensing cycles described herein can include an array of sensor data having one or more features. For example, the sensor data can include two images analyzed to identify one of four bases at a base position in a genetic sequence of DNA, RNA, or other genetic material. The tile data can also include metadata about the images and sensors. For example, in a base calling embodiment, the tile data can include information about the alignment of the images with the clusters, such as distance from center information indicating the distance of each pixel in the array of sensor data from the center of the group of genetic material on the tile.

[0149] During execution of the neural network-based base caller 102 as described below, the tile data may also include data produced during execution of the neural network-based base caller 102, referred to as intermediate data, which may be reused rather than recomputed during operation of the neural network-based base caller 102. For example, during execution of the neural network-based base caller 102, the data flow logic 908 may write the intermediate data to memory 848A in place of sensor data for a given patch of the array of tile data. Such embodiments are described in more detail below.

[0150] As illustrated, the system is described for analyzing base call sensor outputs and includes a runtime program-accessible memory (e.g., 848A) that stores tile data including tile sensor data from a detection cycle of a base calling operation. The system also includes a neural network processor, such as a configurable processor 846, that has access to the memory. The neural network processor is configured to perform neural network operations using trained parameters to generate classification data for the detection cycle. As described herein, the neural network operations operate on an arrangement of N arrays of tile data from each of the N detection cycles comprising a subject cycle to generate classification data for the subject cycle. Data flow logic 908 is provided to move the tile data and trained parameters from the memory to the neural network processor for execution of the neural network using input units including data for the N arrays of spatially aligned patches from each of the N detection cycles.

[0151] Also described is a system in which a neural network processor has access to a memory and includes a plurality of execution clusters, the execution clusters being configured to execute a neural network. Data flow logic 908 has access to the memory and to clusters within the plurality of execution clusters to provide an input unit of tile data to an available execution cluster within the plurality of execution clusters, the input unit including spatially aligned patches of an array of number N of tile data from respective sensing cycles comprising a subject detection cycle, and causes the execution cluster to apply the N, where N is greater than 1, spatially aligned patches to the neural network to produce an output patch of classification data of the spatially aligned patches of subject detection cycles.

[0152] 9 and 10, in one embodiment, the disclosed technology includes an artificial intelligence-based system for base calling, the system including a host processor, a memory accessible by the host processor that stores image data for a sequencing cycle for a sequencing operation, the current image data for a current sequencing cycle for the sequencing operation depicting intensity emissions of the analyte acquired in the current sequencing cycle and the surrounding background, a configurable processor having access to the memory, the configurable processor including a plurality of execution clusters, each execution cluster configured to execute a neural network, and data flow logic having access to the memory and to the execution clusters within the plurality of execution clusters, the configurable processor transmitting to an available execution cluster within the plurality of execution clusters the current image data, one or more previous image data preceding the current sequencing cycle, and data flow logic configured to: provide previous image data for the current sequencing cycle and subsequent image data for one or more subsequent sequencing cycles following the current sequencing cycle; cause the execution cluster to apply different groupings of the current image data, the previous image data, and the subsequent image data to a neural network to produce first, second, and third base call predictions for the current sequencing cycle; and cause the first, second, and third base call predictions for the current sequencing cycle to be fed back to the memory for use in generating base calls for the current sequencing cycle based on the first, second, and third base call predictions.

[0153] In one embodiment, the different groupings include a first grouping including the current image data and the previous image data, a second grouping including the current image data, the previous image data, and the subsequent image data, and a third grouping including the current image data and the subsequent image data.

[0154] In one embodiment, the execution cluster applies the first grouping to a neural network to produce a first base call prediction, applies the second grouping to a neural network to produce a second base call prediction, and applies the third grouping to a neural network to produce a third base call prediction.

[0155] In one embodiment, the first base call prediction, the second base call prediction, and the third base call prediction for the current sequencing cycle identify the likelihood that the bases incorporated into one or more samples in the current sequencing cycle are A, C, T, and G.

[0156] In one implementation, the data flow logic is further configured to generate a base call for the current sequencing cycle by summing the likelihoods per base across the first base call prediction, the second base call prediction, and the third base call prediction for the current sequencing cycle, determining a base average based on the per-base sum, and generating a base call for the current sequencing cycle based on the highest per-base average.

[0157] In one implementation, the data flow logic is further configured to generate a base call for the current sequencing cycle by determining a preliminary base call for each of the first base call prediction, the second base call prediction, and the third base call prediction for the current sequencing cycle based on the highest of the likelihoods, thereby producing an array of preliminary base calls, and generating a base call for the current sequencing cycle based on the most common base call among the array of preliminary base calls.

[0158] In one implementation, the data flow logic is further configured to generate a base call for the current sequencing cycle by determining a preliminary base call for each of the first base call prediction, the second base call prediction, and the third base call prediction for the current sequencing cycle based on the highest of the likelihoods, thereby applying a per-base weight to each preliminary base call in the sequence of preliminary base calls to create an array of weighted preliminary base calls, and generating a base call for the current sequencing cycle based on the heaviest weighted base call in the sequence of weighted preliminary base calls.

[0159] Figure 10 is a simplified diagram illustrating aspects of a base calling operation, including the functionality of a runtime program executed by a host processor. In this diagram, image sensor output from a flow cell is provided on line 1000 to image processing thread 1001, which can perform processes on the image, such as aligning and positioning individual tiles within an array of sensor data and resampling the image, which can be used by a process to calculate a tile cluster mask for each tile within the flow cell, thereby identifying pixels within the array of sensor data that correspond to clusters of genetic material on the corresponding tile of the flow cell. The output of image processing thread 1001 is provided on line 1002 to dispatch logic 1010 within the CPU, which routes the array of tile data to a data cache 1004 (e.g., SSD storage) over high-speed bus 1003 or to neural network processor hardware 1020, such as configurable processor 846 of Figure 9, over high-speed bus 1005, depending on the status of the base calling operation. The processed and transformed images may be stored on data cache 1004 to keep track of previously used cycles. Hardware 1020 returns the classification data output by the neural network to dispatch logic 1010, which may pass the information to data cache 1004 or, on line 1011, to thread 1002, which performs base calling and quality score calculations using the classification data and places the data in a standard format for base called reads. The output of thread 1002, which performs base calling and quality score calculations, is provided on line 1012 to thread 1003, which aggregates the base called reads, performs other operations such as data compression, and writes the resulting base calling output to a specified destination for consumption by the customer.

[0160] In some embodiments, the host may include a thread (not shown) that performs final processing of the output of the hardware 1020 that supports the neural network. For example, the hardware 1020 may provide classification data output from the final layer of a multi-cluster neural network. The host processor may perform output activation functions, such as a softmax function, on the classification data to organize the data for use by the base calling and quality score thread 1002. The host processor may also perform input operations (not shown), such as batch normalization of the tile data before input to the hardware 1020.

[0161] FIG. 11 is a simplified diagram of a configurable processor 846 configuration, such as that of FIG. 9. In FIG. 11, the configurable processor 846 comprises an FPGA with multiple high-speed PCIe interfaces. The FPGA is configured with a wrapper 1100 including dataflow logic 908 described with reference to FIG. 9. The wrapper 1100 manages interfacing and coordination with a runtime program in the CPU via a CPU communication link 1109 and communication with an on-board DRAM 1102 (e.g., memory 848A) via a DRAM communication link 1110. The dataflow logic 908 in the wrapper 1100 provides patch data to the cluster 1101 obtained by traversing an array of tile data on the on-board DRAM 1102 for a number N of cycles, and retrieves process data 1115 from the cluster 1101 for transmission back to the on-board DRAM 1102. The wrapper 1100 also manages the transfer of data between the on-board DRAM 1102 and host memory for both input arrays of tile data and output patches of classification data. The wrapper forwards the patch data on line 1113 to the assigned cluster 1101. The wrapper provides trained parameters, such as weights and biases, to cluster 1101 on line 1112, retrieved from onboard DRAM 1102. The wrapper provides configuration and control data on line 1111 to cluster 1101, provided by or generated in response to a runtime program on the host via CPU communication link 1109. The cluster can also provide status signals on line 1116 to wrapper 1100, which are used in conjunction with control signals from the host to manage traversal of the array of tile data to provide spatially aligned patch data and to run a multi-cycle neural network on the patch data using the resources of cluster 1101.

[0162] As described above, there may be multiple clusters on a single configurable processor managed by wrapper 1100 configured to run on corresponding ones of the multiple patches of tile data. Each cluster may be configured to provide classification data for base calls in a subject detection cycle using the tile data of multiple sensing cycles as described herein.

[0163] In an example system, model data, including kernel data such as filter weights and biases, can be sent from the host CPU to the configurable processor, so that the model can be updated as a function of cycle number. Base calling operations can typically involve hundreds of sensing cycles. In some embodiments, base calling operations can include paired end reads. For example, model-trained parameters can be updated every 20 cycles (or other number of cycles) or according to an update pattern implemented in a particular system and neural network model. In some embodiments, where a sequence for a given string in a genetic cluster on a tile includes paired end reads that include a first portion extending downward (or upward) from a first end of the string and a second portion extending upward (or downward) from a second end of the string, trained parameters can be updated at the transition from the first portion to the second portion.

[0164] In some embodiments, image data for multiple cycles of sensor data for a tile can be sent from the CPU to wrapper 1100. Wrapper 1100 can optionally perform some preprocessing and transformation of the sensor data and write the information to on-board DRAM 1102. The input tile data for each sensing cycle can include an array of sensor data containing 4000 x 3000 pixels / tile or more per tile, with two features representing the colors of two images of the tile and including one or two bytes per pixel. In an embodiment where the number N is three sensing cycles used in each operation of the multi-cycle neural network, the array of tile data for each operation of the multi-cycle neural network can consume several hundred megabytes per number. In some embodiments of the system, the tile data also includes an array of DFC data stored once per tile, or other types of metadata about the sensor data and tile.

[0165] In operation, if a multi-cycle cluster is available, the wrapper assigns the patch to the cluster. The wrapper fetches the next patch of tile data for the cross section of the tile and sends it to the assigned cluster along with the appropriate control and configuration information. The cluster can be configured with enough memory on the configurable processor to have enough memory to hold the patch of data, including the patch, from multiple cycles in some systems being processed in place, and in various embodiments is processed using a ping-pong buffer technique or a raster scan technique.

[0166] When an assigned cluster completes its operation of the neural network for the current patch and generates an output patch, it signals the wrapper. The wrapper either reads the output patch from the assigned cluster, or the assigned cluster pushes data to the wrapper. The wrapper then assembles the output patch for the processed tile in DRAM 1102. Once processing of the entire tile is complete and the output patch of data is transferred to DRAM, the wrapper sends the processed output array back to the host / CPU in a specific format. In some embodiments, the on-board DRAM 1102 is managed by memory management logic within the wrapper 1100. A runtime program can control the sequencing operation to complete analysis of all tile data arrays on every cycle, operating in a continuous flow to provide real-time analysis.

[0167] Computer Systems 12 illustrates a computer system 1200 that may be used by sequencing system 800A to implement the base calling techniques disclosed herein. Computer system 1200 includes at least one central processing unit (CPU) 1272 that communicates with several peripheral devices via a bus subsystem 1255. These peripheral devices may include, for example, a storage subsystem 1210, including a memory device and file storage subsystem 1236, a user interface input device 1238, a user interface output device 1276, and a network interface subsystem 1274. The input and output devices allow a user to interact with computer system 1200. Network interface subsystem 1274 provides an interface to external networks, including interfaces to corresponding interface devices in other computer systems.

[0168] In one embodiment, the system controller 806 is communicatively linked to a storage subsystem 1210 and a user interface input device 1238 .

[0169] User interface input devices 1238 can include pointing devices such as keyboards, mice, trackballs, touchpads, or graphics tablets, scanners, touchscreens integrated into displays, audio input devices such as voice recognition systems and microphones, and other types of input devices. In general, use of the term "input device" is intended to encompass all possible types of devices and ways of inputting information into computer system 1200.

[0170] The user interface output devices 1276 may include a display subsystem, a printer, a fax machine, or a non-visual display such as an audio output device. The display subsystem may include a flat panel device such as an LED display, a cathode ray tube (CRT), a liquid crystal display (LCD), a projection device, or some other mechanism for producing a visible image. The display subsystem may also provide a non-visual display such as an audio output device. In general, use of the term "output device" is intended to include all possible types of devices and methods for outputting information from the computer system 1200 to a user or to another machine or computer system.

[0171] The storage subsystem 1210 stores programming and data structures that provide the functionality of some or all of the modules and methods described herein. These software modules are generally executed by the deep learning processor 1278.

[0172] The deep learning processor 1278 may be a graphics processing unit (GPU), a field-programmable gate array (FPGA), an application-specific integrated circuit (ASIC), and / or a coarse-grained reconfigurable architecture (CGRAs). The deep learning processor 1278 may be hosted by a deep learning cloud platform such as Google Cloud Platform™, Xilinx™, and Cirrascale™. Examples of deep learning processors 1278 include Google's Tensor Processing Unit (TPU)™, rackmount solutions such as the GX4 Rackmount Series™, GX12 Rackmount Series™, NVIDIA DGX-1™, Microsoft's Stratix V FPGA™, Graphcore's Intelligent Processor Unit (IPU)™, Qualcomm's Zeroth Platform™ with Snapdragon processors™, NVIDIA's Volta™, NVIDIA's DRIVE PX™, NVIDIA's JETSON TX1 / TX2 MODULE™, Intel's Nirvana™, Movidius VPU™, Fujitsu DPI™, ARM's DynamicIQ™, IBM TrueNorth™, Lambda GPU Server with Testa V100s™, and the like.

[0173] The memory subsystem 1222 used in the storage subsystem 1210 may include several memories, including a main random access memory (RAM) 1232 for storing instructions and data during program execution, and a read only memory (ROM) 1234 in which fixed instructions are stored. The file storage subsystem 1236 may provide persistent storage for program and data files and may include a hard disk drive, a floppy disk with associated removable media, a CD-ROM drive, an optical drive, or a removable media cartridge. Modules implementing the functionality of a particular embodiment may be stored within the storage subsystem 1210 by the file storage subsystem 1236 or within another machine accessible by the processor.

[0174] Bus subsystem 1255 provides a mechanism for allowing the various components and subsystems of computer system 1200 to communicate with each other as intended. Although bus subsystem 1255 is shown schematically as a single bus, alternative implementations of the bus subsystem may use multiple buses.

[0175] The computer system 1200 itself can be of various types, including a personal computer, a portable computer, a workstation, a computer terminal, a network computer, a television, a mainframe, a server farm, a widely distributed set of loosely networked computers, or any other data processing system or user device. Because the nature of computers and networks is constantly changing, the description of the computer system 1200 depicted in Figure 12 is intended only as a specific example for purposes of illustrating a preferred embodiment of the present invention. Many other configurations of computer system 1200 are possible, having more or fewer components than the computer system depicted in Figure 12.

[0176] item The present inventors disclose the following items.

[0177] 1. An artificial intelligence-based system for base calling, the system comprising: 1. A neural network based base caller that processes at least a right adjacent input, a center input, and a left adjacent input and produces at least a right adjacent output, a center output, and a left adjacent output, the right adjacent input includes current image data for a current sequencing cycle for the sequencing operation, supplemented with previous image data for one or more previous sequencing cycles preceding the current sequencing cycle; the right adjacent output includes right adjacent base call predictions for the current sequencing cycle and base call predictions for the previous sequencing cycle; a central input including current image data, supplemented with previous image data and subsequent image data for one or more subsequent sequencing cycles following the current sequencing cycle; and a central output including central base call predictions for the current sequencing cycle and base call predictions for the previous sequencing cycle and the subsequent sequencing cycle; a neural network-based base caller, the left neighbor input of which comprises the current image data, supplemented with subsequent image data, and the left neighbor output of which comprises a left neighbor base call prediction for the current sequencing cycle and a base call prediction for the subsequent sequencing cycle; a base call generator coupled to the neural network-based base caller and configured to generate base calls for a current sequencing cycle based on a right-adjacent base call prediction, a center base call prediction, and a left-adjacent base call prediction for the current sequencing cycle. 2. The artificial intelligence based system of clause 1, wherein the current image data for the current sequencing cycle describes the intensity radiation of the specimens captured in the current sequencing cycle and their surrounding background. 3. The artificial intelligence-based system of clause 2, wherein the right adjacent base call prediction, the center base call prediction, and the left adjacent base call prediction for the current sequencing cycle identify the likelihood that the bases incorporated into one or more of the samples in the current sequencing cycle are A, C, T, and G. 4. The base call generator is further configured to include an averager, the averager comprising: summing, for each base, the likelihoods across the right adjacent base call prediction, the center base call prediction, and the left adjacent base call prediction for the current sequencing cycle; determining a per-base average based on the per-base sum; generating a base call for the current sequencing cycle based on the highest of the per-base averages. 5. The base call generator is further configured to include a consensus sequence, wherein the consensus sequence comprises: determining a preliminary base call for each of the right adjacent base call prediction, the center base call prediction, and the left adjacent base call prediction for the current sequencing cycle based on the highest of the likelihoods, thereby generating a sequence of preliminary base calls; generating base calls for the current sequencing cycle based on the most common base calls among the sequence of preliminary base calls. 6. The base call generator is further configured to include a weighted consensus, wherein the weighted consensus comprises: determining a preliminary base call for each of the right adjacent base call prediction, the center base call prediction, and the left adjacent base call prediction for the current sequencing cycle based on the highest of the likelihoods, thereby generating a sequence of preliminary base calls; applying a per-base weight to each preliminary base call in the sequence of preliminary base calls to produce a sequence of weighted preliminary base calls; generating a base call for the current sequencing cycle based on the most heavily weighted base call among the sequence of weighted preliminary base calls. 7. The artificial intelligence-based system of clause 3, wherein the likelihood is an exponentially normalized score produced by a softmax layer. 8. During training, calculating errors between the base calls generated by the base call generator for the current, previous, and subsequent sequencing cycles and the ground truth base calls based on the right-adjacent output, the center output, and the left-adjacent output of the neural network-based base caller; determining a slope for the current sequencing cycle, the previous sequencing cycle, and the subsequent sequencing cycle based on the error; 10. The artificial intelligence-based system of claim 1, further configured to include a trainer that updates parameters of the neural network-based base classifier by backpropagating gradients. 9. The artificial intelligence-based system of clause 1, wherein the right-adjacent base call prediction for the current sequencing cycle takes into account prephasing effects between the current sequencing cycle and the previous sequencing cycle. 10. The artificial intelligence-based system of clause 9, wherein the central base call prediction for the current sequencing cycle takes into account pre-phasing effects between the current sequencing cycle and the previous sequencing cycle, and phasing effects between the current sequencing cycle and the subsequent sequencing cycle. 11. The artificial intelligence-based system of clause 10, wherein the left-adjacent base call prediction for the current sequencing cycle takes into account phasing effects between the current sequencing cycle and a subsequent sequencing cycle. 12. An artificial intelligence-based system for base calling, the system comprising: A host processor; a memory accessible by the host processor for storing image data for a sequencing cycle for a sequencing operation, the current image data for a current sequencing cycle for the sequencing operation depicting intensity radiation of analytes captured in the current sequencing cycle and their surrounding background; a configurable processor having access to a memory, the configurable processor comprising: a plurality of execution clusters, each execution cluster in the plurality of execution clusters configured to execute a neural network; and a configurable processor including: dataflow logic having access to a memory and to execution clusters within a plurality of execution clusters, the dataflow logic being configured to provide current image data, previous image data for one or more previous sequencing cycles preceding the current sequencing cycle, and subsequent image data for one or more subsequent sequencing cycles following the current sequencing cycle to available execution clusters within the plurality of execution clusters, the dataflow logic causing the execution clusters to: apply different groupings of the current image data, the previous image data, and the subsequent image data to a neural network to produce first base call predictions, second base call predictions, and third base call predictions for the current sequencing cycle; and feed back the first base call predictions, second base call predictions, and third base call predictions for the current sequencing cycle to the memory for use in generating base calls for the current sequencing cycle based on the first base call predictions, second base call predictions, and third base call predictions. 13. The artificial intelligence based system of clause 12, wherein the different groupings include a first group including current image data and previous image data, a second grouping including current image data, previous image data, and subsequent image data, and a third grouping including current image data and subsequent image data. 14. The artificial intelligence-based system of clause 13, wherein the execution cluster applies the first grouping to a neural network to produce a first base call prediction, applies the second grouping to a neural network to produce a second base call prediction, and applies the third grouping to a neural network to produce a third base call prediction. 15. The artificial intelligence-based system of clause 12, wherein the first base call prediction, the second base call prediction, and the third base call prediction for the current sequencing cycle identify the likelihood that the bases incorporated into one or more of the samples in the current sequencing cycle are A, C, T, and G. 16. The dataflow logic is further configured to generate base calls for the current sequencing cycle, the generating comprising: summing, for each base, the likelihoods across the first base call prediction, the second base call prediction, and the third base call prediction for the current sequencing cycle; determining a per-base average based on the per-base summation; generating a base call for the current sequencing cycle based on the highest of the per-base averages. 17. The dataflow logic is further configured to generate base calls for a current sequencing cycle, the generating comprising: determining a preliminary base call for each of the first base call prediction, the second base call prediction, and the third base call prediction for the current sequencing cycle based on the highest of the likelihoods, thereby generating a sequence of preliminary base calls; generating base calls for the current sequencing cycle based on the most common base calls among the sequence of preliminary base calls. 18. The dataflow logic is further configured to generate base calls for the current sequencing cycle, the generating comprising: determining a preliminary base call for each of the first base call prediction, the second base call prediction, and the third base call prediction for the current sequencing cycle based on the highest of the likelihoods, thereby generating a sequence of preliminary base calls; applying a per-base weight to each preliminary base call in the sequence of preliminary base calls to produce a sequence of weighted preliminary base calls; generating a base call for the current sequencing cycle based on the most heavily weighted base call among the sequence of weighted preliminary base calls. 19. An artificial intelligence-based method for base calling, the method comprising: accessing current image data for a current sequencing cycle for a sequencing operation, previous image data for one or more previous sequencing cycles preceding the current sequencing cycle, and subsequent image data for one or more subsequent sequencing cycles following the current sequencing cycle; processing the different groupings of the current image data, the previous image data, and the subsequent image data through a neural network-based base caller to generate a first base call prediction, a second base call prediction, and a third base call prediction for the current sequencing cycle; generating a base call for the current sequencing cycle based on the first base call prediction, the second base call prediction, and the third base call prediction. 20. Different groupings a first grouping including current image data and previous image data; a second grouping including the current image data, the previous image data, and the subsequent image data; and a third grouping including the current image data and the subsequent image data. 21. processing the first grouping through a neural network-based base caller to produce a first base call prediction; processing the second grouping through a neural network-based base caller to produce second base call predictions; and 21. The artificial intelligence based method of clause 20, further comprising: processing the third grouping through a neural network based base call to produce a third base call prediction. 22. The artificial intelligence-based method of clause 19, wherein the first base call prediction, the second base call prediction, and the third base call prediction for the current sequencing cycle identify the likelihood that the bases incorporated into one or more of the samples in the current sequencing cycle are A, C, T, and G. 23. Summing the likelihoods for each base across the first base call prediction, the second base call prediction, and the third base call prediction for the current sequencing cycle; determining a per-base average based on the per-base summation; 23. The artificial intelligence based system of clause 22, further comprising: generating a base call for the current sequencing cycle based on the highest of the base-by-base averages. 24. Determining a preliminary base call for each of the first base call prediction, the second base call prediction, and the third base call prediction for the current sequencing cycle based on the highest of the likelihoods, thereby producing a sequence of preliminary base calls; 23. The artificial intelligence-based system of clause 22, further comprising: generating a base call for the current sequencing cycle based on the most common base call among the sequence of preliminary base calls. 25. Determining a preliminary base call for each of the first base call prediction, the second base call prediction, and the third base call prediction for the current sequencing cycle based on the highest of the likelihoods, thereby producing a sequence of preliminary base calls; applying a per-base weight to each preliminary base call in the sequence of preliminary base calls to produce a sequence of weighted preliminary base calls; 23. The artificial intelligence based system of clause 22, further comprising: generating a base call for the current sequencing cycle based on the most heavily weighted base call among the sequence of weighted preliminary base calls. 26. An artificial intelligence-based method for base calling, the method comprising: processing at least a right adjacent input, a center input, and a left adjacent input through a neural network based base call to generate at least a right adjacent output, a center output, and a left adjacent output; the right adjacent input includes current image data for a current sequencing cycle for the sequencing operation, supplemented with previous image data for one or more previous sequencing cycles preceding the current sequencing cycle; the right adjacent output includes right adjacent base call predictions for the current sequencing cycle and base call predictions for the previous sequencing cycle; a central input including current image data, supplemented with previous image data and subsequent image data for the current sequencing cycle; and a central output including central base call predictions for the current sequencing cycle and base call predictions for the previous sequencing cycle and the subsequent sequencing cycle; generating a left adjacent input comprising the current image data and supplemented with subsequent image data, and a left adjacent output comprising left adjacent base call predictions for the current sequencing cycle and base call predictions for the subsequent sequencing cycle; generating a base call for the current sequencing cycle based on the right-adjacent base call prediction, the center base call prediction, and the left-adjacent base call prediction for the current sequencing cycle. 27. The artificial intelligence-based method of clause 26, wherein the current image data for the current sequencing cycle describes the intensity emissions of the specimens captured in the current sequencing cycle and their surrounding background. 28. The artificial intelligence-based method of clause 26, wherein the right adjacent base call prediction, the center base call prediction, and the left adjacent base call prediction for the current sequencing cycle identify the likelihood that the bases incorporated into one or more of the samples in the current sequencing cycle are A, C, T, and G. 29. Summing the likelihoods across the right adjacent base call prediction, the center base call prediction, and the left adjacent base call prediction for the current sequencing cycle, for each base; determining a per-base average based on the per-base summation; 29. The artificial intelligence based system of clause 28, further comprising: generating a base call for the current sequencing cycle based on the highest of the per-base averages. 30. Determining a preliminary base call for each of the right adjacent base call prediction, the center base call prediction, and the left adjacent base call prediction for the current sequencing cycle based on the highest likelihood of the likelihoods, thereby generating a sequence of preliminary base calls; 29. The artificial intelligence-based system of clause 28, further comprising: generating base calls for the current sequencing cycle based on the most common base calls among the sequence of preliminary base calls. 31. Determining a preliminary base call for each of the right adjacent base call prediction, the center base call prediction, and the left adjacent base call prediction for the current sequencing cycle based on the highest likelihood of the likelihoods, thereby generating a sequence of preliminary base calls; applying a per-base weight to each preliminary base call in the sequence of preliminary base calls to produce a sequence of weighted preliminary base calls; 30. The artificial intelligence based system of clause 28, further comprising: generating a base call for the current sequencing cycle based on the most heavily weighted base call among the sequence of weighted preliminary base calls. 32. The artificial intelligence-based method of clause 28, wherein the likelihood is an exponentially normalized score produced by a softmax layer. 33. During training, calculating errors between the base calls generated by the base call generator for the current, previous, and subsequent sequencing cycles and the ground truth base calls based on the right-adjacent output, the center output, and the left-adjacent output of the neural network-based base caller; determining a slope for the current sequencing cycle, the previous sequencing cycle, and the subsequent sequencing cycle based on the error; 27. The artificial intelligence based method of clause 26, further comprising: updating parameters of the neural network based base caller by backpropagating gradients. 34. The artificial intelligence-based method of clause 26, wherein the right-adjacent base call prediction for the current sequencing cycle takes into account prephasing effects between the current sequencing cycle and the previous sequencing cycle. 35. The artificial intelligence-based method of clause 34, wherein the central base call prediction for the current sequencing cycle takes into account pre-phasing effects between the current sequencing cycle and the previous sequencing cycle and phasing effects between the current sequencing cycle and the subsequent sequencing cycle. 36. The artificial intelligence-based method of clause 35, wherein the left-adjacent base call prediction for the current sequencing cycle takes into account phasing effects between the current sequencing cycle and the subsequent sequencing cycle. 37. An artificial intelligence-based method for base calling, the method comprising: processing at least a first input, a second input, and a third input through a neural network-based base call to generate at least a first output, a second output, and a third output; a first input including specific image data for a specific sequencing cycle for a sequencing operation, supplemented with previous image data for one or more previous sequencing cycles; and a first output including a first base call prediction for the specific sequencing cycle and a base call prediction for the previous sequencing cycle; the second input includes the particular image data, supplemented with previous image data and subsequent image data for one or more subsequent sequencing cycles following the particular sequencing cycle; and the second output includes second base call predictions for the particular sequencing cycle and base call predictions for the previous sequencing cycle and the subsequent sequencing cycle; generating a third input including the particular image data, supplemented with subsequent image data, and a third output including a third base call prediction for the particular sequencing cycle and a base call prediction for the subsequent sequencing cycle; generating a base call for the particular sequencing cycle based on the first base call prediction, the second base call prediction, and the third base call prediction for the particular sequencing cycle. 38. An artificial intelligence-based method as set forth in clause 37, which ultimately implements each of the clauses subordinate to clause 1. 39. A non-transitory computer-readable storage medium imprinted with computer program instructions for performing artificial intelligence-based base calling, the instructions, when executed on a processor, accessing current image data for a current sequencing cycle for a sequencing operation, previous image data for one or more previous sequencing cycles preceding the current sequencing cycle, and subsequent image data for one or more subsequent sequencing cycles following the current sequencing cycle; processing the different groupings of the current image data, the previous image data, and the subsequent image data through a neural network-based base caller to generate a first base call prediction, a second base call prediction, and a third base call prediction for the current sequencing cycle; and generating a base call for the current sequencing cycle based on the first base call prediction, the second base call prediction, and the third base call prediction. 40. A non-transitory computer-readable storage medium according to clause 39, which ultimately implements each of the clauses subordinate to clause 1. 41. A non-transitory computer-readable storage medium imprinted with computer program instructions for performing artificial intelligence-based base calling, the instructions, when executed on a processor, processing at least a first input, a second input, and a left input through a neural network-based base call to produce at least a first output, a second output, and a left output; a first input including specific image data for a specific sequencing cycle for a sequencing operation, supplemented with previous image data for one or more previous sequencing cycles; and a first output including a first base call prediction for the specific sequencing cycle and a base call prediction for the previous sequencing cycle; the second input includes the particular image data, supplemented with previous image data and subsequent image data for one or more subsequent sequencing cycles following the particular sequencing cycle; and the second output includes second base call predictions for the particular sequencing cycle and base call predictions for the previous sequencing cycle and the subsequent sequencing cycle; generating a left input comprising a particular image data, supplemented with subsequent image data, and a left output comprising left base call predictions for a particular sequencing cycle and base call predictions for a subsequent sequencing cycle; generating a base call for a particular sequencing cycle based on the first base call prediction, the second base call prediction, and the left base call prediction for the particular sequencing cycle. 44. A non-transitory computer-readable storage medium according to clause 43, which ultimately implements each of the clauses subordinate to clause 1. 45. An artificial intelligence-based method for base calling, the method comprising: accessing the generated cycle-by-cycle analyte channel set progression for sequencing cycles for a sequencing operation; Neural network-based base cola processing the subject window of the analyte channel set per cycle during progression of the subject window of the sequencing cycle for the sequencing operation; generating interim base call predictions for three or more sequencing cycles within a subject window of sequencing cycles; Using a neural network-based base caller, process windows of the analyte channel set for each cycle during a progression of the sequencing cycle windows for the sequencing operation, and generate tentative base call predictions for the particular sequencing cycle from multiple windows in which the particular sequencing cycle occurred at different positions; determining a base call for a particular sequencing cycle based on the plurality of base call predictions. 46. ​​An artificial intelligence-based method as set forth in clause 45, which ultimately implements each of the clauses subordinate to clause 1. 47. A system including one or more processors coupled to a memory, the memory loaded with computer instructions for performing artificial intelligence-based base calling, the instructions, when executed on the processor, accessing the generated cycle-by-cycle analyte channel set progression for sequencing cycles for a sequencing operation; Neural network-based base cola processing the subject window of the analyte channel set per cycle during progression of the subject window of the sequencing cycle for the sequencing operation; generating interim base call predictions for three or more sequencing cycles within a subject window of sequencing cycles; Processing windows of the analyte channel set for each cycle during a progression of the sequencing cycle windows for the sequencing operation through a neural network-based base caller, and generating tentative base call predictions for the particular sequencing cycle from multiple windows in which the particular sequencing cycle occurred at different positions; determining a base call for a particular sequencing cycle based on the plurality of base call predictions. 48. A system as set forth in clause 47 that ultimately implements each of the clauses subordinate to clause 1. 49. A non-transitory computer-readable storage medium imprinted with computer program instructions for performing artificial intelligence-based base calling, the instructions, when executed on a processor, accessing the generated cycle-by-cycle analyte channel set progression for sequencing cycles for a sequencing operation; Neural network-based base cola processing the subject window of the analyte channel set per cycle during progression of the subject window of the sequencing cycle for the sequencing operation; generating interim base call predictions for three or more sequencing cycles within a subject window of sequencing cycles; Processing windows of the analyte channel set for each cycle during a progression of the sequencing cycle windows for the sequencing operation through a neural network-based base caller, and generating tentative base call predictions for the particular sequencing cycle using the neural network-based base calls from multiple windows in which the particular sequencing cycle occurred at different positions; and determining a base call for a particular sequencing cycle based on the plurality of base call predictions. 50. A non-transitory computer-readable storage medium according to clause 49, which ultimately implements each of the clauses subordinate to clause 1. 51. An artificial intelligence-based method for base calling, the method comprising: accessing a series of per-cycle analyte channel sets generated for a sequencing cycle for a sequencing operation; Neural network-based base cola processing the subject window of the analyte channel set per cycle in a series of subject windows of sequencing cycles for a sequencing operation, and generating base call predictions for two or more sequencing cycles within the subject window of sequencing cycles; processing a window of analyte channel sets for each cycle of a sequencing cycle for a sequencing operation via a neural network-based base call; Through neural network-based base cola, processing a plurality of windows of the analyte channel set per cycle in a series of a plurality of windows of sequencing cycles for a sequencing operation; generating an output for each window in the plurality of windows, each window in the plurality of windows includes a particular cycle-by-cycle set of analyte channels for a particular sequencing cycle for the sequencing operation; The output of each window in the multiple windows is (i) base call predictions for a particular sequencing cycle, and (ii) generating one or more additional base call predictions for one or more additional sequencing cycles for the sequencing operation, thereby generating multiple base call predictions for a particular sequencing cycle across multiple windows; determining a base call for a particular sequencing cycle based on the plurality of base call predictions. 52. A system including one or more processors coupled to a memory, the memory loaded with computer instructions for performing artificial intelligence-based base calling, the instructions, when executed on the processor, performing: accessing a series of per-cycle analyte channel sets generated for a sequencing cycle for a sequencing operation; Neural network-based base cola processing the subject window of the analyte channel set per cycle in a series of subject windows of sequencing cycles for a sequencing operation, and generating base call predictions for two or more sequencing cycles within the subject window of sequencing cycles; processing, via a neural network-based base call, a window of the analyte channel set per cycle of a series of sequencing cycle windows for a sequencing operation; Through neural network-based base cola, processing a plurality of windows of the analyte channel set per cycle in a series of a plurality of windows of sequencing cycles for a sequencing operation; generating an output for each window in the plurality of windows, each window in the plurality of windows includes a particular cycle-by-cycle set of analyte channels for a particular sequencing cycle for the sequencing operation; The output of each window in the multiple windows is (i) base call predictions for a particular sequencing cycle, and (ii) generating one or more additional base call predictions for one or more additional sequencing cycles for the sequencing operation, thereby generating multiple base call predictions for a particular sequencing cycle across multiple windows; determining a base call for a particular sequencing cycle based on the plurality of base call predictions. 53. A system as set forth in clause 52 that ultimately implements each of the clauses subordinate to clause 1. 54. A non-transitory computer-readable storage medium imprinted with computer program instructions for performing artificial intelligence-based base calling, the instructions, when executed on a processor, accessing a series of per-cycle analyte channel sets generated for a sequencing cycle for a sequencing operation; Neural network-based base cola processing the subject window of the analyte channel set per cycle in a series of subject windows of sequencing cycles for a sequencing operation, and generating base call predictions for two or more sequencing cycles within the subject window of sequencing cycles; processing, via a neural network-based base call, a window of the analyte channel set per cycle of a series of sequencing cycle windows for a sequencing operation; Through neural network-based base cola, processing a plurality of windows of the analyte channel set per cycle in a series of a plurality of windows of sequencing cycles for a sequencing operation; generating an output for each window in the plurality of windows, each window in the plurality of windows includes a particular cycle-by-cycle set of analyte channels for a particular sequencing cycle for the sequencing operation; The output of each window in the multiple windows is (i) base call predictions for a particular sequencing cycle, and (ii) generating one or more additional base call predictions for one or more additional sequencing cycles for the sequencing operation, thereby generating multiple base call predictions for a particular sequencing cycle across multiple windows; and determining a base call for a particular sequencing cycle based on a plurality of base call predictions. 55. A non-transitory computer-readable storage medium according to clause 54, which ultimately implements each of the clauses subordinate to clause 1.

[0178] Other implementations of the above-described methods may include a non-transitory computer-readable storage medium storing instructions executable by a processor to perform any of the above-described methods. Yet another implementation of the methods described in this section may include a system including a memory and one or more processors operable to execute instructions stored in the memory, and may perform any of the above-described methods. [Explanation of symbols]

[0179] 800A Sequencing System 802 Common Housing 804 Temperature Control System 806 System Controller 808 Fluid Control System 810 System Receptacle or Interface 812 Biosensor 814 Fluid Storage System 816 Lighting System 818 User Interface 820 Display 822 User Input Devices

Claims

1. 1. An artificial intelligence based system for base calling, said system comprising:

1. A neural network based base caller that processes at least a right adjacent input, a center input, and a left adjacent input and produces at least a right adjacent output, a center output, and a left adjacent output, the right adjacent input comprises current image data for a current sequencing cycle for a sequencing operation, supplemented with previous image data for one or more previous sequencing cycles preceding the current sequencing cycle; and the right adjacent output comprises a right adjacent base call prediction for the current sequencing cycle and a base call prediction for the previous sequencing cycle; the central input includes the current image data, supplemented with the previous image data and subsequent image data for one or more subsequent sequencing cycles following the current sequencing cycle, and the central output includes a central base call prediction for the current sequencing cycle and base call predictions for the previous sequencing cycle and the subsequent sequencing cycle; a neural network-based base caller, coupled to the neural network-based base caller, wherein the left adjacent input comprises the current image data and is supplemented with the subsequent image data, and the left adjacent output comprises a left adjacent base call prediction for the current sequencing cycle and a base call prediction for the subsequent sequencing cycle; a base call generator configured to generate base calls for the current sequencing cycle based on the right-adjacent base call prediction, the center base call prediction, and the left-adjacent base call prediction for the current sequencing cycle.

2. The artificial intelligence-based system of claim 1 , wherein the current image data for the current sequencing cycle depicts intensity emissions of specimens captured in the current sequencing cycle and their surrounding background.

3. 3. The artificial intelligence-based system of claim 2, wherein the right adjacent base call prediction, the center base call prediction, and the left adjacent base call prediction for the current sequencing cycle identify the likelihood that bases incorporated into one or more of the samples in the current sequencing cycle are A, C, T, and G.

4. the base call generator is further configured to include an averager; the averager summing, for each base, the likelihoods across the right-adjacent base call prediction, the center base call prediction, and the left-adjacent base call prediction for the current sequencing cycle; determining a per-base average based on the per-base sum; and generating the base call for the current sequencing cycle based on the highest of the per-base averages.

5. the base call generator is further configured to include a consensus the consensus determining a preliminary base call for each of the right-adjacent base call prediction, the center base call prediction, and the left-adjacent base call prediction for the current sequencing cycle based on the highest of the likelihoods, thereby producing a sequence of preliminary base calls; and generating the base calls for the current sequencing cycle based on the most common base calls among the sequence of preliminary base calls.

6. the base call generator: a weighted consensor determining a preliminary base call for each of the right-adjacent base call prediction, the center base call prediction, and the left-adjacent base call prediction for the current sequencing cycle based on the highest of the likelihoods, thereby generating a sequence of preliminary base calls; applying a per-base weight to each of the preliminary base calls in the sequence of preliminary base calls to produce a sequence of weighted preliminary base calls; and generating the base call for the current sequencing cycle based on the most heavily weighted base call among the sequence of weighted preliminary base calls.

7. 4. The artificial intelligence based system of claim 3, wherein the likelihood is an exponentially normalized score produced by a softmax layer.

8. During training, calculating errors between base calls generated by the base call generator for the current sequencing cycle, the previous sequencing cycle, and the subsequent sequencing cycle and ground truth base calls based on the right neighbor output, the center output, and the left neighbor output of the neural network-based base caller; 2. The artificial intelligence-based system of claim 1, further comprising a trainer that determines gradients for the current sequencing cycle, the previous sequencing cycle, and the subsequent sequencing cycle based on the error, and updates parameters of the neural network-based trainer by backpropagating the gradients.

9. 2. The artificial intelligence-based system of claim 1, wherein the right-adjacent base call prediction for the current sequencing cycle takes into account prephasing effects between the current sequencing cycle and the previous sequencing cycle.

10. 10. The artificial intelligence-based system of claim 9, wherein the center base call prediction for the current sequencing cycle takes into account the pre-phasing effect between the current sequencing cycle and the previous sequencing cycle and the phasing effect between the current sequencing cycle and the subsequent sequencing cycle.

11. 11. The artificial intelligence-based system of claim 10, wherein the left-adjacent base call prediction for the current sequencing cycle takes into account the phasing effect between the current sequencing cycle and the subsequent sequencing cycle.

12. 1. An artificial intelligence based system for base calling, said system comprising: A host processor; a memory accessible by the host processor for storing image data for a sequencing cycle for a sequencing operation, the current image data for a current sequencing cycle for the sequencing operation depicting intensity radiation of analytes captured in the current sequencing cycle and their surrounding background; a configurable processor having access to the memory, the configurable processor comprising: a plurality of execution clusters, each execution cluster in the plurality of execution clusters configured to execute a neural network; and a configurable processor including: dataflow logic having access to the memory and to the execution clusters within the plurality of execution clusters, the dataflow logic being configured to provide the current image data, previous image data for one or more previous sequencing cycles preceding the current sequencing cycle, and subsequent image data for one or more subsequent sequencing cycles following the current sequencing cycle to available execution clusters within the plurality of execution clusters, the dataflow logic causing the execution clusters to: apply different groupings of the current image data, the previous image data, and the subsequent image data to the neural network to produce first base call predictions, second base call predictions, and third base call predictions for the current sequencing cycle; and feeding back the first base call predictions, the second base call predictions, and the third base call predictions for the current sequencing cycle to the memory for use in generating base calls for the current sequencing cycle based on the first base call predictions, the second base call predictions, and the third base call predictions.

13. 13. The artificial intelligence-based system of claim 12, wherein the different groupings include a first grouping including the current image data and the previous image data, a second grouping including the current image data, the previous image data, and the subsequent image data, and a third grouping including the current image data and the subsequent image data.

14. 14. The artificial intelligence-based system of claim 13, wherein the execution cluster applies the first grouping to the neural network to produce the first base call prediction, applies the second grouping to the neural network to produce the second base call prediction, and applies the third grouping to the neural network to produce the third base call prediction.

15. 13. The artificial intelligence-based system of claim 12, wherein the first base call prediction, the second base call prediction, and the third base call prediction for the current sequencing cycle identify the likelihood that bases incorporated into one or more of the samples in the current sequencing cycle are A, C, T, and G.

16. the dataflow logic is further configured to generate the base call for the current sequencing cycle, wherein the generating comprises summing, for each base, the likelihood across the first base call prediction, the second base call prediction, and the third base call prediction for the current sequencing cycle; determining a per-base average based on the per-base summation; and generating the base call for the current sequencing cycle based on the highest of the per-base averages.

17. 1. An artificial intelligence based method for base calling, said method comprising: accessing current image data for a current sequencing cycle for a sequencing operation, previous image data for one or more previous sequencing cycles preceding the current sequencing cycle, and subsequent image data for one or more subsequent sequencing cycles following the current sequencing cycle; processing different groupings of the current image data, the previous image data, and the subsequent image data through a neural network-based base caller to generate a plurality of call predictions for the current sequencing cycle; generating a base call for the current sequencing cycle based on the plurality of base call predictions.

18. 1. An artificial intelligence based method for base calling, said method comprising: generating a respective base call for the particular sequencing cycle in response to performing each iteration of base calling; each said iteration processes a respective input set in a respective window of an ordering cycle; An artificial intelligence-based method, wherein each window of sequencing cycles has the particular sequencing cycle as at least one overlapping cycle and one or more non-overlapping cycles.

19. 20. The artificial intelligence-based system of claim 18, wherein the particular sequencing cycle occurs at a different position within each window of the sequencing cycle.

20. 20. The artificial intelligence-based system of claim 18, wherein the particular sequencing cycle occurs at the same position between two windows of sequencing cycles.