Block position and / or cycle based weight set selection for base calling

CN115803815BActive Publication Date: 2026-10-23ILLUMINA INC +1
View PDF 42 Cites 0 Cited by

Patent Information

Application Number
CN202280005111.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2022-03-04
Filing Date
2022-03-15
Publication Date
2026-10-23
Estimated Expiration
2042-03-15

Smart Images

  • Figure CN115803815B_ABST
    Figure CN115803815B_ABST
Patent Text Reader

Abstract

A system for base calling includes a memory storing a topology of a neural network, a plurality of weight sets, and sensor data for a series of sensing cycles. A sequencing event spans a temporal progression of a subseries of sensing cycles and a spatial progression of a position on a biosensor through the base calling operation. A configurable processor is configured to load the topology on the configurable processor, select a weight set according to a subject subseries of sensing cycles and / or a subject position on the biosensor, load subject sensor data for the subject subseries of sensing cycles and the subject position on the processing element, configure the topology using the selected weight set, and cause the neural network to process the subject sensor data to produce base call classification data for the subject subseries and the subject position.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Priority application

[0002] This application claims U.S. Provisional Patent Application No. 63 / 161,880 (Attorney's File No. ILLM 1019-1 / IP-1861-PRV), filed March 16, 2021, entitled "Tile Location and / or Cycle Based Weight Set Selection for Base Calling"; U.S. Provisional Patent Application No. 63 / 161,896 (Attorney's File No. ILLM 1019-2 / IP-2049-PRV), filed March 16, 2021, entitled "Neural Network Parameter Quantization for Base Calling"; U.S. Non-Provisional Patent Application No. 17 / 687,551 (Attorney's File No. ILLM 1019-3 / IP-1861-US), filed March 4, 2022, entitled "Tile Location and / or Cycle Based Weight Set Selection for Base Calling"; and U.S. Non-Provisional Patent Application No. 17 / 687,551 (Attorney's File No. ILLM 1019-3 / IP-1861-US), filed March 4, 2022, entitled "Neural Network Parameter Quantization for Base Calling". The benefit of U.S. non-provisional patent application No. 17,687,583 (Attorney’s File No. ILLM 1019-4 / IP-2049-US) entitled “Calling” is hereby claimed. The priority application is incorporated herein by reference for all purposes. Technical Field

[0003] The technologies disclosed in this invention relate to artificial intelligence-type computers and digital data processing systems, as well as corresponding data processing methods and products for simulating intelligence (i.e., knowledge-based systems, inference systems, and knowledge acquisition systems); and include systems for uncertainty inference (e.g., fuzzy logic systems), adaptive systems, machine learning systems, and artificial neural networks. Specifically, the disclosed technologies relate to the use of deep neural networks, such as deep convolutional neural networks, for data analysis and the selective use of weight sets.

[0004] Literature merged

[0005] The following references are incorporated herein by reference, as if they were shown in their entirety in this article:

[0006] U.S. Provisional Patent Application No. 62 / 979,384, entitled “ARTIFICIAL INTELLIGENCE-BASED BASE CALLINGOF INDEX SEQUENCES”, filed on February 20, 2020 (Attorney’s File No. ILLM 1015-1 / IP-1857-PRV);

[0007] U.S. Provisional Patent Application No. 62 / 979,414, entitled “ARTIFICIAL INTELLIGENCE-BASED MANY-TO-MANYBASE CALLING”, filed on February 20, 2020 (Attorney’s File No. ILLM 1016-1 / IP-1858-PRV);

[0008] U.S. Provisional Patent Application No. 62 / 979,385 (Attorney’s File No. ILLM 1017-1 / IP-1859-PRV), filed on February 20, 2020, entitled “KNOWLEDGE DISTILLATION-BASED COMPRESSION OFARTIFICIAL INTELLIGENCE-BASED BASE CALLER”;

[0009] U.S. Provisional Patent Application No. 63 / 072,032, entitled “DETECTING AND FILTERING CLUSTERS BASED ON ARTIFICIAL INTELLIGENCE-PREDICTED BASE CALLS”, filed on August 28, 2020 (Attorney’s File No. ILLM 1018-1 / IP-1860-PRV);

[0010] U.S. Provisional Patent Application No. 62 / 979,411, entitled “DATA COMPRESSION FOR ARTIFICIALINTELLIGENCE-BASED BASE CALLING”, filed on February 20, 2020 (Attorney’s File No. ILLM 1029-1 / IP-1964-PRV);

[0011] U.S. Provisional Patent Application No. 62 / 979,399 (Attorney’s File No. ILLM 1030-1 / IP-1982-PRV), filed on February 20, 2020, entitled “SQUEEZING LAYER FOR ARTIFICIALINTELLIGENCE-BASED BASE CALLING”;

[0012] The U.S. non-provisional patent application No. 16 / 825,987, entitled “TRAINING DATA GENERATION FOR ARTIFICIALINTELLIGENCE-BASED SEQUENCING”, filed on March 20, 2020 (Attorney’s File No. ILLM 1008-16 / IP-1693-US);

[0013] U.S. non-provisional patent application number 16 / 825,991, entitled “ARTIFICIAL INTELLIGENCE-BASED GENERATION OF SEQUENCING METADATA”, filed on March 20, 2020 (Attorney’s file number ILLM 1008-17 / IP-1741-US);

[0014] U.S. non-provisional patent application number 16 / 826,126, entitled “ARTIFICIAL INTELLIGENCE-BASED BASE CALLING”, filed on March 20, 2020 (Attorney’s file number ILLM 1008-18 / IP-1744-US);

[0015] U.S. non-provisional patent application number 16 / 826,134, entitled “ARTIFICIAL INTELLIGENCE-BASED QUALITYSCORING”, filed on March 20, 2020 (Attorney’s file number ILLM 1008-19 / IP-1747-US);

[0016] The U.S. non-provisional patent application No. 16 / 826,168 entitled “ARTIFICIAL INTELLIGENCE-BASED SEQUENCING”, filed on March 21, 2020 (Attorney’s File No. ILLM 1008-20 / IP-1752-US);

[0017] U.S. non-provisional patent application No. 16 / 874,599 (Attorney's File No. ILLM 1011-4 / IP-1750-US), filed on May 14, 2020, entitled "Systems and Devices for Characterization and Performance Analysis of Pixel-Based Sequencing"; and

[0018] U.S. non-provisional patent application No. 17 / 176,147 (Attorney’s File No. ILLM1020-2 / IP-1866-US) entitled “HARDWARE EXECUTION AND ACCELERATION OFARTIFICIAL INTELLIGENCE-BASED BASE CALLER”, filed on February 15, 2021. Background Technology

[0019] The topics discussed in this section should not be considered prior art simply because they are mentioned here. Similarly, problems mentioned in this section or related to the topics provided as background art should not be assumed to have been previously recognized in the prior art. The topics in this section merely represent different methods, which themselves may correspond to specific implementations of the technology protected by the claims.

[0020] In recent years, the rapid increase in computing power has enabled deep convolutional neural networks (CNNs) to achieve great success in many computer vision tasks with significantly improved accuracy. During the inference phase, many applications require low latency processing of an image with stringent power consumption requirements, which reduces the efficiency of graphics processing units (GPUs) and other general-purpose platforms. This has created opportunities for specific acceleration hardware (e.g., field-programmable gate arrays (FPGAs)) by customizing digital circuitry specifically for deep learning algorithm inference. However, deploying CNNs on portable and embedded systems remains challenging due to large data volumes, computationally intensive operations, varying algorithmic architectures, and frequent memory accesses.

[0021] Since convolution contributes a large portion of the computation in CNNs, convolution acceleration schemes significantly impact the efficiency and performance of hardware CNN accelerators. Convolution involves a multiplication and accumulation (MAC) operation with four recurrent stages sliding along the kernel and feature maps. The first recurrent stage computes the MAC of the pixels within the kernel window. The second recurrent stage accumulates the sum of the products of the MACs across different input feature maps. After completing the first and second recurrent stages, a bias is added to obtain the final output pixel. The third recurrent stage slides the kernel window within the input feature maps. The fourth recurrent stage generates different output feature maps.

[0022] FPGAs have gained increasing attention and popularity, particularly in accelerating inference tasks, due to their (1) high reconfigurability, (2) faster development time compared to application-specific integrated circuits (ASICs) to keep pace with the rapid development of CNNs, (3) good performance, and (4) superior energy efficiency compared to GPUs. The high performance and efficiency of FPGAs can be achieved by synthesizing circuits tailored to specific computations to directly process billions of operations using customized memory systems. For example, hundreds to thousands of digital signal processing (DSP) blocks on modern FPGAs support core convolution operations, such as multiplication and addition, with high parallelism. Dedicated data buffers between external on-chip memory and on-chip processing engines (PEs) can be designed to achieve optimized data flow by configuring tens of megabytes of on-chip block random access memory (BRAM) on the FPGA chip.

[0023] High-performance CNNs require efficient data flow and accelerated hardware architectures to minimize data communication while maximizing resource utilization. This presents an opportunity to design methods and frameworks for accelerating the inference process of various CNN algorithms on high-performance, efficient, and highly flexible accelerated hardware. Attached Figure Description

[0024] In the accompanying drawings, similar reference numerals generally refer to similar parts in all different views. Furthermore, the drawings are not necessarily drawn to scale, but rather emphasize the principles of the disclosed technology. In the following description, various specific embodiments of the disclosed technology are described with reference to the following drawings, wherein:

[0025] Figure 1 A cross-section of a biosensor that can be used in various implementation schemes is shown.

[0026] Figure 2 A specific implementation of a circulation pool containing clusters in its blocks is shown.

[0027] Figure 3 An exemplary flow pool with eight channels is shown, and a magnified view of a block, its clusters, and their surrounding background is also shown.

[0028] Figure 4 This is a simplified block diagram of a system used to analyze sensor data from a sequencing system (such as the output of a base detection sensor).

[0029] Figure 5 This is a simplified diagram illustrating an aspect of the base detection operation, which includes the functionality of a runtime program executed by the host processor.

[0030] Figure 6 It is a configurable processor (such as, Figure 4 A simplified diagram of the configuration of the configurable processor.

[0031] Figure 7 It is a graph of neural network architectures that can be executed using configurable or reconfigurable arrays as described in this document.

[0032] Figure 8A It is as follows Figure 7 A simplified diagram illustrating the organization of blocks of sensor data using the same neural network architecture.

[0033] Figure 8B It is as follows Figure 7 A simplified illustration of patches of sensor data used in the same neural network architecture.

[0034] Figure 9 This illustrates a configurable or reconfigurable array (such as a field-programmable gate array (FPGA)) as shown in the image. Figure 7 It is part of the same neural network configuration.

[0035] Figure 10 It is a graph of another alternative neural network architecture that can be executed using a configurable or reconfigurable array as described in this article.

[0036] Figure 11 A specific implementation of a specialized architecture for a neural network-based base detector is shown, which is used to isolate the processing of data from different sequencing cycles.

[0037] Figure 12 A specific implementation of isolation layers is shown, each of which may include convolutions.

[0038] Figure 13A A specific implementation of a combination layer is shown, where each combination layer may include convolutions.

[0039] Figure 13B Another specific implementation of the combined layers is shown, each of which may include convolutions.

[0040] Figure 14 , Figure 15 and Figure 16 Various exemplary block location-based weighting schemes for base detection are shown.

[0041] Figure 17A An example of fading is shown, where the signal strength decreases with the number of cycles of sequencing runs as a base detection operation.

[0042] Figure 17B The signal-to-noise ratio decreases as the sequencing cycle progresses, conceptually illustrating this.

[0043] Figure 18An exemplary weighting scheme based on the number of base detection cycles is shown for base detection.

[0044] Figure 19 , Figure 20 , Figure 21A and Figure 21B Various exemplary weighting schemes based on (i) the time progression of the base detection cycle number and (ii) the spatial location of the block are shown.

[0045] Figure 22 A specific implementation of a base detection operation is shown, in which a weight set for base detection is selected based on spatial block information and temporal sensing cycle subsequence information.

[0046] Figure 23A The diagram shows various weight sets for blocks of different categories and for different sensing cycles, each weight set including a corresponding spatial weight and a corresponding temporal weight.

[0047] Figure 23B The diagram shows various weight sets for blocks of different categories and for different cycles, where different weight sets for blocks of a particular category include common space weights and different time weights.

[0048] Figure 23C A system for selecting a weight set based on one or more sequencing run parameters is shown.

[0049] Figure 24 It is a block diagram based on a specific implementation of a base detection system.

[0050] Figure 25 It is possible Figure 24 A block diagram of the system controller used in the system.

[0051] Figure 26 It is a simplified block diagram of a computer system that can be used to implement the disclosed technology. Detailed Implementation

[0052] The embodiments described herein can be used in a variety of biological or chemical processes and systems for academic or commercial analysis. More specifically, the embodiments described herein can be used in a variety of processes and systems where it is desirable to detect an event, property, quality, or characteristic indicating a desired response. For example, the embodiments described herein include cartridges, biosensors and components thereof, and bioassay systems that operate in conjunction with cartridges and biosensors. In a particular embodiment, the cartridge and biosensor include a flow cell and one or more sensors, pixels, photodetectors, or photodiodes, which are coupled together in a substantially integral structure.

[0053] The following detailed description of a particular embodiment will be better understood when read in conjunction with the accompanying drawings. For the purposes of the illustrations showing functional blocks of various embodiments, the functional blocks do not necessarily indicate the division between hardware circuits. Thus, for example, one or more functional blocks (e.g., processor or memory) may be implemented in a single piece of hardware (e.g., a general-purpose signal processor or random access memory, hard disk, etc.). Similarly, a program may be a standalone program, may be incorporated as a subroutine in an operating system, may be a function in an installed software package, and so on. It should be understood that the various embodiments are not limited to the arrangements and apparatus shown in the accompanying drawings.

[0054] As used herein, an element or step described in the singular and preceded by the word "an" or "a" should be understood to not exclude multiple said elements or steps unless such exclusion is expressly indicated. Furthermore, references to "an embodiment" are not intended to be construed as excluding the existence of additional embodiments that also include the described features. Moreover, unless expressly stated to the contrary, embodiments that "comprise," "have," or "contain" one or more elements having a particular attribute may include additional elements, whether or not they possess that attribute.

[0055] As used herein, “desired reaction” includes a change in at least one of the chemical, electrical, physical, or optical properties (or mass) of the analyte of interest. In a particular embodiment, the desired reaction is a positive binding event (e.g., the binding of a fluorescently labeled biomolecule to the analyte of interest). More generally, the desired reaction can be a chemical transformation, chemical change, or chemical interaction. The desired reaction can also be a change in electrical properties. For example, the desired reaction can be a change in the concentration of ions in solution. Exemplary reactions include, but are not limited to, chemical reactions such as reduction, oxidation, addition, elimination, rearrangement, esterification, amidation, etherification, cyclization, or substitution; binding interactions in which a first chemical binds to a second chemical; dissociation reactions in which two or more chemicals separate from each other; fluorescence; luminescence; bioluminescence; chemiluminescence; and biological reactions such as nucleic acid replication, nucleic acid amplification, nucleic acid hybridization, nucleic acid ligation, phosphorylation, enzyme catalysis, receptor binding, or ligand binding. The desired reaction can also be the addition or elimination of protons, for example, detectable as a change in the pH of the surrounding solution or environment. Additional desired reactions can detect the transmembrane flow of ions (e.g., in natural or synthetic bilayer membranes), such as when the current is interrupted as ions flow through the membrane and this interruption can be detected.

[0056] In a particular embodiment, the desired reaction includes binding a fluorescently labeled molecule to an analyte. The analyte may be an oligonucleotide, and the fluorescently labeled molecule may be a nucleotide. The desired reaction can be detected when excitation light is directed to the oligonucleotide with the labeled nucleotide, and the fluorophore emits a detectable fluorescent signal. In an alternative embodiment, the detected fluorescence is the result of chemiluminescence or bioluminescence. The desired reaction may also be enhanced, for example, by bringing the donor fluorophore closer to the acceptor fluorophore to increase fluorescence (or...). Resonance energy transfer (FRET) reduces FRET by separating the donor fluorophore and the acceptor fluorophore, increases fluorescence by separating the quencher group and the fluorophore, or reduces fluorescence by co-locating the quencher group and the fluorophore.

[0057] As used herein, "reaction component" or "reactant" includes any substance that can be used to obtain the desired reaction. For example, reaction components include reagents, enzymes, samples, other biomolecules, and buffer solutions. Reaction components are typically delivered to and / or immobilized at reaction sites in solution. Reaction components may interact directly or indirectly with another substance, such as the analyte of interest.

[0058] As used herein, the term "reaction site" is a localized region on which a desired reaction may occur. A reaction site may include a supporting surface of a substrate on which material can be immobilized. For example, a reaction site may include a substantially flat surface in a channel of a flow cell on which a population of nucleic acids is present. Typically, but not always, the nucleic acids in the population have the same sequence, such as clones of single-stranded or double-stranded templates. However, in some embodiments, a reaction site may contain only a single nucleic acid molecule, such as in single-stranded or double-stranded form. Furthermore, multiple reaction sites may be unevenly distributed along a supporting surface or arranged in a predetermined manner (e.g., side-by-side in a matrix, such as in a microarray). A reaction site may also include a reaction chamber (or pore) that at least partially defines a spatial region or volume configured to separate the desired reaction.

[0059] The terms "reaction chamber" and "orifice" are used interchangeably in this application. As used herein, the terms "reaction chamber" or "orifice" include a spatial region in fluid communication with a flow channel. A reaction chamber may be at least partially isolated from the surrounding environment or other spatial regions. For example, multiple reaction chambers may be separated from each other by a common wall. As a more specific example, a reaction chamber may include a cavity defined by the internal surface of the orifice and having an opening or aperture such that the cavity is in fluid communication with the flow channel. Biosensors including such reaction chambers are described in more detail in International Application No. PCT / US2011 / 057111, filed October 20, 2011, the entire contents of which are incorporated herein by reference.

[0060] In some embodiments, the size and shape of the reaction chamber relative to a solid (including a semi-solid) are configured such that the solid can be fully or partially inserted therein. For example, the size and shape of the reaction chamber may be configured to accommodate only one capture bead. The capture bead may have clonal amplified DNA or other material thereon. Alternatively, the size and shape of the reaction chamber may be configured to receive approximately a number of beads or a solid substrate. Furthermore, the reaction chamber may also be filled with a porous gel or material configured to control diffusion or filter fluids flowing into the reaction chamber.

[0061] In some implementations, a sensor (e.g., a photodetector, photodiode) is associated with a corresponding pixel region on the sample surface of the biosensor. Therefore, a pixel region is a geometry representing an area on the sample surface of the biosensor designated for a single sensor (or pixel). When a desired reaction occurs at a reaction site or reaction chamber covering the associated pixel region, the sensor associated with the pixel region detects the light emission collected from the associated pixel region. In flat surface implementations, pixel regions may overlap. In some cases, multiple sensors may be associated with a single reaction site or a single reaction chamber. In other cases, a single sensor may be associated with a set of reaction sites or a set of reaction chambers.

[0062] As used herein, a “biosensor” includes a structure having multiple reaction sites and / or reaction chambers (or pores). A biosensor may include a solid-state imaging device (e.g., a CCD or CMOS imaging device) and a flow cell optionally mounted thereon. The flow cell may include at least one flow channel in fluid communication with the reaction sites and / or reaction chambers. As a specific example, a biosensor is configured to be fluidly and electrically coupled to a bioassay system. The bioassay system may deliver reactants to the reaction sites and / or reaction chambers according to a predetermined protocol (e.g., sequencing-by-synthesis) and perform multiple imaging events. For example, the bioassay system may guide a reaction solution to flow along the reaction sites and / or reaction chambers. At least one of the solutions may contain four types of nucleotides with the same or different fluorescent labels. The nucleotides may bind to corresponding oligonucleotides located at the reaction sites and / or reaction chambers. The bioassay system may then illuminate the reaction sites and / or reaction chambers using an excitation light source (e.g., a solid-state light source, such as a light-emitting diode (LED)). The excitation light may have one or more predetermined wavelengths, including a wavelength range. The excited fluorescent label provides an emission signal that can be captured by the sensor.

[0063] In alternative embodiments, the biosensor may include electrodes or other types of sensors configured to detect other identifiable properties. For example, the sensor may be configured to detect changes in ion concentration. In another example, the sensor may be configured to detect transmembrane ion current flow.

[0064] As used herein, a "cluster" is a group of similar or identical molecules or nucleotide sequences or DNA strands. For example, a cluster can be an amplified oligonucleotide or any other group of polynucleotides or polypeptides having the same or similar sequences. In other embodiments, a cluster can be any element or group of elements occupying a physical region on a sample surface. In embodiments, clusters are immobilized to the reaction site and / or reaction chamber during base detection cycles.

[0065] As used herein, when referring to biomolecules or biological or chemical substances, the term "fixed" includes the attachment of biomolecules or biological or chemical substances to a surface substantially at the molecular level. For example, adsorption techniques can be used to fix biomolecules or biological or chemical substances to the surface of a substrate material. These adsorption techniques include non-covalent interactions (e.g., electrostatic forces, van der Waals forces, and dehydration at hydrophobic interfaces) and covalent bonding techniques, where functional groups or connectors facilitate the attachment of biomolecules to the surface. The fixation of biomolecules or biological or chemical substances to the surface of a substrate material can be based on the properties of the substrate surface, the liquid medium carrying the biomolecules or biological or chemical substances, and the properties of the biomolecules or biological or chemical substances themselves. In some cases, the substrate surface may be functionalized (e.g., chemically or physically modified) to facilitate the fixation of biomolecules (or biological or chemical substances) to the substrate surface. The substrate surface may be modified first to allow functional groups to bind to the surface. The functional groups may then bind to the biomolecules or biological or chemical substances to fix the functional groups thereto. The substance can be fixed to the surface via a gel, for example as described in U.S. Patent Publication No. US 2011 / 0059865 A1, which is incorporated herein by reference.

[0066] In some embodiments, nucleic acids can be attached to a surface and amplified using bridging amplification. Useful bridging amplification methods are described, for example, in U.S. Patent Nos. 5,641,658, WO 2007 / 010251, 6,090,592, 2002 / 0055100 A1, 7,115,400, 2004 / 0096853 A1, 2004 / 0002090 A1, 2007 / 0128624 A1, or 2008 / 0009420 A1, each of which is incorporated herein by reference in its entirety. Another useful method for amplifying nucleic acids on a surface is rolling circle amplification (RCA), for example, using methods described in further detail below. In some embodiments, one or more primer pairs can be used to attach nucleic acids to a surface and amplify them. For example, one primer may be in solution, and the other primer may be immobilized on the surface (e.g., 5'-attached). By way of example, a nucleic acid molecule can hybridize with one of the primers on a surface, followed by immobilized primer extension to produce a first copy of the nucleic acid. Then, a primer in solution hybridizes with the first copy of the nucleic acid, which can be extended using the first copy of the nucleic acid as a template. Optionally, after producing the first copy of the nucleic acid, the original nucleic acid molecule can hybridize with a second immobilized primer on the surface, and this extension can occur simultaneously with or after the primer extension in solution. In any embodiment, multiple copies of the nucleic acid are provided using repeated extension (e.g., amplification) rounds using both immobilized and in-solution primers.

[0067] In certain embodiments, the assay protocol performed by the systems and methods described herein includes the use of natural nucleotides and enzymes configured to interact with the natural nucleotides. Natural nucleotides include, for example, ribonucleotides (RNA) or deoxyribonucleotides (DNA). Natural nucleotides may be in the form of monophosphate, diphosphate, or triphosphate, and may have bases selected from adenine (A), thymine (T), uracil (U), guanine (G), or cytosine (C). However, it should be understood that non-natural nucleotides, modified nucleotides, or analogs of the aforementioned nucleotides may be used. Some examples of useful non-natural nucleotides are illustrated below with respect to sequencing-by-synthesis methods based on reversible terminators.

[0068] In embodiments including a reaction chamber, articles or solid substances (including semi-solid substances) may be disposed within the reaction chamber. When disposed, the articles or solids may be physically held or fixed within the reaction chamber by interference fit, adhesion, or trapping. Examples of articles or solids that may be disposed within the reaction chamber include polymer beads, microspheres, agarose gels, powders, quantum dots, or other solids that can be compressed and / or retained within the reaction chamber. In certain embodiments, nucleic acid superstructures (such as DNA spheres) may be disposed within or at the reaction chamber, for example, by attachment to the inner surface of the reaction chamber or by remaining in a liquid within the reaction chamber. DNA spheres or other nucleic acid superstructures may be made and then disposed within or at the reaction chamber. Alternatively, DNA spheres may be synthesized in situ at the reaction chamber. DNA spheres may be synthesized by rolling circle amplification to produce multiplyes of a specific nucleic acid sequence, and these multiplyes may be treated with conditions that form relatively compact spheres. DNA spheres and methods for their synthesis are described, for example, in U.S. Patent Publication Nos. 2008 / 0242560 A1 or 2008 / 0234136 A1, each of which is incorporated herein by reference in its entirety. The substance held or disposed in the reaction chamber may be in a solid, liquid, or gaseous state.

[0069] As used herein, "base detection" identifies nucleotide bases in a nucleic acid sequence. Base detection refers to the process of determining the base detection (A, C, G, T) of each cluster at a specific cycle. For example, base detection can be performed using four-channel, two-channel, or one-channel methods and systems described in the combined material of U.S. Patent Application Publication No. 2013 / 0079232. In a particular embodiment, the base detection cycle is referred to as a "sampling event." In a dye and dual-channel sequencing protocol, a sampling event comprises two illumination phases in a time series, such that a pixel signal is generated at each phase. A first illumination phase induces illumination from a given cluster, indicating nucleotide bases A and T in the AT pixel signal, and a second illumination phase induces illumination from a given cluster, indicating nucleotide bases C and T in the CT pixel signal.

[0070] Biosensors

[0071] Figure 1A cross-section of a biosensor 100 that can be used in various embodiments is shown. The biosensor 100 has pixel regions 106', 108', 110', 112', and 114', each of which can maintain more than one cluster (e.g., two clusters per pixel region) during base detection cycles. As shown, the biosensor 100 may include a flow cell 102 mounted to a sampling device 104. In the illustrated embodiment, the flow cell 102 is directly attached to the sampling device 104. However, in an alternative embodiment, the flow cell 102 may be removably coupled to the sampling device 104. The sampling device 104 has a sample surface 134 that can be functionalized (e.g., chemically or physically modified in a manner suitable for carrying out a desired reaction). For example, the sample surface 134 may be functionalized and may include multiple pixel regions 106', 108', 110', 112', and 114', each of which may maintain more than one cluster during a base detection cycle (e.g., each pixel region has a corresponding cluster pair 106A, 106B; 108A, 108B; 110A, 110B; 112A, 112B; and 114A, 114B fixed thereon). Each pixel region is associated with a corresponding sensor (or pixel or photodiode) 106, 108, 110, 112, and 114, such that light received by the pixel region is captured by the corresponding sensor. Pixel region 106' may also be associated with a corresponding reaction site 106" on the sample surface 134 that maintains a cluster pair, such that light emitted from reaction site 106" is received by pixel region 106' and captured by the corresponding sensor 106. Due to this sensing structure, the pixel signal in the base detection cycle carries information based on all of the two or more clusters in the following case: where, during the base detection cycle, there are two or more clusters in a pixel region of a particular sensor (e.g., each pixel region has a corresponding cluster pair). Therefore, signal processing as described herein is used to distinguish each cluster where there are more clusters than pixel signals in a given sampling event of a particular base detection cycle.

[0072] In an illustrated embodiment, flow cell 102 includes sidewalls 138, 125 and a flow hood 136 supported by the sidewalls 138, 125. The sidewalls 138, 125 are coupled to the sample surface 134 and extend between the flow hood 136 and the sidewalls 138, 125. In some embodiments, the sidewalls 138, 125 are formed of a curable adhesive layer that bonds the flow hood 136 to the sampling device 104.

[0073] The dimensions and shapes of the sidewalls 138, 125 are configured such that a flow channel 144 exists between the shroud 136 and the sampling device 104. The shroud 136 may include a material transparent to excitation light 101 propagating from the outside of the biosensor 100 into the flow channel 144. In this example, the excitation light 101 approaches the shroud 136 at a non-orthogonal angle.

[0074] Additionally, as shown in the figure, the flow shroud 136 may include inlet and outlet ports 142, 146, which are configured to fluidly engage with other ports (not shown). These other ports may, for example, originate from a cartridge or workstation. The dimensions and shape of the flow channel 144 are configured to guide fluid along the sample surface 134. The height H1 and other dimensions of the flow channel 144 may be configured to maintain substantially uniform fluid flow along the sample surface 134. The dimensions of the flow channel 144 may also be configured to control bubble formation.

[0075] By way of example, the flow shroud 136 (or flow cell 102) may comprise a transparent material, such as glass or plastic. The flow shroud 136 may be formed as a substantially rectangular block having a planar outer surface and a planar inner surface defining a flow channel 144. This block may be mounted onto sidewalls 138, 125. Alternatively, the flow cell 102 may be etched to define the flow shroud 136 and the sidewalls 138, 125. For example, grooves may be etched into the transparent material. When the etched material is mounted onto the sampling device 104, the grooves may become the flow channel 144.

[0076] The sampling device 104 may resemble, for example, an integrated circuit comprising multiple stacked substrate layers 120 to 126. Substrate layers 120 to 126 may include a base substrate 120, a solid-state imaging device 122 (e.g., a CMOS image sensor), a filter or light control layer 124, and a passivation layer 126. It should be noted that the above is illustrative only, and other embodiments may include fewer layers or additional layers. Furthermore, each of the substrate layers 120 to 126 may include multiple sublayers. The sampling device 104 may be fabricated using processes similar to those used in manufacturing integrated circuits such as CMOS image sensors and CCDs. For example, substrate layers 120 to 126, or portions thereof, may be grown, deposited, etched, etc., to form the sampling device 104.

[0077] The passivation layer 126 is configured to shield the fluid environment of the flow channel 144 from the filter layer 124. In some cases, the passivation layer 126 is also configured to provide a solid surface (i.e., sample surface 134) that allows biomolecules or other analytes of interest to be immobilized thereon. For example, each reaction site may include a cluster of biomolecules immobilized to the sample surface 134. Therefore, the passivation layer 126 may be formed of a material that allows reaction sites to be immobilized thereon. The passivation layer 126 may also include a material that is at least transparent to the desired fluorescence. By way of example, the passivation layer 126 may comprise silicon nitride (Si2N4) and / or silicon dioxide (SiO2). However, other suitable materials may be used. In the illustrated embodiment, the passivation layer 126 may be substantially planar. However, in an alternative embodiment, the passivation layer 126 may include grooves, such as pits, holes, trenches, etc. In the illustrated embodiment, the passivation layer 126 has a thickness of about 150 nm to 200 nm, and more specifically about 170 nm.

[0078] Filter layer 124 may include various features that affect the transmission of light. In some embodiments, filter layer 124 may perform multiple functions. For example, filter layer 124 may be configured to (a) filter unwanted optical signals, such as those from an excitation source; (b) direct emission signals from reaction sites to corresponding sensors 106, 108, 110, 112, and 114, which are configured to detect emission signals from reaction sites; or (c) block or prevent the detection of unwanted emission signals from adjacent reaction sites. Thus, filter layer 124 may also be referred to as a light control layer. In an illustrated embodiment, filter layer 124 has a thickness of about 1 μm to 5 μm, more specifically about 2 μm to 4 μm. In an alternative embodiment, filter layer 124 may include an array of microlenses or other optical elements. Each microlens may be configured to direct emission signals from the associated reaction site to the sensor.

[0079] In some embodiments, the solid-state imaging device 122 and the base substrate 120 may be provided together with a previously constructed solid-state imaging device (e.g., a CMOS chip). For example, the base substrate 120 may be a silicon wafer, and the solid-state imaging device 122 may be mounted thereon. The solid-state imaging device 122 includes a semiconductor material (e.g., silicon) layer and sensors 106, 108, 110, 112, and 114. In an illustrated embodiment, the sensor is a photodiode configured to detect light. In other embodiments, the sensor includes a photodetector. The solid-state imaging device 122 may be fabricated as a single chip using a CMOS-based manufacturing process.

[0080] Solid-state imaging device 122 may include a dense array of sensors 106, 108, 110, 112, and 114, which are configured to detect activity indicating a desired response from or along the flow channel 144. In some embodiments, each sensor has a size of approximately 1 square micrometer to 2 square micrometers (μm). 2 The array can include 500,000 sensors, 5 million sensors, 10 million sensors, or even 120 million sensors. Sensors 106, 108, 110, 112, and 114 can be configured to detect light of a predetermined wavelength that indicates a desired response.

[0081] In some embodiments, sampling device 104 includes a microcircuit arrangement, such as that described in U.S. Patent No. 7,595,882, which is incorporated herein by reference in its entirety. More specifically, sampling device 104 may include an integrated circuit having a planar array of sensors 106, 108, 110, 112, and 114. Circuitry formed within sampling device 104 may be configured for at least one of signal amplification, digitization, storage, and processing. The circuitry may collect and analyze detected fluorescence and generate pixel signals (or detection signals) for transmitting detection data to a signal processor. The circuitry may also perform additional analog and / or digital signal processing within sampling device 104. Sampling device 104 may include conductive vias 130 that perform signal routing (e.g., transmitting pixel signals to a signal processor). Pixel signals may also be transmitted via electrical contacts 132 of sampling device 104.

[0082] The sampling device 104 is discussed in further detail in relation to U.S. Nonprovisional Patent Application No. 16 / 874,599 (Attorney General's File No. ILLM 1011-4 / IP-1750-US), filed May 14, 2020, entitled "Systems and Devices for Characterization and Performance Analysis of Pixel-Based Sequencing," which is incorporated herein by reference as if fully set forth herein. The sampling device 104 is not limited to the construction or use described above. In alternative embodiments, the sampling device 104 may take other forms. For example, the sampling device 104 may include a CCD device (such as a CCD camera) coupled to or movable to interact with a flow cell containing reaction sites.

[0083] Figure 2 A specific implementation of a circulation pool 200 containing clusters in its blocks is shown. Circulation pool 200 corresponds to... Figure 1The flow pool 102, for example, does not have a flow cover 136. Furthermore, the depiction of the flow pool 200 is symbolic in nature, and the flow pool 200 symbolically depicts the various channels and blocks within it, while the various other components within it are not shown. Figure 2 A top view of the flow cell 200 is shown.

[0084] In one implementation, the flow pool 200 is divided or partitioned into multiple channels, such as channels 202a, 202b, ..., 202P, i.e., P channels. Figure 2 In the example, flow cell 200 is shown as including 8 channels, that is, P = 8 in this example, but the number of channels in the flow cell is implementation-specific.

[0085] In one implementation, each channel 202 is further partitioned into non-overlapping regions referred to as “blocks” 212. For example, Figure 2 An enlarged view of segment 208 of an exemplary channel is shown. Segment 208 is shown as comprising multiple blocks 212.

[0086] In the example, each channel 202 includes one or more block columns. For example, in Figure 2 In this configuration, each channel 202 includes two corresponding block columns 212, as shown in the enlarged section 208. The number of blocks in each block column within each channel is implementation-specific, and in one example, each block column within each channel may contain 50 blocks, 60 blocks, 100 blocks, or another suitable number of blocks.

[0087] Each block comprises multiple corresponding clusters. During sequencing, the clusters within the block and their surrounding background are imaged. For example, Figure 2 An exemplary cluster 216 is shown within an exemplary block.

[0088] Figure 3 An exemplary Illumina GA-IIx with eight channels is shown. TM The flow pool is shown, along with a magnified view of a block, its clusters, and their surrounding background. For example, each channel in the Illumina Genome Analyzer II contains one hundred blocks, and each channel in the Illumina HiSeq2000 contains sixty-eight blocks. Block 212 accommodates hundreds of thousands to millions of clusters. Figure 3In the image, at 308 (e.g., 308 is a magnified image view of the block), an image generated from a block having clusters shown as bright spots is shown, with an exemplary cluster 304 marked. Cluster 304 comprises approximately one thousand identical copies of the template molecule, but the clusters differ in size and shape. Clusters are generated from the template molecule by bridging amplification of the input library prior to sequencing. The purpose of amplification and cluster growth is to increase the intensity of the emission signal, as imaging devices cannot reliably sense individual fluorophores. However, the DNA fragments within cluster 304 are physically close together, so the imaging device perceives the cluster of fragments as a single point 304.

[0089] Clusters and blocks are discussed in further detail compared to U.S. non-provisional patent application No. 16 / 825,987 (Attorney’s File No. ILLM 1008-16 / IP-1693-US) filed on March 20, 2020, entitled “TRAINING DATA GENERATION FORARTIFICIAL INTELLIGENCE-BASED SEQUENCING”.

[0090] Figure 4 It is used to analyze sensor data from sequencing systems (such as base detection sensor outputs, e.g., see...) Figure 1 A simplified block diagram of the system. Figure 4 In this example, the system includes a sequencing machine 400 and a configurable processor 450. The configurable processor 450 can execute a neural network-based base detector in coordination with a runtime program executed by a host processor, such as a central processing unit (CPU) 402. The sequencing machine 400 includes a base detection sensor and a flow cell 401 (e.g., relative to...). Figures 1 to 3 (As discussed). A flow cell may include one or more blocks in which clusters of genetic material are exposed to a sequence of analytical streams, the sequence of which is used to elicit a reaction in the clusters to recognize bases in the genetic material, such as relative to... Figures 1 to 3 The sensor senses the response of each cycle of the sequence in each block of the flow cell to provide block data. An example of this technique is described in more detail below. Genetic sequencing is a data-intensive operation that converts base detection sensor data into base detection sequences for each cluster of genetic material sensed during the base detection operation.

[0091] The system in this example includes a CPU 402 that executes runtime programs to coordinate base detection operations, a memory 403 for storing sequences of block data arrays, base detection reads generated by the base detection operations, and other information used in the base detection operations. Additionally, in this illustration, the system includes a memory 404 for storing a configuration file (or multiple files) such as an FPGA bit file, and model parameters for configuring and reconfiguring a configurable processor 450 and executing a neural network. The sequencing machine 400 may include programs for configuring the configurable processor and, in some embodiments, a reconfigurable processor to execute the neural network.

[0092] Sequencing machine 400 is coupled to configurable processor 450 via bus 405. Bus 405 can be implemented using high-throughput technologies, such as, in one example, bus technologies compatible with the PCIe standard (Rapid Peripheral Component Interconnect) currently maintained and developed by PCI-SIG (PCI Special Interest Group). Additionally, in this example, memory 460 is coupled to configurable processor 450 via bus 461. Memory 460 can be onboard memory disposed on a circuit board having configurable processor 450. Memory 460 is used by configurable processor 450 for high-speed access to working data used in base detection operations. Bus 461 can also be implemented using high-throughput technologies such as bus technologies compatible with the PCIe standard.

[0093] Configurable processors, including field-programmable gate arrays (FPGAs), coarse-grained reconfigurable arrays (CGRAs), and other configurable and reconfigurable devices, can be configured to perform a variety of functions more efficiently or faster than what might be possible using a general-purpose processor that executes a computer program. Configuring a configurable processor involves compiling a function description to produce a configuration file, sometimes called a bitstream or bit file, and distributing the configuration file to configurable elements on the processor.

[0094] The configuration file defines the logical functions to be executed by the configurable processor by configuring the circuitry to set data flow modes, the use of distributed memory and other on-chip memory resources, lookup table contents, and the operation of configurable logic blocks and configurable execution units (such as multiply-accumulate units, configurable interconnects, and other elements of the configurable array). A configurable processor is reconfigurable if the configuration file can be changed in the field by changing the loaded configuration file. For example, the configuration file can be stored in volatile SRAM elements, non-volatile read-write memory elements, and combinations thereof, distributed across an array of configurable elements on the configurable or reconfigurable processor. A variety of commercially available configurable processors are suitable for base detection operations as described herein. Examples include commercially available products such as Xilinx Alveo. TM U200, Xilinx AlveoTM U250, Xilinx Alveo TM U280, Intel / Altera Stratix TM GX2800, Intel / AlteraStratix TM GX2800 and Intel Stratix TM GX10M. In some examples, the host CPU can be implemented on the same integrated circuit as the configurable processor.

[0095] The implementation described herein uses a configurable processor 450 to implement a multi-recurrent neural network. The configuration file for the configurable processor can be implemented by specifying the logic functions to be performed using a high-level description language (HDL) or register-transfer level (RTL) language specification. The specification can be compiled to generate the configuration file using resources designed for the selected configurable processor. The same or similar specifications can be compiled to generate designs for application-specific integrated circuits (ASICs) that may not be configurable processors.

[0096] Therefore, in all embodiments described herein, alternatives to configurable processors include configured processors comprising application-specific ASICs or application-specific integrated circuits or integrated circuit groups, or system-on-a-chip (SoC) devices, configured to perform neural network-based base detection operations as described herein.

[0097] Generally speaking, the configurable processor and the configured processor described herein, which are configured to execute the operation of a neural network, are referred to herein as neural network processors.

[0098] In this example, the configurable processor 450 is configured using a configuration file loaded by a program executed by CPU 402 or another source, which configures an array of configurable elements on the configurable processor 454 to perform a base detection function. In this example, the configuration includes data flow logic 451 coupled to buses 405 and 461, and performs functions for distributing data and control parameters among the elements used in the base detection operation.

[0099] Additionally, the configurable processor 450 is configured with base detection execution logic 452 to execute a multi-recurrent neural network. Logic 452 includes multiple multi-recurrent execution clusters (e.g., 453), which in this example include multi-recurrent cluster 1 to multi-recurrent cluster X. The number of multi-recurrent clusters can be selected based on a trade-off between the required throughput of the operation and the available resources on the configurable processor.

[0100] The multiple cyclic clusters are coupled to the data flow logic 451 via data flow path 454, implemented using configurable interconnects and memory resources on a configurable processor. Additionally, the multiple cyclic clusters are coupled to the data flow logic 451 via control path 455, implemented, for example, using configurable interconnects and memory resources on a configurable processor. These control paths provide control signals indicating available clusters, preparing to provide input units to the available clusters for executing the neural network, preparing to provide trained parameters for the neural network, preparing to provide output patches for base detection classification data, and other control data for executing the neural network.

[0101] A configurable processor is configured to execute the operation of a multi-recurrent neural network using trained parameters to generate classification data for sensing cycles of a base stream operation. The neural network is executed to generate classification data for a subject sensing cycle used for a base detection operation. The neural network operates on a sequence comprising a number of N arrays of block data from corresponding sensing cycles in N sensing cycles, where the N sensing cycles, in the examples described herein, provide sensor data for a different base detection operation at a base position for each operation in the time series. Optionally, some of the N sensing cycles may be out of order, depending on the specific neural network model being executed, if desired. The number N can be any number greater than 1. In some examples described herein, the sensing cycles in the N sensing cycles represent a set of sensing cycles that precede at least one sensing cycle and follow at least one sensing cycle in the time series. Examples described herein where the number N is an integer equal to or greater than five are given.

[0102] Data flow logic 451 is configured to move block data and at least some trained parameters of the model from memory 460 to a configurable processor for running the neural network using input units (including block data of spatially aligned patches of N arrays) for a given run. Input units can be moved via a direct memory access operation in a DMA operation, or within smaller units that move in coordination with the execution of the deployed neural network during available time slots.

[0103] Block data for sensing cycles, as described herein, may include an array of sensor data having one or more features. For example, the sensor data may include two images, which are analyzed to identify one of four bases at a base position in the genetic sequence of DNA, RNA, or other genetic material. The block data may also include metadata about the images and the sensors. For example, in an embodiment of a base detection operation, the block data may include information about the alignment of the image with the clusters, such as distance from the center, indicating the distance of each pixel in the sensor data array from the center of the cluster of genetic material on the block.

[0104] During the execution of the multi-recurrent neural network as described below, block data may also include data generated during the execution of the multi-recurrent neural network, referred to as intermediate data, which can be reused rather than recomputed during the operation of the multi-recurrent neural network. For example, during the execution of the multi-recurrent neural network, dataflow logic may write intermediate data into memory 460 instead of sensor data for a given patch of the block data array. An embodiment similar to this is described in more detail below.

[0105] As shown in the figure, a system for analyzing the output of a base detection sensor is described. This system includes a memory (e.g., 460) accessible by a runtime program, which stores block data, including sensor data from blocks of sensing loops of a base detection operation. Additionally, the system includes a neural network processor, such as a configurable processor 450 with access to the memory. The neural network processor is configured to execute the operation of a neural network using trained parameters to generate classification data for the sensing loops. As described herein, the operation of the neural network operates on a sequence of N arrays of block data from the corresponding sensing loops (including the subject loop) of N sensing loops to generate classification data for the subject loop. Data flow logic 451 is provided to move the block data and trained parameters from the memory to the neural network processor for the operation of the neural network using input units (including data from spatially aligned patches of the N arrays of the corresponding sensing loops of the N sensing loops).

[0106] Additionally, a system is described in which a neural network processor is capable of accessing memory and includes multiple execution clusters, among which execution logic clusters are configured to execute a neural network. Dataflow logic is capable of accessing memory and the execution clusters within the multiple execution clusters to provide input units of block data to available execution clusters within the multiple execution clusters. These input units include N digital spatial alignment patches from an array of block data from a corresponding sensing loop (including a subject sensing loop), and cause the execution clusters to apply the N spatial alignment patches to the neural network to produce output patches of classification data for the spatial alignment patches of the subject sensing loop, where N is greater than 1.

[0107] Figure 5 This is a simplified diagram illustrating one aspect of the base detection operation, which includes the functionality of the runtime program executed by the host processor. In this diagram, data from the flow cell (such as...) Figures 1 to 2The output of the image sensor (shown in the flow cell) is provided on line 500 to image processing thread 501, which performs image processing such as resampling, alignment, and arrangement in the sensor data array of individual blocks, and can be used by a process that calculates a cluster mask for each block in the flow cell, identifying pixels in the sensor data array corresponding to clusters of genetic material on the corresponding block of the flow cell. To calculate the cluster mask, an exemplary algorithm is based on a process for detecting unreliable clusters in early sequencing cycles using a metric derived from the softmax output, then discarding data from those traps / clusters and not generating output data for those clusters. For example, the process could identify clusters with high reliability during the first N1 (e.g., 25) base detections and reject other clusters. Rejected clusters might be polyclonal, very weak, or due to reference point ambiguity. This procedure can be executed on the host CPU. In an alternative embodiment, this information could potentially be used to identify the necessary clusters of interest to be returned to the CPU, thereby limiting the storage required for intermediate data.

[0108] Based on the status of the base detection operation, the output of image processing thread 501 is provided on line 502 to scheduling logic 510 in the CPU. This scheduling logic routes the block data array to data cache 504 on high-speed bus 503, or to multi-cluster neural network processor hardware 520 on high-speed bus 505, such as... Figure 4 The configurable processor 520 returns the classification data output by the neural network to scheduling logic 510, which passes the information to data cache 504, or to thread 502 on thread 511 to perform base detection and quality score calculation using the classification data, and can arrange the data for base detection reads in a standard format. On thread 512, the output of thread 502 performing base detection and quality score calculation is provided to thread 503, which aggregates the base detection reads, performs other operations such as data compression, and writes the resulting base detection output to a specified destination for client use.

[0109] In some implementations, the host may include final processing of the output of hardware 520 to support threads (not shown) of the neural network. For example, hardware 520 may provide output of classification data from the final layer of a multi-cluster neural network. The host processor may perform output activation functions such as softmax on the classification data to configure the data for use by the base detection and quality scoring threads 502. Additionally, the host processor may perform input operations (not shown), such as resampling, batch normalization, or other adjustments to the block data before it is input to hardware 520.

[0110] Figure 6 It is a configurable processor (such as, Figure 4A simplified diagram of the configuration of the configurable processor. Figure 6 The configurable processor includes an FPGA with multiple high-speed PCIe interfaces. The FPGA is configured with a wrapper 600, which includes a reference... Figure 1 The data flow logic is described. The package 600 manages the interface and coordination with the runtime program in the CPU via CPU communication link 609, and manages communication with the onboard DRAM 602 (e.g., memory 460) via DRAM communication link 610. The data flow logic in the package 600 provides patch data retrieved by traversing a block data array of N cycles on the onboard DRAM 602 to cluster 601, and retrieves process data 615 from cluster 601 for delivery back to the onboard DRAM 602. The package 600 also manages data transfer between the onboard DRAM 602 and the host memory for both the input array of block data and the output patches of classified data. The package transfers patch data on line 613 to the assigned cluster 601. The package provides trained parameters such as weights and biases on line 612 to the cluster 601 retrieved from the onboard DRAM 602. On line 611, the wrapper provides configuration and control data to cluster 601, which is provided from or generated in response to a runtime program on the host via CPU communication link 609. The cluster can also provide status signals to wrapper 600 on line 616, which cooperate with control signals from the host to manage the traversal of the block data array, thereby providing spatially aligned patch data and using the resources of cluster 601 to perform multi-recurrent neural networks on the patch data.

[0111] As described above, multiple clusters can exist on a single configurable processor managed by the wrapper 600, and these clusters are configured to execute on corresponding patches of multiple patches of block data. Each cluster can be configured to provide classification data for base detection in a subject sensing cycle using block data from multiple sensing cycles as described herein.

[0112] In system examples, model data (including kernel data such as filter weights and biases) can be sent from the host CPU to a configurable processor, allowing the model to be updated based on the number of loops. As a representative example, a base detection operation may include approximately several hundred sensing loops. In some implementations, the base detection operation may include paired-end reads. For example, model training parameters may be updated every 20 loops (or another number of loops), or according to an update pattern implemented for a particular system and neural network model. In some implementations that include paired-end reads, where the sequence of a given string in a genetic cluster on a block comprises a first portion extending down (or up) along the string from a first end and a second portion extending up (or down) along the string from a second end, trained parameters may be updated during the transition from the first portion to the second portion.

[0113] In some examples, image data for multiple loops in the sensing data used for blocks can be sent from the CPU to the package 600. The package 600 may optionally perform some preprocessing and transformation on the sensing data and write the information to onboard DRAM 602. The input block data for each sensing loop may include a sensor data array comprising approximately 4000 × 3000 pixels or more per block per sensing loop, where two features represent the colors of two images of the block, and each feature is one or two bytes per pixel. For an implementation where the number N is three sensing loops to be used in each run of the multi-recurrent neural network, the block data array for each run of the multi-recurrent neural network may consume approximately several hundred megabytes per block. In some implementations of the system, the block data may also include an array of DFC data stored once per block, or other types of metadata about the sensor data and the blocks.

[0114] In operation, when a multi-cycle cluster becomes available, the wrapper allocates a patch to the cluster. The wrapper retrieves the next patch of block data during block traversal and sends it, along with appropriate control and configuration information, to the allocated cluster. The cluster can be configured to have sufficient memory on a configurable processor to hold data patches, including patches from multiple cycles in several systems that are being processed in-situ, as well as data patches to be processed when processing of the current patch is completed using ping-pong buffering or raster scanning techniques in various implementations.

[0115] When an assigned cluster completes its neural network operation on the current patch and produces an output patch, it signals the packager. The packager reads the output patch from the assigned cluster, or alternatively, the assigned cluster pushes data to the packager. The packager then assembles the output patch onto the processed block in DRAM 602. When processing of the entire block is complete and the output patch of data has been transferred to DRAM, the packager sends the processed output array of the block back to the host / CPU in a specified format. In some implementations, the onboard DRAM 602 is managed by memory management logic in the packager 600. The runtime program can control the sequencing operation to perform analysis of all arrays of block data in all loops during operation in a continuous streaming manner, thereby providing real-time analysis.

[0116] Figure 7 This is a graph of a multi-recurrent neural network model that can be executed using the system described in this article. Figure 7 The example shown can be called a five-loop-input, one-loop-output neural network. The input to a multi-loop neural network model consists of five spatially aligned patches (e.g., 700) of block data arrays from five sensing loops of a given block. The spatially aligned patches have the same alignment row and column dimensions (x, y) as the other patches in the set, such that the information pertains to the same clusters of genetic material on the blocks in the sequence loops. In this example, the subject patch is a patch from the block data array of loop K. A set of five spatially aligned patches includes a patch from loop K-2, two loops before the subject patch; a patch from loop K-1, one loop before the subject patch; a patch from loop K+1, one loop after the patch from the subject loop; and a patch from loop K+2, two loops after the patch from the subject loop.

[0117] The model includes an isolated stack 701 of layers of the neural network for each input patch. Therefore, stack 701 receives block data from the patch of cycle K+2 as input and is isolated from stacks 702, 703, 704, and 705 such that they do not share input or intermediate data. In some embodiments, all stacks 710 to 705 may have the same model and the same trained parameters. In other embodiments, the model and trained parameters may differ in different stacks. Stack 702 receives block data from the patch of cycle K+1 as input. Stack 703 receives block data from the patch of cycle K as input. Stack 704 receives block data from the patch of cycle K-1 as input. Stack 705 receives block data from the patch of cycle K-2 as input. Each layer of the isolated stack performs a convolution operation of a kernel, which includes multiple filters on the layer's input data. As in the example above, patch 700 may include three features. The output of layer 710 may include more features, such as 10 to 20 features. Similarly, the output of each layer in layers 711 to 716 may include any number of features suitable for a particular implementation. The parameters of the filters are the trained parameters of the neural network, such as weights and biases. The output feature sets (intermediate data) from each stack in stacks 701 to 705 are provided as input to the inverse hierarchy 720 of the temporal combination layer, where intermediate data from multiple loops are combined. In the illustrated example, the inverse hierarchy 720 includes: a first layer comprising three combination layers 721, 722, and 723, each combination layer receiving intermediate data from the three isolated stacks in the isolated stacks; and a final layer comprising a combination layer 730 that receives intermediate data from the three temporal layers 721, 722, and 723.

[0118] The output of the final combining layer 730 is an output patch of classification data for clusters located in the corresponding patches of the blocks from cycle K. The output patches can be assembled into an output array of classification data for the blocks of cycle K. In some embodiments, the output patches may have a different size and dimension than the input patches. In some embodiments, the output patches may include pixel-wise data that can be host-filtered to select cluster data.

[0119] Depending on the specific implementation, the output classification data can then be applied to a softmax function 740 (or other output activation function) optionally executed by the host or on a configurable processor. Output functions different from softmax can be used (e.g., generating base detection output parameters based on the maximum output, then using a learned nonlinear mapping with context / network output to give base quality).

[0120] Finally, the output of the softmax function 740 can be provided as the base detection probability (750) of loop K and stored in host memory for use in subsequent processing. Other systems can use another function for calculating the output probability, such as another nonlinear model.

[0121] A neural network can be implemented using a configurable processor with multiple execution clusters to complete the evaluation of a block loop over a duration equal to or close to the time interval of a sensing loop, thereby efficiently providing output data in real time. Dataflow logic can be configured to distribute block data and input units with trained parameters to the execution clusters, and to distribute output patches for aggregation in memory.

[0122] refer to Figure 8A and Figure 8B The following describes the base detection operation using dual-channel sensor data: Figure 7 The same five-loop input, one-loop output neural network data input unit. For example, for a given base in a gene sequence, a base detection operation can perform two analytical streams and two reactions that generate two signal (such as images) channels. These images can be processed to identify which of the four bases is located at the current position of the genetic sequence in each cluster of genetic material. In other systems, different numbers of channels of sensed data can be utilized. For example, a one-channel method and system can be used to perform base detection. The combined material of U.S. Patent Application Publication No. 2013 / 0079232 discusses base detection using various numbers of channels (such as one-channel, two-channel, or four-channel).

[0123] Figure 8A An array of block data for a given block (block M) is shown, consisting of five loops, used for executing a five-loop input, one-loop output neural network. The five-loop input block data in this example can be written to onboard DRAM or other memory in the system accessible by data flow logic. For loop K-2, arrays 801 for channel 1 and 811 for channel 2 are included; for loop K-1, arrays 802 for channel 1 and 812 for channel 2 are included; for loop K, arrays 803 for channel 1 and 813 for channel 2 are included; for loop K+1, arrays 804 for channel 1 and 814 for channel 2 are included; and for loop K+2, arrays 805 for channel 1 and 815 for channel 2 are included. Additionally, an array 820 of the block's metadata can be written to memory once, in this case including a DFC file to be used as input to the neural network along with each loop.

[0124] although Figure 8ATwo-channel base detection operations have been discussed, but the use of two channels is merely an example, and any other suitable number of channels can be used to perform base detection. For example, the combined material of U.S. Patent Application Publication No. 2013 / 0079232 discusses base detection using various numbers of channels (such as one channel, two channels, or four channels, or another suitable number of channels).

[0125] The data flow logic constitutes the input units of the block data, and these input units can be referenced. Figure 8B Understanding that the block data comprises spatially aligned patches of block data arrays for each execution cluster, each execution cluster being configured to run a neural network on input patches. The input units for the allocated execution clusters are configured by data flow logic to read spatially aligned patches (e.g., 851, 852, 861, 862, 870) from each of the five input loop block data arrays 801 to 805, 811, 815, 820, and deliver them via a data path (illustratively, 850) to memory on a configurable processor configured for use by the allocated execution clusters. The allocated execution clusters run a five-loop input / one-loop output neural network and deliver output patches of classification data for the same patches of blocks in subject loop K for subject loop K.

[0126] Figure 9 Is it like this? Figure 7 A simplified representation of a stack of neural networks that can be used in a system like (e.g., 701 and 720). In this example, some functions of the neural network (e.g., 900, 902) are executed on the host, while other parts of the neural network (e.g., 901) are executed on a configurable processor.

[0127] For example, the first function could be a batch normalization (layer 910) formed on the CPU. However, in another example, the batch normalization as a function could be merged into one or more layers, and there would be no separate batch normalization layer.

[0128] As discussed above regarding configurable processors, multiple spatially isolated convolutional layers are executed as the first set of convolutional layers in the neural network. In this example, the first set of convolutional layers applies 2D convolutions spatially.

[0129] like Figure 9 As shown, for each number in the stack L / 2 (L is the reference value), Figure 7The described spatially isolated neural network layers perform a first spatial convolution 921, followed by a second spatial convolution 922, then a third spatial convolution 923, and so on. As indicated at 923A, the number of spatial layers can be any actual number, which, depending on the context, can range from a few to more than 20 in different implementations.

[0130] For SP_CONV_0, the kernel weights are stored, for example, in a (1,6,6,3,L) structure because there are 3 input channels for this layer. In this example, the "6" in the structure is due to storing the coefficients in the Winograd domain of the transform (the kernel size is 3×3 in the spatial domain but expands in the transform domain).

[0131] For this example, for other SP_CONV layers, the kernel weights are stored in a (1,6,6L) structure because for each of these layers there are K (=L) inputs and outputs.

[0132] The output of the stacked spatial layers is provided to the temporal layers, including convolutional layers 924 and 925 executed on the FPGA. Layers 924 and 925 can be convolutional layers that apply 1D convolution across cycles. As indicated at 924A, the number of temporal layers can be any actual number, which, depending on the context, can range from a few to more than 20 in different implementations.

[0133] The first time layer TEMP_CONV_0 layer 824 reduces the number of loop channels from 5 to 3, such as Figure 7 As shown. The second time layer (layer 925) reduces the number of loop channels from 3 to 1, as... Figure 7 As shown, the number of feature maps is reduced to four outputs for each pixel, thus representing the confidence level in each base detection.

[0134] The output of the time layer is accumulated in the output patch and delivered to the host CPU to apply, for example, the softmax function 930 or other functions to normalize the base detection probability.

[0135] Figure 10 An alternative implementation of a 10-input, six-output neural network that can be performed for base detection operations is shown. In this example, block data from spatially aligned input patches of cycles 0 through 9 are applied to an isolated stack of spatial layers, such as stack 1001 of cycle 9. The output of the isolated stack is applied to an inverse hierarchical arrangement of a temporal stack 1020 with outputs 1035(2) through 1035(7), thereby providing base detection classification data for subjects in cycles 2 through 7.

[0136] Figure 11A neural network-based base detector (e.g., Figure 7 This is a specific implementation of a specialized architecture, where a neural network-based base detector is used to isolate the processing of data from different sequencing cycles. The motivation for using a specialized architecture is described first.

[0137] A neural network-based base detector processes data from the current sequencing cycle, one or more previous sequencing cycles, and one or more subsequent sequencing cycles. Data from the additional sequencing cycles provides sequence-specific context. The neural network-based base detector learns this sequence-specific context during training and performs base detection within that context. Furthermore, data from the previous and subsequent sequencing cycles provide second-order contributions to the pre-phase and phasing signals of the current sequencing cycle.

[0138] Images captured at different sequencing cycles and in different image channels are misaligned relative to each other and have residual registration errors. To address this misalignment, a specialized architecture includes spatial convolutional layers that do not mix information between sequencing cycles and only mix information within a sequencing cycle.

[0139] Spatial convolutional layers use so-called "isolated convolutions," which achieve isolation by processing data from each of multiple sequencing cycles independently via "dedicated, non-shared" convolutional sequences. This isolated convolution convolves only the data and resulting feature maps from a given sequencing cycle (i.e., within the cycle), without convolving the data and resulting feature maps from any other sequencing cycles.

[0140] For example, consider input data including (i) current data from the current (time t) sequencing cycle for which base detection is to be performed, (ii) previous data from a previous (time t-1) sequencing cycle, and (iii) subsequent data from a previous (time t+1) sequencing cycle. The specialized architecture then initiates three separate data processing pipelines (or convolutional pipelines): a current data processing pipeline, a previous data processing pipeline, and a subsequent data processing pipeline. The current data processing pipeline receives the current data from the current (time t) sequencing cycle as input and processes it independently through multiple spatial convolutional layers to produce a so-called "current spatial convolutional representation" as the output of the final spatial convolutional layer. The previous data processing pipeline receives the previous data from a previous (time t-1) sequencing cycle as input and processes it independently through multiple spatial convolutional layers to produce a so-called "previous spatial convolutional representation" as the output of the final spatial convolutional layer. The subsequent data processing pipeline receives subsequent data from the next (time t+1) sequencing cycle as input and processes this subsequent data independently through multiple spatial convolutional layers to produce a so-called "subsequent spatial convolutional representation" as the output of the final spatial convolutional layer.

[0141] In some implementations, the current pipeline, one or more previous pipelines, and one or more subsequent processing pipelines are executed in parallel.

[0142] In some implementations, spatial convolutional layers are part of a spatial convolutional network (or subnetwork) within a specialized architecture.

[0143] The neural network-based base detector also includes a temporal convolutional layer that mixes information between sequencing cycles (i.e., between cycles). The temporal convolutional layer receives its input from the spatial convolutional network and operates on the spatial convolutional representation produced by the final spatial convolutional layer of the corresponding data processing pipeline.

[0144] The inter-cycle operational freedom of temporal convolutional layers stems from the fact that misaligned properties are cleared from spatial convolutional representations by stacking or cascading isolated convolutions performed by a sequence of spatial convolutional layers. These misaligned properties exist in the image data fed into the spatial convolutional network as input.

[0145] Temporal convolutional layers use so-called "combined convolutions," which convolve input channels in subsequent inputs group by group on a sliding window basis. In one specific implementation, these subsequent inputs are the subsequent outputs produced by previous spatial or temporal convolutional layers.

[0146] In some implementations, temporal convolutional layers are part of a temporal convolutional network (or subnetwork) within a specialized architecture. The temporal convolutional network receives its input from a spatial convolutional network. In one implementation, the first temporal convolutional layer of the temporal convolutional network combines spatial convolutional representations between sequencing cycles, group by group. In another implementation, subsequent temporal convolutional layers of the temporal convolutional network combine subsequent outputs from previous temporal convolutional layers.

[0147] The output of the final temporal convolutional layer is fed into the output layer that produces the final output. The output is used to detect bases in one or more clusters at one or more sequencing cycles.

[0148] During forward propagation, the specialized architecture processes information from multiple inputs in two stages. In the first stage, isolating convolutions are used to prevent information from mixing between inputs. In the second stage, combining convolutions are used to mix the information between inputs. The result from the second stage is then used to perform a single inference on those multiple inputs.

[0149] This differs from batch processing techniques where convolutional layers process multiple inputs in a batch simultaneously and make a corresponding inference for each input in that batch. In contrast, the specialized architecture maps the multiple inputs to a single inference. This single inference can include more than one prediction, such as a classification score for each of the four bases (A, C, T, and G).

[0150] In one implementation, these inputs are temporally ordered, such that each input is generated at different time steps and has multiple input channels. For example, these multiple inputs could include three inputs: the current input generated by the current sequencing cycle at time step (t), the previous input generated by a previous sequencing cycle at time step (t-1), and the subsequent input generated by a subsequent sequencing cycle at time step (t+1). In another implementation, each input is derived from the current output, previous output, and subsequent output generated by one or more previous convolutional layers, and includes k feature maps.

[0151] In one implementation, each input may include five input channels: a red image channel, a red distance channel, a green image channel, a green distance channel, and a scaling channel. In another implementation, each input may include a k-feature map generated by a previous convolutional layer, and each feature map is considered an input channel. In yet another example, each input may have only one channel, two channels, or another different number of channels. The combined material of U.S. Patent Application Publication No. 2013 / 0079232 discusses base detection using various numbers of channels, such as one, two, or four channels.

[0152] Figure 12 An embodiment of isolation layers is illustrated, each of which may include convolutions. Isolation convolution processes multiple inputs by applying convolutional filters synchronously to each input once. Using isolation convolution, the convolutional filters combine input channels from the same input and do not combine input channels from different inputs. In one embodiment, the same convolutional filters are applied synchronously to each input. In another embodiment, different convolutional filters are applied synchronously to each input. In some embodiments, each spatial convolutional layer includes a set of k convolutional filters, where each convolutional filter is applied synchronously to each input.

[0153] Figure 13A A specific implementation of a combination layer is shown, where each combination layer may include convolutions. Figure 13B Another specific implementation of a combining layer is shown, where each combining layer may include convolutions. Combining convolutions mix information between different inputs by grouping corresponding input channels of different inputs and applying convolutional filters to each group. The grouping of these corresponding input channels and the application of convolutional filters occur on a sliding window basis. In this context, the window spans two or more subsequent input channels, representing, for example, the output of two subsequent sequencing cycles. Because this window is a sliding window, most input channels are used within two or more windows.

[0154] In some implementations, the different inputs originate from the output sequence produced by a previous spatial convolutional layer or a previous temporal convolutional layer. Within this output sequence, these different inputs are arranged as subsequent outputs and thus treated as subsequent inputs by a subsequent temporal convolutional layer. Then, in this subsequent temporal convolutional layer, these combined convolutions apply convolutional filters to the corresponding input channel groups in these subsequent inputs.

[0155] In one implementation, these subsequent inputs are temporally ordered such that the current input is generated by the current sequencing cycle at time step (t), the previous input is generated by the preceding sequencing cycle at time step (t-1), and the subsequent input is generated by the following sequencing cycle at time step (t+1). In another implementation, each subsequent input is derived from the current output, the previous output, and the subsequent output generated by one or more previous convolutional layers, and includes k feature maps.

[0156] In one implementation, each input may include the following five input channels: a red image channel, a red distance channel, a green image channel, a green distance channel, and a scaling channel. In another implementation, each input may include a k-feature map generated by the previous convolutional layer, and each feature map is considered an input channel.

[0157] The depth B of a convolutional filter depends on the number of subsequent inputs, whose corresponding input channels are convolved by the filter group by group on a sliding window basis. In other words, the depth B is equal to the number of subsequent inputs and the group size in each sliding window.

[0158] exist Figure 13A In this case, the corresponding input channels from two subsequent inputs are combined in each sliding window, and therefore B = 2. Figure 13B In this case, the corresponding input channels from the three subsequent inputs are combined in each sliding window, and therefore B = 3.

[0159] In one implementation, the sliding windows share the same convolutional filters. In another implementation, different convolutional filters are used for each sliding window. In some implementations, each temporal convolutional layer comprises a set of k convolutional filters, where each convolutional filter is applied to subsequent inputs based on the sliding window.

[0160] Figures 4 to 10Further details and variations thereof can be found in co-pending U.S. nonprovisional patent application No. 17 / 176,147 (Attorney’s File No. ILLM 1020-2 / IP-1866-US), filed February 15, 2021, entitled “HARDWARE EXECUTION AND ACCELERATION OF ARTIFICIAL INTELLIGENCE-BASED BASE CALLER”, which is incorporated herein by reference as if fully set forth herein.

[0161] Figure 14 An exemplary block-position-based weighted selection scheme for base detection is shown. For example, Figure 14 The diagram shows an exemplary circulation pool 1400 comprising multiple channels 1450, each channel comprising corresponding multiple blocks (e.g., relative to...). Figure 1 and Figure 2 (As discussed). The depiction of the flow cell 1400 is symbolic in nature, and the flow cell 1400 symbolically depicts the various channels and blocks within it, while the various other components of the flow cell 1400 are not shown. Figure 14 A top view of the flow cell 1400 is shown (e.g., while not shown). Figure 1 (Frost 136).

[0162] In one implementation scheme and also as relative to Figure 2 The circulation pool 1400 is divided or partitioned into multiple channels, such as channels 1450a, 1450b, 1450c, ..., 1450(P-2), 1450(P-1), and 1450P, i.e., P channels, where P is a positive integer. Similarly, as relative to... Figure 2 In one implementation discussed, the individual channels 1450 are further partitioned into non-overlapping regions called blocks. In the example, each channel 1450 includes one or more blocks. For example, in... Figure 14 In the middle, each channel 1450 includes two corresponding block columns, where Figure 14 Individual blocks are indicated by corresponding rectangular boxes. The number of blocks in each block column within each channel is implementation-specific. Each block comprises multiple corresponding clusters. During sequencing, the clusters on the block and their surrounding background are imaged. For example, Figure 2 and Figure 3 An example of a cluster within a block is shown.

[0163] In one implementation, for example, blocks in circulation pool 1400 are classified into various types based on their location. Figure 14In an exemplary implementation, the blocks in the circulation pool 1400 are classified as edge blocks 1408, near-edge blocks 1410, or non-edge (or central) blocks 1412.

[0164] For example, blocks on the vertical edges (e.g., along the Y-axis) and / or horizontal edges (e.g., along the X-axis) of flow pool 1400 are classified as edge blocks 1408, such as... Figure 14 As shown. Therefore, edge block 1408 is adjacent to the corresponding edge of circulation pool 1400.

[0165] Blocks that are close to (e.g., adjacent to) edge blocks are classified as near-edge blocks 1410. For example, near-edge block 1410 is a block that is separated from the edge of the circulation pool 1400. Therefore, edge block 1408 separates the corresponding near-edge block 1410 from the corresponding edge of the circulation pool 1400.

[0166] The block that is neither an edge block nor a near-edge block is non-edge block 1412, also known as central block 1412. Therefore, central block 1412 is relatively closer to the center of circulation pool 1400 compared to edge block 1408 or near-edge block 1410. For example, central block 1414 is separated from the edge of circulation pool 1400 by edge block 1408 and near-edge block 1410.

[0167] Despite Figure 14 Blocks in the circulation pool 1400 are classified into three categories (such as edge, near edge, and central or non-edge), but this classification is merely an example, and different classifications based on block location can also be used. For example, in another specific implementation, blocks can be classified as (i) edge or near edge blocks and (ii) central blocks (e.g., the edge block and near edge block categories can be merged into a single category), resulting in two block categories.

[0168] As discussed earlier, Figure 7 and Figure 10 It is an exemplary multi-recurrent neural network model that can be used for base detection, and Figure 9 It can be used as Figure 7 and Figure 9 A simplified representation of a stack of neural networks in a system. Various functions within a neural network model used for base detection utilize biases and weights. For example, during convolutional operations, filters including one or more kernels (e.g., such as...) Figure 12 (As shown) has multiple corresponding weights, which are trained during the training phase of the neural network model. For example, the weights are tuned using training data generated from one or more blocks, and these weights are used for, for example... Figure 14 Bases were detected in the flow cell.

[0169] Base detection loops are performed on clusters within each block of flow pool 1400. In this example, the parameters associated with the base detection operation for a block can be based on the block's relative position. For example, relative to... Figure 1 The excitation light 101 discussed is directed to blocks of the flow cell, and, for example, different blocks may receive different amounts of excitation light 101 based on the location of each block and / or the location of one or more light sources emitting the excitation light 101. For example, if the light source emitting the excitation light 101 is located vertically above the flow cell 1400, the central block 1412 may receive a different amount of light than the edge blocks 1408 and / or near-edge blocks 1410.

[0170] In another example, peripheral or external light around the flow cell 1400 (e.g., ambient light from outside the biosensor 100) can affect the amount and / or characteristics of the excitation light 101 received by the various blocks of the flow cell 1400. By way of example only, edge block 1408 may receive the excitation light 101 as well as a certain amount of peripheral light from outside the flow cell 1400, while central block 1412 may primarily receive the excitation light 101.

[0171] In yet another example, the various sensors (or pixels or photodiodes) included in the flow cell 1400 (e.g., Figure 1 The sensors 106, 108, 110, 112, and 114 shown can sense light based on the positions of the corresponding sensors, which are based on the positions of the corresponding blocks. For example, the sensing operations performed by one or more sensors associated with the edge block 1408 can be relatively more affected by peripheral light (and excitation light 101) than by the effect of peripheral light on the sensing operations of one or more other sensors associated with the central block 1412.

[0172] In another example, the flow of reactants (e.g., which includes any substances that can be used to obtain the desired reaction during base detection, such as reagents, enzymes, samples, other biomolecules, and buffer solutions) to various blocks may also be affected by the location of the blocks. For example, blocks closer to the source of the reactants may receive a larger amount of reactants than blocks farther from the source.

[0173] Therefore, in other words, the parameters associated with base detection may differ slightly for different categories of blocks. Thus, in one implementation, different weight sets are used for different categories of blocks to compensate for the exemplary block position dependency of the base detection process discussed above.

[0174] For example, in Figure 14In the specific implementation, three candidate weight sets are used: (i) the edge weight set WeT 1418 for edge blocks, (ii) the near edge weight set WnT 1420 for near edge blocks, and (iii) the central weight set WcT 1422 for central (or non-edge) edge blocks.

[0175] In the example, when training a neural network model for base detection (such as relative to...) Figure 7 , Figure 9 and Figure 10 When discussing those neural network models, they were initially trained on image data generated only from edge blocks 1408 (e.g., without using training data generated from near-edge or central blocks). The resulting weights were included in the edge weight set WeT 1418.

[0176] Subsequently, a neural network model is trained on image data generated solely from near-edge blocks 1410 (e.g., without using training data generated from edge or central blocks), and the resulting weights are included in the near-edge weight set WnT 1420. Finally, a neural network model is trained on image data generated solely from central blocks 1412 (e.g., without using training data generated from edge or near-edge blocks), and the resulting weights are included in the edge weight set WcT 1422.

[0177] Therefore, each weight set includes a corresponding set of weights for configuring a neural network model, where the configured neural network processes sensor data from blocks of a corresponding category. For example, as relative to... Figure 7 , Figure 9 , Figure 10 and Figure 11 The topology of the neural network model under discussion includes (i) one or more spatial layers that do not combine sensor data and the resulting feature maps between successive sensing cycles, and (ii) a temporal layer that combines the resulting feature maps between successive sensing cycles. Therefore, each weight set includes corresponding spatial weights for the spatial layer and corresponding temporal weights for the temporal layer. For example, the edge weight set WeT 1418 for edge blocks includes one or more corresponding spatial weights for the spatial layer and one or more corresponding temporal weights for the temporal layer. Similarly, the central weight set WcT 1422 for central blocks includes one or more corresponding spatial weights for the spatial layer and one or more corresponding temporal weights for the temporal layer.

[0178] During the inference phase of the base detection loop, when detecting bases within clusters of edge blocks, the neural network model is configured using the edge weight set WeT 1418, and sensor data from the edge blocks is used for the base detection operation. Similarly, when detecting bases within clusters of near-edge blocks, the neural network model is configured using the near-edge weight set WnT 1420, and sensor data from the near-edge blocks is used for the base detection operation. Finally, when detecting bases within clusters of the central block, the neural network model is configured using the central weight set WeT 1422, and sensor data from the central block is used for the base detection operation.

[0179] Figure 15 Another exemplary block-position-based weighting scheme for base detection is shown. For example, Figure 15 The diagram shows a circulation pool 1400, which includes the plurality of channels 1450a, 1450b, 1450c, ..., 1450(P-2), 1450(P-1) and 1450P, wherein each channel includes a corresponding plurality of blocks.

[0180] exist Figure 15 In the example, each block in circulation pool 1400 is categorized based on its position within the corresponding channel. For instance, one or more channels at the top of circulation pool 1400 (such as channels 1450P and 1450(P-1)) are categorized as top peripheral channels, one or more channels at the bottom of circulation pool 1400 (such as channels 1450a and 1450b) are categorized as bottom peripheral channels, and one or more channels in the center of circulation pool 1400 (such as channels 1450c and 1450(P-2)) are categorized as central channels. Note that the number of channels belonging to each category is merely an example, and variations are possible. For example, instead of two channels, each peripheral channel category could include one corresponding channel or three corresponding channels, etc.

[0181] The blocks in the top perimeter channel are classified as top perimeter channel block 1508a, the blocks in the bottom perimeter channel are classified as bottom perimeter channel block 1508b, and the blocks in the central channel are classified as central channel block 1510.

[0182] In relation to Figure 14 The reasons discussed, in one implementation plan, can be addressed to Figure 15 Different weight sets are assigned to blocks within channels of different categories in the circulation pool. For example, in Figure 15In the specific implementation, two candidate weight sets are used: (i) the peripheral weight set WpL 1504 for peripheral channel blocks 1508a and 1508b (e.g., blocks belonging to the top and bottom peripheral channels), and (ii) the central weight set WcL 1506 for central channel block 1510.

[0183] For example, in training neural network models for base detection (such as relative to...) Figure 7 , Figure 9 and Figure 10 When discussing those neural network models, the neural network models are initially trained on image data generated only from peripheral channel blocks 1508a and 1508b (e.g., without using training data generated from the central channel block 1510). The resulting weights are included in the peripheral weight set WpL1504.

[0184] Subsequently, a neural network model is trained on image data generated only from the central channel block 1510 (e.g., without using training data generated from the peripheral channel blocks 1508a, 1508b), and the resulting weights are included in the central weight set WcL1506.

[0185] During the inference phase of the base detection cycle, when bases within clusters of peripheral channel blocks 1508 are to be detected, the neural network model is configured with weights from the peripheral weight set WpL 1504, and sensor data 1508 from the peripheral channel blocks is used for the base detection operation. Similarly, when bases within clusters of the central channel block 1510 are to be detected, the neural network model is configured with weights from the central weight set WcL 1506, and sensor data from the central channel block 1510 is used for the base detection operation.

[0186] Figure 16 Another exemplary block-position-based weighting scheme for base detection is shown. For example, Figure 16 The diagram shows a circulation pool 1400, which includes the plurality of channels 1450a, 1450b, 1450c, ..., 1450(P-2), 1450(P-1) and 1450P, wherein each channel includes a corresponding plurality of blocks.

[0187] exist Figure 16In the example, based on dashed line 1603, circulation pool 1400 is divided into multiple segments or sections (i.e., dashed line 1603 is used for classification and does not actually exist in the circulation pool). For example, circulation pool 1400 is divided into top left segment 1610TL (weight set WTL), top center segment 1610TC (weight set WTC), top right segment 1610TR (weight set WTR), middle left segment 1610ML (weight set WML), center segment 1610C (weight set WC), middle right segment 1610MR (weight set WMR), bottom left segment 1610BL (weight set WML), bottom center segment 1610BC (weight set WBC), and bottom left segment 1610BL (weight set WBL). Each block in circulation pool 1400 is classified based on the segment to which it belongs.

[0188] Due to something similar to relative Figure 14 The reasons discussed, in one implementation plan, are to Figure 16 The weight set is assigned to blocks within various segments. For example, in Figure 16 In the specific implementation, the top left weight set WTL is assigned to the blocks in the top left segment 1610TL, the top center weight set WTC is assigned to the blocks in the top center segment 1610TC, the top right weight set WTR is assigned to the blocks in the top right segment 1610TR, the middle left weight set WML is assigned to the blocks in the middle left segment 1610ML, the center weight set WC is assigned to the blocks in the center segment 1610C, the middle right weight set WMR is assigned to the blocks in the middle right segment 1610MR, the bottom left weight set WML is assigned to the blocks in the bottom left segment 1610BL, the bottom center weight set WBC is assigned to the blocks in the bottom center segment 1610BC, and the bottom left weight set WBL is assigned to the blocks in the bottom left segment 1610BL.

[0189] For example, in training neural network models for base detection (such as relative to...) Figure 7 , Figure 9 and Figure 10 When training the neural network models discussed, the models are initially trained on sensor data generated solely from blocks in the top left segment 1610TL (e.g., without using sensor data from blocks of other categories), and the resulting weights are included in the top left weight set WTL. This process is repeated for blocks in various other segments to generate various candidate weight sets, such as the top center weight set WTC, the top right weight set WTR, the middle left weight set WML, the center weight set WC, the middle right weight set WMR, the bottom left weight set WML, the bottom center weight set WBC, and the bottom right segment weight set WBL.

[0190] During the inference phase of the base detection cycle, when a base within a cluster of blocks in the top left segment 1610TL needs to be detected, the neural network model is configured with weights from the corresponding top left weight set WTL, and sensor data from blocks in the top left segment 1610TL is used for the base detection operation. This process is repeated similarly for blocks in various other segments.

[0191] exist Figure 16 In this circuit, the flow pool 1400 is divided into nine distinct segments. However, the flow pool 1400 can be divided into different numbers of segments, such as four segments including the top left quadrant, the top right quadrant, the bottom left quadrant, and the bottom right quadrant.

[0192] Figure 17A An example of fading is shown, where the signal intensity decreases with the number of cycles in a sequencing run as a base detection operation. Fading is the exponential decay of fluorescence signal intensity with increasing cycle number. As sequencing runs proceed, analyte strands are overwashed, exposed to laser radiation that produces reactive substances, and subjected to harsh environmental conditions. All of these lead to the gradual loss of fragments in each analyte, thus reducing its fluorescence signal intensity. Fading is also known as darkening or signal attenuation. Figure 17A An example of fading 1700 is shown. Figure 17A In the analysis, the intensity values ​​of the analyte fragments with AC microsatellites exhibited exponential decay.

[0193] Figure 17B This conceptually illustrates the decrease in signal-to-noise ratio (SNR) as sequencing cycles progress. For example, accurate base detection becomes increasingly difficult as sequencing proceeds due to decreasing signal strength and increasing noise, resulting in a significant decrease in SNR. Physically, it is observed that later synthesis steps attach tags at different locations relative to the sensor compared to earlier synthesis steps. When the sensor is located below the sequence being synthesized, signal attenuation occurs because, in later sequencing steps, the tags attach to strands farther from the sensor compared to earlier steps. This leads to signal attenuation as sequencing cycles progress. In some designs, where the sensor is located above a substrate holding the clusters, the signal may increase rather than decrease as sequencing progresses.

[0194] In the flow cell design studied, noise increases as the signal decays. Physically, phasing and pre-phasing increase noise as sequencing progresses. Phosing refers to the step in sequencing where the tag fails to advance along the sequence. Pre-phasing refers to a sequencing step where the tag jumps forward two positions instead of one during a sequencing cycle. Phosing and pre-phasing are relatively infrequent, occurring approximately once every 500 to 1000 cycles. Phosing is slightly more frequent than pre-phasing. Phosing and pre-phasing affect individual strands within clusters that produce intensity data; therefore, as sequencing progresses, the intensity noise distribution from the clusters accumulates into binomial, trinomial, tetranomial, and other expansions.

[0195] Fading, signal attenuation, and reduced signal-to-noise ratio, and Figure 17A and Figure 17B Further details can be found in U.S. non-provisional patent application No. 16 / 874,599 (Attorney’s File No. ILLM 1011-4 / IP-1750-US), filed May 14, 2020, entitled “Systems and Devices for Characterization and Performance Analysis of Pixel-Based Sequencing,” which is incorporated herein by reference as if fully set forth herein.

[0196] Therefore, during base detection, the reliability or quality of base detection (e.g., the probability of detecting the correct base) can be based on the number of base detection cycles for which the current base is being detected. Thus, in addition to or instead of based on the location of the block (e.g., relative to...), Figure 14 , Figure 15 , Figure 16 (As discussed), the weight set can also be based on the current loop number for which its base detection operation is being performed. Figure 18 An exemplary weighting scheme based on the number of base detection cycles is shown for base detection.

[0197] For example, Figure 18 Base detection is performed on the exemplary block M. Assume there are N base detection cycles, during which chains in various clusters within the exemplary block M will be identified. As discussed, due to... Figure 17A and Figure 17B And / or various other factors discussed, by biosensors (e.g., Figure 1 The signal intensity detected by sensors 106, 108, 110, 112, and 114 varies (e.g., decays) with the number of base detection cycles. For example, suppose N base detection sensing cycles are divided into three subsequences, such as (a) initial sensing cycles 1 to N1, (b) intermediate sensing cycles (N1+1) to N2, and (c) final sensing cycles (N2+1) to N, as... Figure 18 As shown, where N>N2>N1, and N, N1, and N2 are positive integers. Therefore, the N sensing cycles are divided into three cyclic subsequences, although the N sensing cycles can also be divided into different numbers of cyclic subsequences (such as 2, 4, or more).

[0198] It should be noted that the number of sensing cycles in each of the three cyclic subsequences mentioned above may be equal or unequal, and is implementation-specific. As an example only and not to limit the scope of this disclosure, if N is 100, the 100 cycles can be divided into subsequences comprising 30 initial cycles, 30 intermediate cycles, and 40 final cycles. That is, in this simple example, N1 = 30 and N2 = 60.

[0199] As relative to Figure 17A and 17B As discussed, for example, the average signal strength received by the base detector from the biosensor at, for example, cycle number N1 may differ from the average signal strength received by the base detector from the biosensor at cycle number N. Therefore, a neural network model trained for, for example, cycle number N1 may not provide satisfactory results for cycle number N.

[0200] Therefore, neural network models used for base detection (such as those relative to...) Figure 7 , Figure 9 and Figure 10 The neural network models discussed can be trained on specific cyclic subsequences. For example, initially, the neural network model is trained on sensor data generated only during sensing cycles 1 to N1, and the resulting weights are included in the first cyclic subsequence weight set W(1-N1)1810a. Subsequently, the neural network model is trained on sensor data generated only during sensing cycles (N1+1) to N2, and the resulting weights are included in the second cyclic subsequence weight set W(N1-N2)1810b. Finally, the neural network model is trained on sensor data generated only during sensing cycles (N2+1) to N, and the resulting weights are included in the third cyclic subsequence weight set W(N2-N)1810c. Note that, for example, in the first cyclic subsequence weight set W(1-N1)1810a, the phrase (1-N1) is a cyclic index, which means that the weight set is associated with sensing cycles 1 to N1. It can be noted that in Figure 18 In the example, base detection is performed using sensor data from one or more channels (such as one channel, two channels, three channels, four channels, or a greater number of channels), and for a given cycle, weights can be applied to sensor data from all such channels.

[0201] During the inference phase, when bases are to be detected for cycles 1 to N1, the neural network model is configured using the first cycle subsequence weight set W(1-N1)1810a. Similarly, when bases are to be detected for cycles (N1+1) to N2, the neural network model is configured using the second cycle subsequence weight set W(N1-N2)1810b. Finally, when bases are to be detected for cycles N2 to N3, the neural network model is configured using the third cycle subsequence weight set W(N2-N3)1810c.

[0202] Figure 14 , Figure 15 , Figure 16 Various examples of weight set selection based on block location are shown. Therefore, these figures illustrate various examples of weight set selection based on the spatial progression of base detection operations through the location of blocks on a biosensor. On the other hand, Figure 18 An example of weight set selection based on the time progression of a base detection operation through a series of sensing cycle subsequences 1 to N is shown. Figure 19 The concept of selecting a weight set based on the location of spatial blocks (e.g., relative to...) Figures 14 to 16 The concepts discussed) and weight set selection based on the time progression of the base detection cycle (e.g., relative to) Figure 18 The combination discussed. Therefore, Figure 19 An exemplary weighting scheme based on (i) the time progression of the base detection cycle number and (ii) the spatial location of the block is shown.

[0203] For example, Figure 19 The diagram shows a first block M1 and a second block M2. Assume block M1 is a block of the first category and block M2 is a block of the second category. For example only, block M1 could be... Figure 14 Edge block 1408, and block M2 can be Figure 14 The central block is 1412. Therefore, the weight set used for base detection of chains within clusters in block M1 will be different from the weight set used for base detection of chains within clusters in block M2, for example, as relative to... Figure 14 , 15 And the discussion in 16.

[0204] Similar to Figure 18 ,exist Figure 19 It is assumed that there are N base detection cycles, during which chains in various clusters within blocks M1 and M2 will be identified. Furthermore, similar to... Figure 18 ,exist Figure 19The assumption is that N base detection sensing cycles are divided into three cycle subsequences, such as (a) initial sensing cycles 1 to N1, (b) intermediate sensing cycles (N1+1) to N2 and (c) final sensing cycles (N2+1) to N, where N>N2>N1, and N, N1, N2 are positive integers, although in other examples N sensing cycles may also be divided into different numbers of cycle subsequences (such as 2, 4 or more).

[0205] In the example, the neural network model used for base detection (such as relative to...) Figure 7 , Figure 9 and Figure 10 The neural network models discussed can be trained for specific cyclic subsequences and for specific blocks. For example, a neural network model is initially trained only on sensor data generated during sensing cycles 1 to N1 and only for edge block 1408, and the resulting weight set is labeled "weight set (eT, (1-N1))". Note that in this weight set, the phrase "eT" is a block category or block location index, which means that this weight set is dedicated to edge block 1408. Furthermore, in this weight set, the phrase "(1-N1)" is a cycle index, which means that this weight set is dedicated to sensing cycles 1 to N1.

[0206] Similarly, the neural network model is then trained only on sensor data generated during sensing cycles (N1+1) to N2 and only for edge block 1408, and the resulting weight set is labeled "weight set (eT,(N1-N2))". Here, the phrase "eT" is the block location or block category index, which means that the weight set is dedicated to edge block 1408. Similarly, the phrase "(N1-N2)" in the weight set is the cycle index, which means that the weight set is dedicated to sensing cycles (N1+1) to N2.

[0207] Similarly, the neural network model was initially trained only on sensor data generated during sensing cycles (N2+1) to N and only for edge block 1408, and the resulting weight set was labeled "weight set (eT, (N2-N))". Here, the phrase "eT" is the block location index, which means that the weight set is dedicated to edge block 1408. Similarly, the phrase "(N2-N)" in the weight set is the cycle index, which means that the weight set is dedicated to sensing cycles (N2+1) to N.

[0208] Furthermore, the neural network model is trained only on sensor data generated during sensing cycles 1 to N1 and only for the central block 1412, and the resulting weight set is labeled "weight set (cT, (1-N1))". Note that in this weight set, the phrase "cT" is the block location index, meaning that this weight set is dedicated to the central block 1412. Additionally, the phrase "(1-N1)" in this weight set is the cycle index, meaning that this weight set is dedicated to sensing cycles 1 to N1.

[0209] Similarly, the neural network model is then trained only on sensor data generated during sensing cycles (N1+1) to N2 and only for the central block 1412, and the resulting weight set is labeled "weight set (cT, (N1-N2))". Here, the phrase "cT" is the block location index, which means that the weight set is dedicated to the central block 1412. Similarly, the phrase "(N1-N2)" in the weight set is the cycle index, which means that the weight set is dedicated to sensing cycles (N1+1) to N2.

[0210] Similarly, the neural network model was initially trained only on sensor data generated during sensing cycles (N2+1) to N and only for the central block 1412, and the resulting weight set was labeled "weight set (cT, (N2-N))". Here, the phrase "cT" is the block location index, which means that the weight set is dedicated to the central block 1412. Similarly, the phrase "(N2-N)" in the weight set is the cycle index, which means that the weight set is dedicated to sensing cycles (N2+1) to N.

[0211] During the inference phase, when dealing with loops 1 to N1 and block M1 (e.g., which is...), Figure 19 In the example, when detecting bases in edge block 1408, the neural network model is configured with a weight set (eT, (1-N1)). Similarly, when detecting bases for loops (N1+1) to N2 and for block M1, the neural network model is configured with a weight set (eT, (N1-N2)). Additionally, when detecting bases for loops (N2+1) to N and for block M1, the neural network model is configured with a weight set (eT, (N2-N)).

[0212] Similarly, when targeting loops 1 to N1 and block M2 (e.g., which is...) Figure 19In the example, when detecting bases in the central block 1412, the neural network model is configured with a weight set (cT, (1-N1)). Similarly, when detecting bases for loops (N1+1) to N2 and for block M2, the neural network model is configured with a weight set (cT, (N1-N2)). Additionally, when detecting bases for loops (N2+1) to N and for block M2, the neural network model is configured with a weight set (cT, (N2-N)).

[0213] Figure 20 Another exemplary weighting scheme is shown based on (i) the time progression of the base detection cycle number and (ii) the spatial location of the block. Figure 20 The block classification shown is similar to Figure 14 The block classification is shown below. For example, see [link to example]. Figure 14 and Figure 20 Edge block 1408 is shown as having a diagonal line within it, near-edge block 1410 is shown as having a crosshair within it, and central block 1412 is shown as having a dot or gray shading within it.

[0214] Figure 20 Three boxes, 1908, 1910, and 1912, are also shown. Referring to box 1908, weight sets dedicated to edge block 1408 and various sensing loop subsequences are shown. For example, weight set (eT,(1-N1)) is dedicated to edge block 1408 and sensing loops 1 through N1. Weight set (eT,(N1-N2)) is dedicated to edge block 1408 and sensing loops (N1+1) through N2. Weight set (eT,(N2-N)) is dedicated to edge block 1408 and sensing loops (N2+1) through N.

[0215] Similarly, referring to box 1910, weight sets are shown specifically for near-edge block 1410 and various sensing loop subsequences. For example, weight set (nT, (1-N1)) is dedicated to near-edge block 1410 and sensing loops 1 to N1. Weight set (nT, (N1-N2)) is dedicated to near-edge block 1410 and sensing loops (N1+1) to N2. Weight set (nT, (N2-N)) is dedicated to near-edge block 1410 and sensing loops (N2+1) to N.

[0216] Similarly, referring to box 1912, weight sets dedicated to central block 1412 and various sensing loop subsequences are shown. For example, weight set (cT,(1-N1)) is dedicated to central block 1412 and sensing loops 1 to N1. Weight set (cT,(N1-N2)) is dedicated to central block 1412 and sensing loops (N1+1) to N2. Weight set (cT,(N2-N)) is dedicated to central block 1412 and sensing loops (N2+1) to N.

[0217] Figure 21A Another exemplary weighting scheme is shown based on (i) the time progression of the base detection cycle number and (ii) the spatial location of the block. Figure 21A The block classification shown is similar to Figure 15 The block classification is shown below. For example, see [link to example]. Figure 15 And Figure 21, the surrounding channel block 1508 (which is Figure 15 The combination of the top peripheral channel block 1508a and the bottom peripheral channel block 1508b is shown as having diagonals within it, and the central channel block 1510 is shown as having dashed lines or gray shading.

[0218] Figure 21A Two boxes, 2110 and 2112, are also shown. Referring to box 2110, weight sets are shown specifically for peripheral channel block 1508 and various sensing cycle subsequences. For example, weight set (pl,(1-N1)) is dedicated to peripheral channel block 1508 and sensing cycles 1 to N1. Weight set (pl,(N1-N2)) is dedicated to peripheral channel block 1508 and sensing cycles (N1+1) to N2. Weight set (pl,(N2-N)) is dedicated to peripheral channel block 1508 and sensing cycles (N2+1) to N.

[0219] Similarly, referring to box 2112, weight sets are shown specifically for the central channel block 1510 and various sensing loop subsequences. For example, weight set (cl, (1-N1)) is dedicated to the central channel block 1510 and sensing loops 1 to N1. Weight set (cl, (N1-N2)) is dedicated to the central channel block 1510 and sensing loops (N1+1) to N2. Weight set (cl, (N2-N)) is dedicated to the central channel block 1510 and sensing loops (N2+1) to N.

[0220] In one implementation and as discussed above, each of the weight sets (pl,(1-N1)), (pl,(N1-N2)), (pl,(N2-N)), (cl,(1-N1)), (cl,(N1-N2)), and (cl,(N2-N)) includes the corresponding weights. For example, the weight set (pl,(1-N1)) includes a set for configuring the corresponding multiple spatial and temporal layers (e.g., see [link to relevant documentation]). Figure 7 and Figure 9The first set of weights (pl, (N1-N2)) includes a first set of weights, a second set of weights (pl, (N2-N)) includes a third set of weights (pl, (N1-N1)) includes a fourth set of weights (cl, (N1-N2)) includes a fifth set of weights (cl, (N2-N)) includes a sixth set of weights (cl, (N2-N)) includes a sixth set of weights (cl, (N2-N)) for configuring the corresponding multiple spatial and temporal layers.

[0221] At least one weight in the first set of weights differs from its corresponding weight in the second set of weights (in some examples, the two weight sets may have one or more common or identical weights). At least one weight in the second set of weights differs from its corresponding weight in the third set of weights, at least one weight in the third set of weights differs from its corresponding weight in the fourth set of weights, and so on. In one implementation, one or more weights in the various weight sets are quantized using different scaling factors.

[0222] Because the various weight sets are associated with corresponding sequencing cycles, in this example, the weights in the various weight sets correspond to various sequencing chemistry, sequencing configuration, and / or sequencing assays, respectively. For example, weight set (pl,(1-N1)), weight set (pl,(N1-N2)), and weight set (pl,(N2-N)) correspond to the first sequencing chemistry, the second sequencing chemistry, and the third sequencing chemistry, respectively (e.g., they are used during sequencing cycles 1 to N1, (N1+1) to N2, and (N2+1) to N, respectively). Weight set (pl,(1-N1)), weight set (pl,(N1-N2)), and weight set (pl,(N2-N)) correspond to the first sequencing assay, the second sequencing assay, and the third sequencing assay, respectively. Weight set (pl,(1-N1)), weight set (pl,(N1-N2)), and weight set (pl,(N2-N)) correspond to the first sequencing configuration, the second sequencing configuration, and the third sequencing configuration, respectively.

[0223] Figure 21B Another exemplary weighting scheme is shown based on (i) the time progression of the base detection cycle number and (ii) the spatial location of the block. Figure 21B The block classification shown is similar to Figure 16 The block classification is shown below. For example, see [link to example]. Figure 16 and Figure 21BThe circulation pool 1400 is divided into four segments: top left segment 1610TL, top center segment 1610TC, top right segment 1610TR, middle left segment 1610ML, center segment 1610C, middle right segment 1610MR, bottom left segment 1610BL, bottom center segment 1610BC, and bottom left segment 1610BL. Each block in the circulation pool 1400 is classified based on the segment to which it belongs.

[0224] Figure 21B Table 2150 is also shown, which includes blocks for various segments and various weights for various subsequences of sensing cycles 1 to N. For example, referring to the first row of Table 2150, the weight set (TL,(1-N1)) is dedicated to the blocks of the top left segment 1610TL and sensing cycles 1 to N1. The weight set (TL,(N1-N2)) is dedicated to the blocks of the top left segment 1610TL and sensing cycles (N1+1) to N2. The weight set (TL,(N2-N)) is dedicated to the blocks of the top left segment 1610TL and sensing cycles (N2+1) to N.

[0225] Similarly, referring to the second row of Table 2150, the weight set (TC,(1-N1)) is dedicated to the blocks and sensing cycles 1 to N1 of the top central segment 1610TC. The weight set (TC,(N1-N2)) is dedicated to the blocks and sensing cycles (N1+1) to N2 of the top central segment 1610TC. The weight set (TC,(N2-N)) is dedicated to the blocks and sensing cycles (N2+1) to N of the top central segment 1610TC. Similarly, the various other rows of Table 2150 include weight sets for blocks of various other segments and for various sensing cycle subsequences, and will be apparent to those skilled in the art based on the above discussion.

[0226] Figure 22 A specific implementation of base detection operation 2200 is shown, wherein a weight set for base detection is selected based on spatial block information and temporal sensing cycle subsequence information.

[0227] for Figure 22 The base detection operation is 2200, assuming the flow cell block is 1400 according to... Figure 15 and Figure 21A Examples are categorized. This type of block categorization is not intended to limit the scope of this disclosure, and the base detection operation 2200 can also be applied to any other type of block categorization, such as relative to... Figure 14 , Figure 16 , Figure 20 , Figure 21B Any block classification discussed and / or any other block classification conceived by those skilled in the art based on the teachings of this disclosure.

[0228] In addition, for Figure 22 The base detection operation 2200 assumes that N sensing cycles are divided into three cycle subsequences, including (a) cycles 1 to N1, (b) cycles (N1+1) to N2, and (c) cycles (N2+1) to N, as relative to Figures 18 to 21B The discussion continues. Similarly, such sensing cycle partitioning is not intended to limit the scope of this disclosure, and the base detection operation 2200 can also be applied to any other type of sensing cycle sub-partitioning that can be conceived by those skilled in the art based on the teachings of this disclosure.

[0229] exist Figure 22 In this configuration, base detection operations 1a to 6a are dedicated to the peripheral channel blocks and cycles 1 to N1. Similarly, base detection operations 1b to 6b are dedicated to the central channel blocks and cycles 1 to N1. Operations 1a to 6a and 1b to 6b can be repeated for cycles (N1+1) to N2, and can be further repeated for cycles (N2+1) to N, but such repetitions are... Figure 22 Not shown in detail. Based on the discussion of operations 1a to 6a and 1b to 6b for loops 1 to N1, those skilled in the art will understand that such repetitions for loops (N1+1) to N2, and further for loops (N2+1) to N.

[0230] At action 1a, data flow logic 451 (for example, see...) Figure 4 ) Receives cluster sensor data and weight sets (pl,(1-N1)) for peripheral channel blocks 1508 and for cycles 1 to N1 (see Figure 21A Cluster data includes sequencing images depicting the intensity emission of clusters within peripheral channel blocks 1508 during sequencing cycles 1 to N1 of the sequencing run, as described above. At action 2a, data flow logic 451 forwards the cluster data and weight set (pl, (1-N1)) for peripheral channel blocks 1508 and for cycles 1 to N1 to a configurable processor 450 (e.g., see [link to relevant documentation]). Figure 4 The neural network-based base detector 2308 (e.g., an example of which is in) performs this function. Figure 7 , Figure 9 , Figure 10 (As shown in the diagram). Cluster data and weight sets (pl, (1-N1)) for peripheral channel blocks 1508 and for loops 1 to N1 are loaded into the neural network-based base detector 2308. Furthermore, although in Figure 22 The topology of the neural network model is not shown, but it is also loaded from memory into the configurable processor 450 via data flow logic 451.

[0231] At action 3a, the configurable processor 450 configures the topology of the neural network running on the configurable processor 450 with a loaded weight set (pl,(1-N1)). The neural network-based base detector 2308, configured with the loaded weight set (pl,(1-N1)), generates representations (e.g., feature maps) from the cluster data based on the loaded weight set (pl,(1-N1)) (e.g., processing the cluster data through its configured spatial and temporal convolutional layers), and generates base detection classification data (e.g., base detection classification scores) for multiple clusters within the peripheral channel block 1508 and for sequencing cycles 1 to N1 based on the representations. For example, the neural network-based base detector 2308 applies the loaded weight set (pl,(1-N1)) to the cluster data to generate base detection classification data. In one embodiment, the base detection classification scores are not normalized; for example, they are not subjected to exponential normalization by the softmax function.

[0232] At action 4a, the configurable processor 450 sends base detection classification data for clusters within peripheral channel block 1508 and for cycles 1 to N1 to the data flow logic 451. At action 5a, the data flow logic 451 provides the host processor 2304 with base detection classification scores for clusters within peripheral channel block 1508 and for cycles 1 to N1.

[0233] At action 6a, the host processor 2304 normalizes the unnormalized base detection classification score (e.g., by applying the softmax function). Figure 7 Frame 740 or Figure 9 (in box 930), and generate chains within the cluster for the peripheral channel block 1508 and for the normalized base detection classification score for cycles 1 to N1, i.e., base detection.

[0234] Therefore, in operations 1a through 6a, using a weight set (pl,(1-N1)) specifically trained for peripheral channel blocks 1508 and for cycles 1 through N1, the system performs base detection on chains within clusters of peripheral channel blocks 1508 and for cycles 1 through N1. It should be noted that operations 1a through 6a depict a high-level and simplified version of the base detection operation and may not show one or more other operations that can be performed for base detection. Further details of the base detection operation can be found in U.S. Provisional Patent Application No. 63 / 072,032 (Attorney General’s File No. ILLM 1018-1 / IP-1860-PRV), filed August 28, 2020, entitled “DETECTING AND FILTERING CLUSTERS BASED ON ARTIFICIALINTELLIGENCE-PREDICTED BASE CALLS,” which is incorporated herein by reference as if fully set forth herein.

[0235] Operations 1a to 6a are dedicated to the detection of chains within clusters in peripheral channel block 1508 and for cycles 1 to N1. These operations are repeated as operations 1b to 6b, but for clusters within central channel block 1510 and for cycles 1 to N1. For example, at operation 1b, data stream logic 451 receives cluster data and weight sets (cl, (1-N1)) for central channel block 1510 and for cycles 1 to N1 (see...). Figure 21A The cluster data includes sequencing images depicting the intensity emission of clusters within the central channel block 1510 during sequencing cycles 1 to N1 of the sequencing run, as described above. At action 2b, the data flow logic 451 forwards the cluster data and weight set (cl, (1-N1)) for the central channel block 1508 and for cycles 1 to N1 to a neural network-based base detector 2308 executed by the configurable processor 450. The cluster data and weight set (cl, (1-N1)) for the central channel block 1510 and for cycles 1 to N1 are used to reconfigure the neural network-based base detector 2308.

[0236] At action 3b, a base detector 2308 based on a reconfigured neural network, running on the configurable processor 450, generates an initial representation (e.g., a feature map) from the cluster data (e.g., by processing the cluster data through its spatial and temporal convolutional layers), and produces base detection classification scores for multiple clusters within the central channel block 1510 and for sequencing cycles 1 to N1 based on the initial intermediate representation. In one specific implementation, the initial base detection classification scores are not normalized; for example, they are not subjected to exponential normalization by the softmax function.

[0237] At action 4b, the configurable processor 450 sends base detection classification scores for clusters within the central channel block 1510 and for cycles 1 to N1 to the data flow logic 451. At action 5b, the data flow logic 451 provides the host processor 2304 with the base detection classification scores for clusters within the central channel block 1510 and for cycles 1 to N1.

[0238] At action 6b, the host processor 2304 normalizes the unnormalized base detection classification score (e.g., by applying the softmax function) and generates normalized base detection classification scores for chains within the cluster of the central channel block 1510 and for loops 1 to N1, i.e., base detection.

[0239] Therefore, base detection operations 1a to 6a are dedicated to peripheral channel block 1508 and cycles 1 to N1. Similarly, base detection operations 1b to 6b are dedicated to central channel block 1510 and cycles 1 to N1. Operations 1a to 6a and 1b to 6b are repeated for cycles (N1+1) to N2, and further repeated for cycles (N2+1) to N, as follows. Figure 22 Symbolically shown.

[0240] See back Figure 7 The model shown includes isolated stacks 701, 702, 703, 704, and 705. Stack 701 receives block data from the patch of cycle K+2 as input. Stack 702 receives block data from the patch of cycle K+1 as input. Stack 703 receives block data from the patch of cycle K as input. Stack 704 receives block data from the patch of cycle K-1 as input. Stack 705 receives block data from the patch of cycle K-2 as input. Each layer of the isolated stacks performs a kernel convolution operation, which includes multiple filters on the layer's input data. The output feature set (intermediate data) from each stack 701 to 705 is provided as input to the inverse hierarchy 720 of the temporal combination layer, where intermediate data from multiple cycles are combined.

[0241] Therefore, as relative to Figure 7 , Figure 9 and Figure 11The stacks 701, ..., 705 discussed perform isolated spatial convolutions. There is no temporal mixing or interaction between the inputs from the various loops within the stacks 701, ..., 705. Finally, after data processing in the stacks 701, ..., 705, data processing from the various sequencing loops occurs in segment 720. The various layers within the stacks 701, ..., 705 are also referred to herein as spatial layers, and the kernel weights of the various filters within the stacks 701, ..., 705 are referred to herein as spatial weights. Similarly, the various layers within segment 720 are also referred to herein as temporal layers, and the kernel weights of the various filters within segment 720 are also referred to herein as temporal weights. For example, in... Figure 9 The weights applied during spatial convolutions 921, 922, and 923 are spatial weights, while... Figure 9 The weights applied during the temporal convolutions 924 and 925 are temporal weights.

[0242] Figure 23A The diagram shows various weight sets for blocks of different categories and for different sensing cycles, each weight set including a corresponding spatial weight and a corresponding temporal weight. Figure 23A The block classification shown is similar to that relative to Figure 15 and Figure 21A The block classifications discussed. For example, relative to... Figure 21A The peripheral channel blocks 1508 discussed here, used for loops 1 to N1, are associated with the corresponding weight set (pl, 1-N1). For example... Figure 23A As shown, the weight set (pl, 1-N1) includes the corresponding spatial weights (s-pl, (1-N1)) and the corresponding temporal weights (t-pl, (1-N1)). When the neural network model is used to process cluster sensor data for peripheral channel blocks 1508 in cycles 1 to N1, the spatial weights (s-pl, (1-N1)) are used to configure the spatial layer of the neural network model. When the neural network model is used to process cluster sensor data for peripheral channel blocks 1508 in cycles 1 to N1, the temporal weights (t-pl, (1-N1)) are used to configure the temporal layer of the neural network model.

[0243] Similarly, as in the same respect Figure 21A The peripheral channel block 1508 discussed here, used for looping N1 to N2, is associated with the corresponding weight set (pl, N1-N2). For example... Figure 23A As shown, the weight set (pl, N1-N2) includes the corresponding spatial weights (s-pl, (N1-N2)) and the corresponding temporal weights (t-pl, (N1-N2)). Figure 23A The various other weight sets also have corresponding spatial and temporal weights.

[0244] Figure 23BThe diagram shows various weight sets for blocks of different categories and for different cycles, where different weight sets for blocks of a particular category include common space weights and different time weights. Figure 23A The block classification shown is similar to that relative to Figure 15 , Figure 21A and Figure 23A The block classifications discussed. However, with Figure 23A The difference lies in Figure 23B In the context of the surrounding channel block 1508, the weight sets (pl,(1-N1)), (pl,(N1-N2)), and (pl,(N2-N)) have a common space weight (s-pl). Therefore, the same or common space weight (s-pl) is used for the surrounding channel block 1508 and for each of the cyclic subsequences 1 to N1, (N+1) to N2, and (N2+1) to N.

[0245] The weight sets (pl,(1-N1)), (pl,(N1-N2)) and (pl,(N2-N)) have different time weights, such as time weight (t-pl,(1-N1)), time weight (t-pl,(N1-N2)) and time weight (t-pl,(N2-N)).

[0246] Similarly, the weight sets (cl,(1-N1)), (cl,(N1-N2)), and (cl,(N2-N)) for the central channel block 1510 have common space weights (s-cl). Therefore, the same or common space weights (s-cl) are used for the central channel block 1510 and for each of the cyclic subsequences 1 to N1, (N+1) to N2, and (N2+1) to N.

[0247] The weight sets (cl,(1-N1)), (cl,(N1-N2)) and (cl,(N2-N)) have different time weights, such as time weight (t-cl,(1-N1)), time weight (t-cl,(N1-N2)) and time weight (t-cl,(N2-N)).

[0248] In one implementation and as relative to Figure 17A and Figure 17B The degradation of sensor data caused by fading, phasing, and / or pre-phase as the sequencing cycle progresses is discussed. This degradation is influenced by the temporal layers of the neural network model (such as...). Figure 7 The layers within frame 720 or Figure 9 This is solved in layers 924 and 925. Therefore, in Figure 23BIn this process, the time weights for various sequencing cycle subsequences are trained differently. For example, the time weights used for cycles 1 to N1 for a given block class are different from the time weights used for cycles N1 to N2 for the same block class. In contrast, because spatial layers (such as...) Figure 7 The layers within frames 701, ..., 705 or Figure 9 Layers 921, 922, and 923 may not significantly resolve signal quality degradation, as all loops share common space weights for a given block class, such as... Figure 23B As shown.

[0249] Therefore, when processing sensor data for a specific block category (e.g., for peripheral channel block 1508), the common spatial weights (s-pl) and temporal weights (t-pl,(1-N1)) of the weight set (pl,(1-N1)) for cycles 1 to N1 are initially loaded into the configurable processor, and the neural network-based base detector 2308 is configured with these spatial and temporal weights. For example, the spatial layer of the neural network-based base detector 2308 is configured with the common spatial weights (s-pl), and the temporal layer of the neural network-based base detector 2308 is configured with the temporal weights (t-pl,(1-N1)). The configured spatial and temporal layers are applied to the sensor data for cycles 1 to N1 of peripheral channel block 1508 based on the configured neural network-based base detector 2308 to generate base detection classification data for cycles 1 to N1 of peripheral channel block 1508.

[0250] Subsequently, before processing the sensor data for loop (N1+1), the temporal weights (t-pl,(N1-N2)) of the weight set (pl,(N1-N2)) are loaded without loading any corresponding spatial weights of that weight set. The temporal layer of the neural network-based base detector 2308 is configured with the temporal weights (t-pl,(N1-N2)). Then, the neural network-based base detector 2308 applies the previously configured spatial layer (e.g., previously configured with common spatial weights (s-pl)) and the reconfigured temporal layer (e.g., reconfigured with temporal weights (t-pl,(N1-N2))) to the sensor data for loop (N1+1) to N2 in the peripheral channel block 1508 to produce base detection classification data for loop (N1+1) to N2 in the peripheral channel block 1508.

[0251] Subsequently, before processing the sensor data for loop (N2+1), the temporal weights (t-pl,(N2-N)) of the weight set (pl,(N2-N)) are loaded without loading any corresponding spatial weights of that weight set. The temporal layer of the neural network-based base detector 2308 is reconfigured with the temporal weights (t-pl,(N2-N)). Then, the neural network-based base detector 2308 applies the previously configured spatial layer (e.g., previously configured with common spatial weights (s-pl)) and the reconfigured temporal layer (e.g., reconfigured with temporal weights (t-pl,(N2-N))) to the sensor data for loop (N2+1) to N of the peripheral channel blocks to produce base detection classification data for loop (N2+1) to N of the peripheral channel blocks.

[0252] To generate base detection classification data for other block categories (such as Central Channel Block 1510) in a similar manner, those skilled in the art will, based on the above discussion and... Figure 23B The illustrations illustrate a similar approach.

[0253] Figure 23C A system 2300 is illustrated that selects a weight set based on one or more sequencing run parameters 2382. For example, weight set selection logic 2386, which can be executed on a configurable processor 450 and / or a host processor 2304, is shown. The weight set selection logic 2386 receives one or more sequencing run parameters 2382 and, relative to... Figures 14 to 23B One or more other weight set selection criteria are discussed. The weight set selection logic 2386 is based on one or more sequencing run parameters 2382 and / or relative to... Figures 14 to 23B The discussion covers one or more other weight set selection criteria, selecting a weight set from multiple candidate weight sets 2384a, ..., 2384N. Figure 23B In the example, weight set selection logic 2386 selects weight set 2384b. The selected weight set is then loaded in configurable processor 450 and used to configure the neural network topology for base detection, as discussed herein.

[0254] One or more sequencing run parameters 2382 may include one or more appropriate parameters associated with the current sequencing run. For example, the reaction components used in the sequencing run (such as reagents, enzymes, samples, other biomolecules, and buffer solutions) can affect sensor data, and the weight set can be selected based on the type, parameters, or batch of reaction components used. For example, phasing characteristics (see...) Figure 17BThe weight set selection logic 2386 can be based on the reagent kit used for the sequencing run and can vary based on the type, lifetime, and / or batch of the reagent kit. Therefore, various candidate weight sets can be generated for reaction components of various batch types, and the weight set selection logic 2386 can select a weight set based on the reaction components used for the current sequencing cycle.

[0255] In another example, the weight set selection logic 2386 estimates phase characteristics and selects a weight set based on these characteristics. For example, different weight sets can be generated for different phase characteristics. Then, early in the sequencing run, phase parameters can be estimated and used to select a weight set. In yet another example, multiple candidate weight sets can be tried, and the weight set with the lowest error rate (or highest signal-to-noise ratio) can be selected for the entire sequencing run.

[0256] Figure 24 This is a block diagram of a specific implementation of a base detection system 2400. The base detection system 2400 is operable to obtain any information or data relating to at least one of a biological substance or a chemical substance. In some implementations, the base detection system 2400 is a workstation that may resemble a desktop device or a desktop computer. For example, most (or all) of the systems and components used to perform the desired reaction may be located within a common housing 2416.

[0257] In certain specific implementations, the base detection system 2400 is a nucleic acid sequencing system (or sequencer) configured for a variety of applications, including but not limited to de novo sequencing, resequencing of whole genomes or target genome regions, and metagenomics. The sequencer can also be used for DNA or RNA analysis. In some implementations, the base detection system 2400 can also be configured to generate reaction sites in a biosensor. For example, the base detection system 2400 can be configured to receive a sample and generate surface-attached clusters of clonal amplified nucleic acids derived from the sample. Each cluster can constitute a reaction site in the biosensor or be part of it.

[0258] An exemplary base detection system 2400 may include a system socket or interface 2412 configured to interact with a biosensor 2402 to perform a desired reaction within the biosensor 2402. (The following is in contrast to...) Figure 24 In the description, the biosensor 2402 is loaded into the system socket 2412. However, it should be understood that a cartridge including the biosensor 2402 can be inserted into the system socket 2412, and in some states, the cartridge can be temporarily or permanently removed. As mentioned above, among other things, the cartridge may also include fluid control components and fluid storage components.

[0259] In a particular implementation, the base detection system 2400 is configured to perform a large number of parallel reactions within a biosensor 2402. The biosensor 2402 includes one or more reaction sites where the desired reaction can occur. These reaction sites may be, for example, fixed to a solid surface of the biosensor or to a bead (or other movable substrate) located within a corresponding reaction chamber of the biosensor. The reaction sites may include, for example, clusters of cloned and amplified nucleic acids. The biosensor 2402 may include a solid-state imaging device (e.g., a CCD or CMOS imaging device) and a flow cell mounted thereon. The flow cell may include one or more flow channels that receive a solution from the base detection system 2400 and direct the solution to the reaction sites. Optionally, the biosensor 2402 may be configured to incorporate a thermal element for transferring heat energy into or out of the flow channels.

[0260] The base detection system 2400 may include various components, parts, and systems (or subsystems) that interact with each other to perform a predetermined method or assay protocol for biological or chemical analysis. For example, the base detection system 2400 includes a system controller 2404 that can communicate with the various components, parts, and subsystems of the base detection system 2400 and the biosensor 2402. For example, in addition to the system socket 2412, the base detection system 2400 may also include: a fluid control system 2406 for controlling the flow of fluids throughout the fluid network of the base detection system 2400 and the biosensor 2402; a fluid storage system 2408 configured to contain all fluids (e.g., gases or liquids) that can be used by the bioassay system; a temperature control system 2410 for regulating the temperature of the fluids in the fluid network, the fluid storage system 2408, and / or the biosensor 2402; and an illumination system 2409 configured to illuminate the biosensor 2402. As described above, if the cartridge with biosensor 2402 is loaded into the system socket 2412, the cartridge may also include fluid control components and fluid storage components.

[0261] As also shown in the figure, the base detection system 2400 may include a user interface 2414 for user interaction. For example, the user interface 2414 may include a display 2413 for displaying or requesting information from the user and a user input device 2415 for receiving user input. In some specific implementations, the display 2413 and the user input device 2415 are the same device. For example, the user interface 2414 may include a touch-sensitive display configured to detect the presence of an individual touch and also identify the location of the touch on the display. However, other user input devices 2415 may be used, such as a mouse, touchpad, keyboard, keypad, handheld scanner, voice recognition system, motion recognition system, etc. As will be discussed in more detail below, the base detection system 2400 may communicate with various components, including a biosensor 2402 (e.g., in the form of a cartridge), to perform a desired response. The base detection system 2400 may also be configured to analyze data obtained from the biosensor to provide the user with the desired information.

[0262] System controller 2404 may include any processor-based or microprocessor-based system, including those using microcontrollers, reduced instruction set computers (RISCs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), logic circuits, and any other circuitry or processor capable of performing the functions described herein. The examples above are merely illustrative and are therefore not intended to limit the definition and / or meaning of the term "system controller" in any way. In an exemplary specific implementation, system controller 2404 executes a set of instructions stored in one or more storage elements, memories, or modules to perform at least one of acquiring detection data and analyzing the detection data. Detection data may include multiple pixel signal sequences, such that a pixel signal sequence from each of millions of sensors (or pixels) can be detected within a plurality of base detection cycles. Storage elements may be in the form of information sources or physical memory elements within base detection system 2400.

[0263] The instruction set may include various commands instructing the base detection system 2400 or the biosensor 2402 to perform specific operations (such as the methods and processes of various specific embodiments described herein). The instruction set may be in the form of a software program that forms part of one or more tangible, non-transitory computer-readable media. As used herein, the terms “software” and “firmware” are interchangeable and include any computer program stored in memory for execution by a computer, including RAM memory, ROM memory, EPROM memory, EEPROM memory, and non-volatile RAM (NVRAM) memory. The above memory types are merely exemplary and therefore do not limit the types of memory that can be used to store computer programs.

[0264] Software can take various forms, such as system software or application software. Furthermore, software can be a collection of independent programs, or a program module or part of a program module within a larger program. Software can also include modular programming in the form of object-oriented programming. After obtaining the detection data, the detection data can be processed automatically by the base detection system 2400 in response to user input, or in response to a request from another processing machine (e.g., a remote request via a communication link). In the illustrated specific implementation, the system controller 2404 includes an analysis module 2538 (in... Figure 25 (As shown in the diagram). In other implementations, the system controller 2404 does not include the analytics module 2538, but can access the analytics module 2538 (e.g., the analytics module 2538 may be hosted separately in the cloud).

[0265] System controller 2404 can be connected via a communication link to biosensor 2402 and other components of base detection system 2400. System controller 2404 can also be communicatively connected to off-site systems or servers. The communication link can be hardwired, wired, or wireless. System controller 2404 can receive user input or commands from user interface 2414 and user input device 2415.

[0266] The fluid control system 2406 includes a fluid network and is configured to guide and regulate the flow of one or more fluids through the fluid network. The fluid network may be in fluid communication with a biosensor 2402 and a fluid storage system 2408. For example, selected fluid may be drawn from the fluid storage system 2408 and guided in a controlled manner to the biosensor 2402, or fluid may be drawn from the biosensor 2402 and directed toward, for example, a waste reservoir in the fluid storage system 2408. Although not shown, the fluid control system 2406 may include a flow sensor that detects the velocity or pressure of the fluid within the fluid network. The sensor may communicate with a system controller 2404.

[0267] Temperature control system 2410 is configured to regulate the temperature of fluids at different regions of the fluid network, fluid storage system 2408, and / or biosensor 2402. For example, temperature control system 2410 may include a thermal circulator that interfaces with biosensor 2402 and controls the temperature of fluid flowing along reaction sites in biosensor 2402. Temperature control system 2410 may also regulate the temperature of solid elements or components of base detection system 2400 or biosensor 2402. Although not shown, temperature control system 2410 may include sensors for detecting the temperature of fluids or other components. The sensors may communicate with system controller 2404.

[0268] The fluid storage system 2408 is in fluid communication with the biosensor 2402 and can store various reaction components or reactants for carrying out the desired reaction therein. The fluid storage system 2408 can also store fluids for washing or cleaning the fluid network and biosensor 2402, as well as for diluting reactants. For example, the fluid storage system 2408 may include various reservoirs for storing samples, reagents, enzymes, other biomolecules, buffer solutions, aqueous solutions, and nonpolar solutions, etc. Furthermore, the fluid storage system 2408 may include a waste reservoir for receiving waste from the biosensor 2402. 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. Therefore, one or more components relating to those systems described herein may be housed within a cartridge housing. For example, the cartridge may have various reservoirs for storing samples, reagents, enzymes, other biomolecules, buffer solutions, aqueous solutions, and nonpolar solutions, waste, etc. Therefore, one or more of the fluid storage system, fluid control system, or temperature control system may be removably coupled to the bioassay system via the cartridge or other biosensor.

[0269] The illumination system 2409 may include a light source (e.g., one or more LEDs) and multiple optical components for illuminating the biosensor. Examples of light sources may include lasers, arc lamps, LEDs, or laser diodes. Optical components may be, for example, reflectors, dichroic mirrors, beam splitters, collimators, lenses, filters, wedge mirrors, prisms, mirrors, detectors, etc. In a specific embodiment using the illumination system, the illumination system 2409 may be configured to direct excitation light to the reaction site. As an example, the fluorophore may be excited by light of a green wavelength, thus the wavelength of the excitation light may be approximately 532 nm. In one embodiment, the illumination system 2409 is configured to produce illumination parallel to the surface normal of the surface of the biosensor 2402. In another embodiment, the illumination system 2409 is configured to produce illumination at an angle relative to the surface normal of the surface of the biosensor 2402. In yet another embodiment, the illumination system 2409 is configured to produce illumination with multiple angles, including some parallel illumination and some angled illumination.

[0270] System socket or interface 2412 is configured to engage biosensor 2402 in at least one of mechanical, electrical, and fluidic methods. System socket 2412 can hold biosensor 2402 in a desired orientation to facilitate fluid flow through biosensor 2402. System socket 2412 may also include electrical contacts configured to engage biosensor 2402, enabling base detection system 2400 to communicate with and / or power biosensor 2402. Furthermore, system socket 2412 may include a fluid port (e.g., a nozzle) configured to engage biosensor 2402. In some embodiments, biosensor 2402 is removably coupled to system socket 2412 in mechanical, electrical, and fluidic methods.

[0271] Furthermore, the base detection system 2400 can communicate remotely with other systems or networks or with other bioassay systems 2400. Detection data obtained by the bioassay system 2400 can be stored in a remote database.

[0272] Figure 25 It is possible Figure 24 The block diagram of the system controller 2404 used in the system is shown below. In one specific implementation, the system controller 2404 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 a sub-algorithm for performing a particular process. The system controller 2404 is conceptually shown as a collection of modules, but can be implemented using any combination of dedicated hardware boards, DSPs, processors, etc. Alternatively, the system controller 2404 can be implemented using an off-the-shelf PC with a single processor or multiple processors, where functional operations are distributed among the processors. As a further alternative, the modules described below can be implemented using a hybrid configuration, where some modular functions are executed using dedicated hardware, while other modular functions are executed using an off-the-shelf PC, etc. Modules can also be implemented as software modules within a processing unit.

[0273] During operation, communication port 2520 can communicate with biosensor 2402 ( Figure 24 ) and / or subsystems 2406, 2408, 2410 ( Figure 24 It can transmit information (e.g., commands) or receive information (e.g., data) from or from the user interface 2414. In a specific implementation, communication port 2520 can output multiple pixel signal sequences. Communication port 2520 can be accessed from user interface 2414. Figure 24The system receives user input and transmits data or information to the user interface 2414. Data from the biosensor 2402 or subsystems 2406, 2408, 2410 can be processed in real time by the system controller 2404 during a bioassay session. Alternatively, data can be temporarily stored in the system memory during a bioassay session and processed at a slower rate than in real-time or offline operation.

[0274] like Figure 25 As shown, the system controller 2404 may include multiple modules 2531 to 2539 that communicate with the main control module 2530. The main control module 2530 may communicate with the user interface 2414. Figure 24 Communication. Although modules 2531 to 2539 are shown communicating directly with the main control module 2530, modules 2531 to 2539 can also communicate directly with each other, and directly with the user interface 2414 and the biosensor 2402. Additionally, modules 2531 to 2539 can communicate with the main control module 2530 through other modules.

[0275] Multiple modules 2531 to 2539 include system modules 2531 to 2533, 2539 that communicate with subsystems 2406, 2408, 2410, and 2409, respectively. Fluid control module 2531 can communicate with fluid control system 2406 to control valves and flow sensors in the fluid network, thereby controlling the flow of one or more fluids through the fluid network. Fluid storage module 2532 can notify the user when the fluid volume is low or when the waste storage tank is at or near its capacity. Fluid storage module 2532 can also communicate with temperature control module 2533 to allow fluid to be stored at a desired temperature. Illumination module 2539 can communicate with illumination system 2409 to illuminate the reaction site at a specified time during the protocol, such as after a desired reaction (e.g., a binding event) has occurred. In some embodiments, illumination module 2539 can communicate with illumination system 2409 to illuminate the reaction site at a specified angle.

[0276] Multiple modules 2531 to 2539 may further include a device module 2534 that communicates with the biosensor 2402 and an identification module 2535 that determines identification information associated with the biosensor 2402. The device module 2534 may, for example, communicate with the system socket 2412 to confirm that the biosensor has established an electrical and fluid connection with the base detection system 2400. The identification module 2535 may receive signals that identify the biosensor 2402. The identification module 2535 may use the identity of the biosensor 2402 to provide additional information to the user. For example, the identification module 2535 may determine and subsequently display a batch number, manufacturing date, or suggested protocols for operation with the biosensor 2402.

[0277] Multiple modules 2531 to 2539 also include an analysis module 2538 (also referred to as a signal processing module or signal processor) for receiving and analyzing signal data (e.g., image data) from biosensor 2402. Analysis module 2538 includes memory (e.g., RAM or flash memory) for storing detection data. Detection data may include multiple pixel signal sequences, enabling the detection of pixel signal sequences from each of millions of sensors (or pixels) within numerous base detection cycles. Signal data may be stored for subsequent analysis or may be transmitted to user interface 2414 to display desired information to the user. In some implementations, signal data may be processed by a solid-state imaging device (e.g., a CMOS image sensor) before being received by analysis module 2538.

[0278] Analysis module 2538 is configured to acquire image data from a photodetector at each sequencing cycle of multiple sequencing cycles. The image data originates from the emission signal detected by the photodetector and is processed by a neural network (e.g., a neural network-based template generator 2548, a neural network-based base detector 2558 (e.g., see...). Figure 7 , Figure 9 and Figure 10 (and / or a neural network-based quality scorer 2568) processes image data for each of the multiple sequencing cycles and generates base detections for at least some of the analytes at each of the multiple sequencing cycles.

[0279] Protocol modules 2536 and 2537 communicate with main control module 2530 to control the operation of subsystems 2406, 2408, and 2410 during a predetermined assay protocol. Protocol modules 2536 and 2537 may include a set of instructions for instructing base detection system 2400 to perform specific operations according to a predetermined protocol. As shown, the protocol module may be sequencing-by-synthesis (SBS) module 2536, configured to issue various commands for performing the 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) or ligation (e.g., catalyzed by a ligase). In a specific polymerase-based SBS implementation, fluorescently labeled nucleotides are added to primers in a template-dependent manner (causing primer extension), such that detection of the sequence and type of nucleotides added to the primers can be used to determine the sequence of the template. For example, to initiate a first SBS cycle, a command can be issued to deliver one or more labeled nucleotides, DNA polymerase, etc., to / through a flow cell containing an array of nucleic acid templates. The nucleic acid templates may be located at corresponding reaction sites. Those reaction sites where primer extension results in the incorporation of labeled nucleotides can be detected by an imaging event. During the imaging event, illumination system 2409 can provide excitation light to the reaction sites. Optionally, the nucleotides may also include a reversible termination property that terminates further primer extension once the nucleotide is added to the primer. For example, a nucleotide analog with a reversible termination moiety can be added to the primer, such that subsequent extension does not occur until a deblocking agent is delivered to remove that moiety. Thus, in a specific implementation using reversible termination, a command can be issued to deliver a deblocking agent to the flow cell (before or after detection). One or more commands can be issued to perform washing between the various delivery steps. This cycle can then be repeated n times to extend the primer by n nucleotides, thereby detecting a sequence of length n. Exemplary sequencing techniques are described in, for example, Bentley et al., Nature 456:53-59 (2008), WO04 / 018497, US 7,057,026, WO 91 / 06678, WO 07 / 123744, US 7,329,492, US 7,211,414, US 7,315,019, and US 7,405,281, each of which is incorporated herein by reference.

[0280] For the nucleotide delivery step in the SBS cycle, a single type of nucleotide can be delivered at once, or multiple different nucleotide types (e.g., A, C, T, and G together) can be delivered. For nucleotide delivery configurations where only a single type of nucleotide is present at a time, the different nucleotides do not need to have different labels, as they can be distinguished based on the inherent time intervals in individualized delivery. Therefore, sequencing methods or apparatus can use monochromatic detection. For example, the excitation source only needs to provide excitation at a single wavelength or within a single wavelength range. For nucleotide delivery configurations where delivery results in the simultaneous presence of multiple different nucleotides in the flow cell, the sites incorporating different nucleotide types can be distinguished based on different fluorescent labels attached to the corresponding nucleotide types in the mixture. For example, four different nucleotides, each with one of four different fluorophores, can be used. In one specific implementation, excitation in four different regions of the spectrum can be used to distinguish the four different fluorophores. For example, four different excitation radiation sources can be used. Alternatively, fewer than four different excitation sources can be used, but optical filtering of excitation radiation from a single source can be used to generate different ranges of excitation radiation at the flow cell.

[0281] In some specific implementations, fewer than four different colors can be detected in a mixture containing four different nucleotides. For example, nucleotide pairs can be detected at the same wavelength, but distinguished based on the intensity difference of one member relative to the other, or based on a change in the presence or absence of a signal in one member that results in a signal that is significantly different from the signal of the other member of that pair (e.g., by chemical modification, photochemical modification, or physical modification). Exemplary apparatuses and methods for distinguishing four different nucleotides using detection with fewer than four colors are described, for example, in U.S. Patent Application Serial Nos. 61 / 538,294 and 61 / 619,878, which are incorporated herein by reference in their entirety. U.S. Application 13 / 624,200, filed September 21, 2012, is also incorporated herein by reference in its entirety.

[0282] Multiple protocol modules may also include a sample preparation (or generation) module 2537, configured to command a fluid control system 2406 and a temperature control system 2410 to amplify the product within the biosensor 2402. For example, the biosensor 2402 may be coupled to a base detection system 2400. The amplification module 2537 may instruct the fluid control system 2406 to deliver necessary amplification components to the reaction chamber within the biosensor 2402. In other embodiments, the reaction site may already contain components for amplification, such as template DNA and / or primers. After the amplification components are delivered to the reaction chamber, the amplification module 2537 may instruct the temperature control system 2410 to cycle through different temperature phases according to a known amplification protocol. In some embodiments, amplification and / or nucleotide incorporation are performed isothermally.

[0283] The SBS module 2536 can issue commands to perform bridged PCR, in which clusters of cloned amplicones are formed on localized regions within the channels of the flow cell. After amplicon generation via bridged PCR, the amplicones can be "linearized" to prepare single-stranded template DNA or sstDNA, and sequencing primers can be hybridized to universal sequences side-linked to regions of interest. For example, sequencing-by-synthesis methods based on reversible terminators can be used as described above or as follows.

[0284] Each base detection or sequencing cycle can be performed by extending sstDNA with a single base, which can be accomplished, for example, by using a modified DNA polymerase and a mixture of four types of nucleotides. The different types of nucleotides can have unique fluorescent labels, and each nucleotide can also have a reversible terminator that allows only single-base incorporation to occur in each cycle. After adding a single base to the sstDNA, excitation light can be incident on the reaction site and fluorescence emission can be detected. After detection, the fluorescent label and terminator can be chemically cleaved from the sstDNA. This can then be followed by another similar base detection or sequencing cycle. In such sequencing protocols, the SBS module 2536 can instruct the fluid control system 2406 to guide the flow of reagents and enzyme solutions through the biosensor 2402. Exemplary SBS methods based on reversible terminators that can be used with the apparatus and methods described herein are described in U.S. Patent Application Publication 2007 / 0166705 A1, U.S. Patent Application Publication 2006 / 0188901 A1, U.S. Patent 7,057,026, U.S. Patent Application Publication 2006 / 0240439 A1, U.S. Patent Application Publication 2006 / 02814714709 A1, PCT Publication WO 05 / 065814, and PCT Publication WO 06 / 064199, each of which is incorporated herein by reference in its entirety. Exemplary reagents for SBS based on reversible terminators are described in U.S. 7,541,444, U.S. 7,057,026, U.S. 7,427,673, U.S. 7,566,537, and U.S. 7,592,435, each of which is incorporated herein by reference in its entirety.

[0285] In some implementations, the amplification module and the SBS module can operate in a single assay protocol, where, for example, template nucleic acids are amplified and subsequently sequenced within the same kit.

[0286] The base detection system 2400 can also allow the user to reconfigure the assay protocol. For example, the base detection system 2400 can provide the user with options for modifying the determined protocol via the user interface 2414. For example, if it is determined that the biosensor 2402 will be used for amplification, the base detection system 2400 can request the temperature of the annealing cycle. Furthermore, if the user has provided user input that is generally unacceptable for the selected assay protocol, the base detection system 2400 can issue a warning to the user.

[0287] In a specific implementation, the biosensor 2402 comprises millions of sensors (or pixels), each sensor (or pixel) generating multiple pixel signal sequences in a subsequent base detection cycle. The analysis module 2538 detects the multiple pixel signal sequences based on the row-by-row and / or column-by-column positions of the sensors on the sensor array and assigns them to the corresponding sensors (or pixels).

[0288] Each sensor in the sensor array can generate sensor data for a block of the flow cell, where the block is located in a region on the flow cell where clusters of genetic material are set during the base detection operation. The sensor data may include image data from a pixel array. For a given cycle, the sensor data may include more than one image, thus producing multi-feature per pixel as block data.

[0289] Figure 26 This is a simplified block diagram of a computer system 2600 that can be used to implement the disclosed techniques. The computer system 2600 includes at least one central processing unit (CPU) 2672 that communicates with a plurality of peripheral devices via a bus subsystem 2655. These peripheral devices may include a storage subsystem 2610, which includes, for example, memory devices and a file storage subsystem 2636, a user interface input device 2638, a user interface output device 2676, and a network interface subsystem 2674. The input and output devices allow users to interact with the computer system 2600. The network interface subsystem 2674 provides an interface to an external network, including interfaces to corresponding interface devices in other computer systems.

[0290] User interface input device 2638 may include: a keyboard; pointing devices such as a mouse, trackball, touchpad, or graphics tablet; a scanner; a touchscreen integrated into a display; audio input devices such as a speech recognition system and a microphone; and other types of input devices. Generally, the term "input device" is intended to encompass all possible types of devices and methods for inputting information into computer system 2600.

[0291] User interface output device 2676 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 an LED display, a cathode ray tube (CRT), a flat panel device such as a liquid crystal display (LCD), a projection device, or other mechanisms for producing visible images. The display subsystem may also provide non-visual displays, such as audio output devices. Generally, the term "output device" is intended to encompass all possible types of devices and methods for outputting information from computer system 2600 to a user or to another machine or computer system.

[0292] The storage subsystem 2610 stores the programming and data structures that provide the functionality of some or all of the modules and methods described herein. These software modules are typically executed by the deep learning processor 2678.

[0293] In one specific implementation, the neural network is implemented using a deep learning processor 2678, which can be a configurable and reconfigurable processor, a field-programmable gate array (FPGA), an application-specific integrated circuit (ASIC), and / or a coarse-grained reconfigurable architecture (CGRA) and a graphics processing unit (GPU), or other configured devices. The deep learning processor 2678 can be powered by a deep learning cloud platform such as Google Cloud Platform. TM Xilinx TM and Cirrascale TM Hosted. Examples of deep learning processors include Google's Tensor Processing Unit (TPU). TM Rackmount solutions (such as GX4 Rackmount Series) TM GX149 Rackmount Series TM NVIDIA DGX-1 TM Microsoft's Stratix V FPGA TM , Graphcore’s Intelligent Processor Unit (IPU) TM Qualcomm's Snapdragon processors TM Zeroth Platform TM NVIDIA's Volta TM NVIDIA's DRIVE PX TM , NVIDIA's JETSON TX1 / TX2 MODULE TM Intel's Nirvana TMMovidius VPU TM ,Fujitsu DPI TM ARM's DynamicIQ TM IBM TrueNorth TM wait.

[0294] The memory subsystem 2622 used in the storage subsystem 2610 may include multiple memories, including a main random access memory (RAM) 2634 for storing instructions and data during program execution and a read-only memory (ROM) 2632 for storing fixed instructions. The file storage subsystem 2636 can provide persistent storage for program files and data files and may include hard disk drives, floppy disk drives, and associated removable media, CD-ROM drives, optical disk drives, or removable media enclosures. Modules implementing certain specific functionalities may be stored by the file storage subsystem 2636 within the storage subsystem 2610 or on other machines accessible to the processor.

[0295] Bus subsystem 2655 provides mechanisms for enabling various components and subsystems of computer system 2600 to communicate with each other as intended. Although bus subsystem 2655 is schematically shown as a single bus, alternative implementations of the bus subsystem may use multiple buses.

[0296] The computer system 2600 itself can be of different types, including personal computers, portable computers, workstations, computer terminals, network computers, televisions, mainframes, server clusters, a loosely networked group of widely distributed computers, or any other data processing system or user equipment. Due to the constantly evolving nature of computers and networks, [the following applies]. Figure 26 The description of the computer system 2600 depicted herein is intended only as a specific example to illustrate a preferred embodiment of the invention. Many other configurations of the computer system 2600 are possible, which have... Figure 26 The computer system depicted in the text has more or fewer components.

Claims

1. An apparatus for generating base detection classification data, the apparatus comprising: Host processor; Memory, accessible by the host processor, stores: The topology of neural networks, A first weight set, a second weight set, and a third weight set are used to configure the topology to perform a base detection operation with a series of sensing cycles. The first weight set, the second weight set, and the third weight set are different weight sets based on signal intensity changes during the time progression of the sensing cycle series, and are obtained by training with sensor data generated only during: i) a first sensing cycle subsequence with a first cycle number range; ii) a second sensing cycle subsequence with a second cycle number range following the first cycle number range; or iii) a third sensing cycle subsequence with a third cycle number range following the second cycle number range. The first sensor data, the second sensor data, and the third sensor data respectively correspond to the first sensing cycle subsequence, the second sensing cycle subsequence, and the third sensing cycle subsequence; and A configurable processor, which can access the memory and is configured with data flow logic to: The topology is loaded onto the processing element of the configurable processor. The first sensor data is loaded onto the processing element, the first weight set is loaded onto the processing element to configure the topology with the weights in the first weight set, and the neural network applies the weights in the first weight set to the first sensor data to generate first base detection classification data for sensing cycles in the first sensing cycle subsequence. The second sensor data is loaded onto the processing element, the second weight set is loaded onto the processing element to configure the topology with the weights in the second weight set, and the neural network applies the weights in the second weight set to the second sensor data to generate second base detection classification data for sensing cycles in the second sensing cycle subsequence. The third sensor data is loaded onto the processing element, the third weight set is loaded onto the processing element to configure the topology with the weights in the third weight set, and the neural network applies the weights in the third weight set to the third sensor data to generate third base detection classification data for sensing cycles in the third sensing cycle subsequence.

2. The device according to claim 1, wherein the memory further stores: A fourth weight set, a fifth weight set, and a subsequent weight set are used to configure the topology to perform base detection operations, wherein the fourth weight set, the fifth weight set, and the subsequent weight set correspond to the fourth sensing cycle subsequence, the fifth sensing cycle subsequence, and the subsequent sensing cycle subsequence, respectively, in the series of sensing cycles; and The fourth sensor data, fifth sensor data, and subsequent sensor data used in the fourth sensing cycle subsequence, the fifth sensing cycle subsequence, and the subsequent sensing cycle subsequence.

3. The device according to claim 2, wherein the configurable processor is configured with data flow logic to: The fourth sensor data is loaded onto the processing element, the fourth weight set is loaded onto the processing element to configure the topology with the weights in the fourth weight set, and the neural network applies the weights in the fourth weight set to the fourth sensor data to generate fourth base detection classification data for sensing cycles in the fourth sensing cycle subsequence. The fifth sensor data is loaded onto the processing element, the fifth weight set is loaded onto the processing element to configure the topology with the weights in the fifth weight set, and the neural network applies the weights in the fifth weight set to the fifth sensor data to generate fifth base detection classification data for sensing cycles in the fifth sensing cycle subsequence. as well as The subsequent sensor data and the subsequent weight set are loaded onto the processing element to configure the topology with the weights in the subsequent weight set, and the neural network applies the weights in the subsequent weight set to the subsequent sensor data to generate subsequent base detection classification data for sensing cycles in the subsequent sensing cycle subsequence.

4. The device of claim 1 or 2, wherein the topology takes sensor data from a continuous sensing cycle as input, and the topology includes a spatial layer and a temporal layer, wherein the spatial layer does not combine the sensor data and the resulting feature map between the continuous sensing cycles, and the temporal layer combines the resulting feature map between the continuous sensing cycles.

5. The device of claim 4, wherein the first weight set includes a first spatial weight for the spatial layer and a first temporal weight for the temporal layer, the second weight set includes a second spatial weight for the spatial layer and a second temporal weight for the temporal layer, and the third weight set includes a third spatial weight for the spatial layer and a third temporal weight for the temporal layer.

6. The device of claim 4, wherein the first weight set includes spatial weights for the spatial layer and a first temporal weight for the temporal layer, the second weight set includes a second temporal weight for the temporal layer, and the third weight set includes a third temporal weight for the temporal layer, and wherein the configurable processor is configured with data flow logic to: The first sensor data is loaded onto the processing element, the spatial weight and the first temporal weight are loaded onto the processing element to configure the spatial layer with the spatial weight and the temporal layer with the first temporal weight, and the neural network is made to apply the configured spatial layer and the configured temporal layer to the first sensor data to generate first base detection classification data for sensing cycles in the first sensing cycle subsequence; The second sensor data is loaded onto the processing element, the second time weight is loaded onto the processing element to reconfigure the time layer with the weight in the second time weight without reconfiguring the spatial layer, and the neural network applies the reconfigured time layer and the configured spatial layer to the second sensor data to generate second base detection classification data for sensing cycles in the second sensing cycle subsequence; as well as The third sensor data is loaded onto the processing element, the third time weights are loaded onto the processing element to reconfigure the time layer with the weights in the third time weights without reconfiguring the spatial layer, and the neural network applies the reconfigured time layer and the configured spatial layer to the third sensor data to generate third base detection classification data for sensing cycles in the third sensing cycle subsequence.

7. The device according to claim 1 or 2, wherein the weights in the first weight set, the second weight set, and the third weight set are quantized using different scaling factors.

8. The device according to claim 1 or 2, wherein the weights in the first weight set, the second weight set, and the third weight set correspond to the first sequencing chemistry, the second sequencing chemistry, and the third sequencing chemistry, respectively.

9. The device according to claim 1 or 2, wherein the weights in the first weight set, the second weight set, and the third weight set correspond to the first sequencing assay, the second sequencing assay, and the third sequencing assay, respectively.

10. The device according to claim 1 or 2, wherein the weights in the first weight set, the second weight set, and the third weight set correspond to the first sequencing configuration, the second sequencing configuration, and the third sequencing configuration, respectively.

11. A computer-implemented method for generating base detection classification data, the method comprising: A neural network topology is loaded onto the processing element of a processor, the processor being used to perform a base detection operation; A first weight set, a second weight set, and a third weight set are stored for configuring the topology to perform a base detection operation with a series of sensing cycles, wherein the first weight set, the second weight set, and the third weight set are different weight sets based on signal intensity changes during the time progression of the sensing cycle series, and are obtained by training with sensor data generated only during: i) a first sensing cycle subsequence with a first cycle number range, ii) a second sensing cycle subsequence with a second cycle number range following the first cycle number range, or iii) a third sensing cycle subsequence with a third cycle number range following the second cycle number range; The system stores first sensor data, second sensor data, and third sensor data corresponding to the first sensing cycle subsequence, the second sensing cycle subsequence, and the third sensing cycle subsequence, respectively. The topology of the neural network is configured using the first weight set, and the neural network configured with the first weight set processes the first sensor data and generates first base detection classification data for sensing cycles in the first sensing cycle subsequence. The topology of the neural network is configured using the second weight set, and the neural network configured with the second weight set processes the second sensor data and generates second base detection classification data for sensing cycles in the second sensing cycle subsequence. The topology of the neural network is configured with the third weight set, and the neural network configured with the third weight set processes the third sensor data and generates third base detection classification data for the sensing cycle in the third sensing cycle subsequence.

12. The computer-implemented method according to claim 11, further comprising: The system stores a fourth weight set, a fifth weight set, and a subsequent weight set for configuring the topology to perform base detection operations. The fourth weight set, the fifth weight set, and the subsequent weight set correspond to the fourth sensing cycle subsequence, the fifth sensing cycle subsequence, and the subsequent sensing cycle subsequence, respectively, in the series of sensing cycles. and The fourth sensor data, fifth sensor data, and subsequent sensor data are stored for the fourth sensing cycle subsequence, the fifth sensing cycle subsequence, and the subsequent sensing cycle subsequence.

13. The computer-implemented method according to claim 12, further comprising: The fourth sensor data is loaded onto the processing element, the fourth weight set is loaded onto the processing element to configure the topology with the weights in the fourth weight set, and the neural network applies the weights in the fourth weight set to the fourth sensor data to generate fourth base detection classification data for sensing cycles in the fourth sensing cycle subsequence. The fifth sensor data is loaded onto the processing element, the fifth weight set is loaded onto the processing element to configure the topology with the weights in the fifth weight set, and the neural network applies the weights in the fifth weight set to the fifth sensor data to generate fifth base detection classification data for sensing cycles in the fifth sensing cycle subsequence. as well as The subsequent sensor data and the subsequent weight set are loaded onto the processing element to configure the topology with the weights in the subsequent weight set, and the neural network applies the weights in the subsequent weight set to the subsequent sensor data to generate subsequent base detection classification data for sensing cycles in the subsequent sensing cycle subsequence.

14. The computer-implemented method of claim 11 or 12, wherein the topology takes sensor data from a continuous sensing cycle as input, and the topology includes a spatial layer and a temporal layer, wherein the spatial layer does not combine the sensor data and the resulting feature map between the continuous sensing cycles, and the temporal layer combines the resulting feature map between the continuous sensing cycles.

15. The computer-implemented method of claim 14, wherein the first weight set includes a first spatial weight for the spatial layer and a first temporal weight for the temporal layer, the second weight set includes a second spatial weight for the spatial layer and a second temporal weight for the temporal layer, and the third weight set includes a third spatial weight for the spatial layer and a third temporal weight for the temporal layer.

16. A non-transitory computer-readable storage medium storing instructions, which, when executed by at least one processor, cause the system to: A neural network topology is loaded onto the processing element of a processor, the processor being used to perform a base detection operation; A first weight set, a second weight set, and a third weight set are stored for configuring the topology to perform a base detection operation with a series of sensing cycles, wherein the first weight set, the second weight set, and the third weight set are different weight sets based on signal intensity changes during the time progression of the sensing cycle series, and are obtained by training with sensor data generated only during: i) a first sensing cycle subsequence with a first cycle number range, ii) a second sensing cycle subsequence with a second cycle number range following the first cycle number range, and iii) a third sensing cycle subsequence with a third cycle number range following the second cycle number range; The system stores first sensor data, second sensor data, and third sensor data corresponding to the first sensing cycle subsequence, the second sensing cycle subsequence, and the third sensing cycle subsequence, respectively. The topology of the neural network is configured using the first weight set, and the neural network configured with the first weight set processes the first sensor data and generates first base detection classification data for sensing cycles in the first sensing cycle subsequence. The topology of the neural network is configured using the second weight set, and the neural network configured with the second weight set processes the second sensor data and generates second base detection classification data for sensing cycles in the second sensing cycle subsequence. The topology of the neural network is configured with the third weight set, and the neural network configured with the third weight set processes the third sensor data and generates third base detection classification data for the sensing cycle in the third sensing cycle subsequence.

17. The non-transitory computer-readable storage medium of claim 16, wherein the first weight set, the second weight set, and the third weight set are quantized using different scaling factors.

18. The non-transitory computer-readable storage medium according to claim 16 or 17, wherein the weights in the first weight set, the second weight set, and the third weight set correspond to the first sequencing chemistry, the second sequencing chemistry, and the third sequencing chemistry, respectively.

19. The non-transitory computer-readable storage medium according to claim 16 or 17, wherein the weights in the first weight set, the second weight set, and the third weight set correspond to the first sequencing assay, the second sequencing assay, and the third sequencing assay, respectively.

20. The non-transitory computer-readable storage medium according to claim 16 or 17, wherein the weights in the first weight set, the second weight set, and the third weight set correspond to the first sequencing configuration, the second sequencing configuration, and the third sequencing configuration, respectively.

Citation Information

Patent Citations

  • Artificial intelligence-based generation of sequencing metadata

    US11210554B2

  • Training data generation for artificial intelligence-based sequencing

    US11347965B2

  • Systems and devices for characterization and performance analysis of pixel-based sequencing

    US11423306B2

  • Artificial intelligence-based quality scoring

    US11676685B2

  • Method of nucleic acid sequencing

    US20020055100A1