A portion of the disclosure of this patent document contains material that is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document, as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.
The present disclosure relates generally to systems and methods for visualization. More particularly, the present disclosure relates to systems and methods for genome analysis and visualization that can provide improved features, and uses.
The 2019 novel Coronavirus (SARS-CoV-2) caused an outbreak of viral pneumonia since late 2019 and has become a global pandemic. Despite efforts to contain its spread, SARS-CoV-2 has infected millions of patients and more than 800,000 deaths worldwide as of late August. To understand its evolution and genetics, scientists have sequenced SARS-CoV-2 genomes from patients across different age groups, genders, ethnicities, locations, and disease stages. These genomic sequences are being shared on public repositories at a rapid pace, with thousands of new sequences every week. To keep up with the latest developments, scientists need to frequently download and clean new datasets, which is ad hoc and time-consuming. On the other hand, scientists with limited knowledge in bioinformatics or programming may experience difficulty in analyzing SARS-CoV-2 genomes.
Accordingly, what is needed are systems and methods for genome analysis and visualization to address the challenges.
References will be made to embodiments of the disclosure, examples of which may be illustrated in the accompanying figures. These figures are intended to be illustrative, not limiting. Although the disclosure is generally described in the context of these embodiments, it should be understood that it is not intended to limit the scope of the disclosure to these particular embodiments. Items in the figures may not be to scale.
In the following description, for purposes of explanation, specific details are set forth in order to provide an understanding of the disclosure. It will be apparent, however, to one skilled in the art that the disclosure can be practiced without these details. Furthermore, one skilled in the art will recognize that embodiments of the present disclosure, described below, may be implemented in a variety of ways, such as a process, an apparatus, a system, a device, or a method on a tangible computer-readable medium.
Components, or modules, shown in diagrams are illustrative of exemplary embodiments of the disclosure and are meant to avoid obscuring the disclosure. It shall also be understood that throughout this discussion that components may be described as separate functional units, which may comprise sub-units, but those skilled in the art will recognize that various components, or portions thereof, may be divided into separate components or may be integrated together, including, for example, being in a single system or component. It should be noted that functions or operations discussed herein may be implemented as components. Components may be implemented in software, hardware, or a combination thereof.
Furthermore, connections between components or systems within the figures are not intended to be limited to direct connections. Rather, data between these components may be modified, re-formatted, or otherwise changed by intermediary components. Also, additional or fewer connections may be used. It shall also be noted that the terms “coupled,” “connected,” “communicatively coupled,” “interfacing,” “interface,” or any of their derivatives shall be understood to include direct connections, indirect connections through one or more intermediary devices, and wireless connections. It shall also be noted that any communication, such as a signal, response, reply, acknowledgement, message, query, etc., may comprise one or more exchanges of information.
Reference in the specification to “one or more embodiments,” “preferred embodiment,” “an embodiment,” “embodiments,” or the like means that a particular feature, structure, characteristic, or function described in connection with the embodiment is included in at least one embodiment of the disclosure and may be in more than one embodiment. Also, the appearances of the above-noted phrases in various places in the specification are not necessarily all referring to the same embodiment or embodiments.
The use of certain terms in various places in the specification is for illustration and should not be construed as limiting. A service, function, or resource is not limited to a single service, function, or resource; usage of these terms may refer to a grouping of related services, functions, or resources, which may be distributed or aggregated. The terms “include,” “including,” “comprise,” and “comprising” shall be understood to be open terms and any lists the follow are examples and not meant to be limited to the listed items. A “layer” may comprise one or more operations. The words “optimal,” “optimize,” “optimization,” and the like refer to an improvement of an outcome or a process and do not require that the specified outcome or process has achieved an “optimal” or peak state. The use of memory, database, information base, data store, tables, hardware, cache, and the like may be used herein to refer to system component or components into which information may be entered or otherwise recorded.
In one or more embodiments, a stop condition may include: (1) a set number of iterations have been performed; (2) an amount of processing time has been reached; (3) convergence (e.g., the difference between consecutive iterations is less than a first threshold value); (4) divergence (e.g., the performance deteriorates); and (5) an acceptable outcome has been reached.
One skilled in the art shall recognize that: (1) certain steps may optionally be performed; (2) steps may not be limited to the specific order set forth herein; (3) certain steps may be performed in different orders; and (4) certain steps may be done concurrently.
Any headings used herein are for organizational purposes only and shall not be used to limit the scope of the description or the claims. Each reference/document mentioned in this patent document is incorporated by reference herein in its entirety.
It shall be noted that any experiments and results provided herein are provided by way of illustration and were performed under specific conditions using a specific embodiment or embodiments; accordingly, neither these experiments nor their results shall be used to limit the scope of the disclosure of the current patent document.
It shall also be noted that although embodiments described herein may be within the context of SARS-CoV-2 Genome, aspects of the present disclosure are not so limited. Accordingly, the aspects of the present disclosure may be applied or adapted for use in other genetic material, or non-genetic material.
The 2019 Novel Coronavirus (SARS-CoV-2) caused an outbreak of viral pneumonia since late 2019 and has become a global pandemic. Despite efforts to contain its spread, SARS-CoV-2 has infected millions of patients and more than 800,000 deaths worldwide as of late August. To understand its evolution and genetics, scientists have sequenced SARS-CoV-2 genomes from patients across different age groups, genders, ethnicities, locations, and disease stages. These genomic sequences are being shared on public repositories at a rapid pace, with thousands of new sequences every week. To keep up with the latest developments, scientists need to frequently download and clean new datasets, which is ad hoc and time-consuming. On the other hand, scientists with limited knowledge in bioinformatics or programming may experience difficulty in analyzing SARS-CoV-2 genomes.
In one or more embodiments, the input interface may be a web interface accessible by a user via a web browser.
Alternatively, a user may input both a sequence name and a genome sequence in one input box. In one or more embodiments, the input interface may comprise a third input box 230 to allow a user to upload one or more files with each file corresponding to one or more sequences. In one or more embodiments, it may be desirable that the one or more sequences input to the input interface have a FASTA format, a text-based format widely used in bioinformatics and biochemistry for representing nucleotide sequences and/or amino acid (protein) sequences. In one or more embodiments, the input interface may further comprise a button (e.g., a Run button) 240 for a user to initiate genome analysis for the one or more input sequences. In one or more embodiments, the input interface may further comprise a button (e.g., a Reset button) 250 to allow a user resetting the input box for another input action.
In one or more embodiments, the data analysis pipeline may automatically filter low-quality sequences and remove duplicate sequences, perform sequence alignment, as well as identify and annotate genetic variants. In one or more embodiments, a webserver may be used in the data analysis pipeline to allow rapid analysis of custom sequences without any programming. In one or more embodiments, the analysis result 125 may comprise one or more variant callsets in a desired format, e.g., a VCF, one or more ORF predictions, and/or one or more amino acid and nucleotide sequences. In one or more embodiments, a variant call may be referred as a conclusion that there is a nucleotide difference against some reference at a given position in an individual genome or transcriptome. A variant call may be accompanied by an estimate of variant frequency and some measure of confidence. A VCF is a format of a text file used in bioinformatics for storing genetic sequence variations. In one or more embodiments, a VCF file may comprise one or more meta-information lines, a VCF header line, and one or more data lines containing marker and genotype data. Each data line corresponds to one variant and may be referred as a VCF record. Each VCF record has the same number of tab-separated fields as the header line. In one or more embodiments, an ORF is a reading frame that has the potential to be transcribed into RNA and translated into protein. An ORF may require a continuous sequence of DNA from a start codon, through a subsequent region which usually has a length that is a multiple of 3 nucleotides, to a stop codon in the same reading frame.
In one or more embodiments, the output interfaces 130 may be a web interface comprising a genome visualizer and tabulated displays of genetic variants and ORF predictions. The genome visualizer may be interactive to show ORFs and mutations. In one or more embodiments, analysis results may be downloaded for downstream analysis. In one more embodiments, the input interfaces 110 and/or the output interface 130 may comprise a command-line interface to allow high-throughput processing on local environments. To facilitate data sharing, SARS-CoV-2 sequences may be aggregated from various sources, e.g., GISAID (a global science initiative and source providing open-access to genomic data of various viruses), National Center for Biotechnology Information (NCBI), European Nucleotide Archive (ENA) and China National GeneBank (CNGB), with annotated variant callsets and metadata updated periodically, e.g., on a weekly basis.
The collection of SARS-CoV-2 genomic sequences is rapidly expanding. An integrated pipeline is essential for keeping current with frequent updates. To understand the evolution and genetics of a new viral strain, it may be necessary to identify its genetic mutations and gene boundaries. Some existing software packages focus on gene annotation. Solution packages to identify, annotate, and visualize genetic variants for a genome, e.g., SARS-CoV-2, may be lacking.
One or more embodiments of the present disclosure provide an intuitive web interface for analyzing and visualizing genome, e.g., SARS-CoV-2, variants, and ORFs.
As shown in
In one or more embodiments, when a cursor is hovered over ORFs and mutations, one or more pop-up windows may be triggered for relevant information. For example, the exemplary pop-up window 350 corresponding to the mutation 340 shows name of ORF (ORF lab) that the mutation belongs to, position of the mutation, RNA or AA information related to the mutation, etc. In one or more embodiments, when the genome window contains less than a predetermined number (e.g., 150) of nucleotides, nucleotide symbols may appear to indicate both the nucleotide bases and AA residues, as shown in
Referring to
In one or more embodiments, the genome window may display ORFs associated with multiple genome sequences, e.g., sequences labeled using a first sequence tag 510 and a second sequence 520 as shown in
In one or more embodiments, clicking an ORF or a mutation (or keeping a cursor or a mouse pointer on an ORF or a mutation longer than a predetermined time, e.g., 2 seconds) brings up one or more tables.
In one or more embodiments, one or more tables may be downloadable for downstream analysis. For example, the table shown in
In one or more embodiments, a genome visualizer and one or more tables may be rendered together as shown in
In one or more embodiments, when analysis results for the sequence 905 are initially presented, only the genome visualizer is displayed as default. When a user chooses a target ORF, one or more tables like table 920 and table 930 may be dynamically rendered for relevant information depending on which ORF the user clicks. The one or more tables dynamically shown may be pop-up tables or tables appearing on the same webpage as a replacement for the one or more default tables.
In one or more embodiments, when the genome visualizer comprises two or more sequences (as shown in
In one or more embodiments, the table 1030 may be downloaded as a VCF file, and the table 1040 may be downloaded in a desired format, e.g., in a TSV file.
In one or more embodiments, when a user clicks a mutation, e.g., the mutation 1024, a pop-up window may appear in proximity of the mutation 1024 showing information, e.g., intersecting ORF name, RNA mutation information, AA mutation information, etc., relevant to the mutation 1024. Furthermore, one or more tables may appear along with the genome visualizer. The one or more tables may comprise a mutation table for all mutations in the sequence 1020 (since the mutation 1024 is related to the sequence 1020), a table of ORFs for all ORFs in the in the sequence 1020, and an ORF table for ORFlab of the sequence 1020 (since the mutation 1024 is related to the ORFlab in the sequence 1020).
One skilled in the art shall understand the aforementioned embodiments for genome visualization may be used in individually, in combination or sub-combination, or in combination with additional visualization approach for presentation and downstream analysis.
In one or more embodiments, extraction of genetic variants from sequences may involve the following steps: (1) preprocessing: removal of low-quality and duplicated sequences; (2) alignment: pairwise alignment of each sequence against a reference; (3) variant calling: identify differences between aligned sequences; and (4) post-processing: remove low-quality sites and annotate variants.
In one or more embodiments, one or more preprocessed sequences 1210 are aligned (1315) to obtain one or more aligned sequences 1215. In one or more embodiments, the alignment may be a pairwise alignment to identify regions of similarity that may indicate functional, structural and/or evolutionary relationships between two preprocessed sequences. One or more raw variant calls 1220 may be generated (1320), e.g., using a Python script, from the one or more one or more aligned sequences. In one or more embodiments, raw variant calls are generated in a VCF. In one or more embodiments, the Python script may be customized according to characteristics of the raw sequences. The one or more raw variant calls are merged (1325) into one or more merged variants 1225, with raw variant calls having excessive mutations (e.g., above a threshold) indicative of sequencing error removed. A filtered set of variants comprising one or more filtered variants 1230 is obtained (1330) from the one or more merged variants by filtering out merged variants associated with one or more predetermined structures. In one or more embodiments, a merged variant to be filtered out may be a multi-allelic site or a variant within the poly-A tail. In one or more embodiments, a multi-allelic site may be referred as a specific locus in a genome that contains three or more observed alleles, again counting the reference as one, and therefore allowing for two or more variant alleles. In one or more embodiments, a poly-A tail may be referred as a chain of adenine nucleotides that is added to a messenger RNA (mRNA) molecule during RNA processing to increase the stability of the molecule. In one or more embodiments, the one or more filtered variants are the analysis results from the data analysis pipeline.
In one or more embodiments, all the sequences, e.g., the raw sequences, preprocessed sequences, and the aligned sequences, shown in
Regarding the resources for raw sequences, both NCBI and ENA are part of the International Nucleotide Sequence Database Collaboration (INSDC) and therefore may contain duplicate submissions, which may be removed by comparing the Accession IDs in one or more embodiments of the present disclosure. Further, dual submissions may also appear in both GISAID and INSDC under different Accession IDs. In one or more embodiments, two submissions may be considered as suspect duplications if they have identical genomic sequences. These suspect duplications may be marked in the metadata but not removed because it is possible for an identical strain to infect multiple patients. In one or more embodiments, pairwise alignment may be performed against a reference sequence, e.g., NC_045512.2, using MAFFT (for multiple alignment using fast Fourier transform), a program used to create multiple sequence alignments of amino acid or nucleotide sequences. In one or more embodiments, a custom Python script may be used for variant calling. Each variant may be left-normalized with bcftools, a set of utilities that manipulate variant calls in the VCF and its binary counterpart BCF. samples with too many variants indicative of sequencing error may be removed. In one or more embodiments, a lenient cutoff of 150 variants is used because such a cut off may remove samples with extremely large numbers of variants while keeping most samples.
In one or more embodiments, the data analysis pipeline may be hosted in a server or a cloud accessible to a user via network communication. In one or more embodiments, the data analysis pipeline may be hosted in a local environment, which may be run without network connection. In one or more embodiments, a standalone package for genome analysis and visualization may be downloadable, e.g., from a GitHub repository, for a user to download and run locally.
In one or more embodiments, aspects of the present patent document may be directed to, may include, or may be implemented on one or more information handling systems (or computing systems). An information handling system/computing system may include any instrumentality or aggregate of instrumentalities operable to compute, calculate, determine, classify, process, transmit, receive, retrieve, originate, route, switch, store, display, communicate, manifest, detect, record, reproduce, handle, or utilize any form of information, intelligence, or data. For example, a computing system may be or may include a personal computer (e.g., laptop), tablet computer, mobile device (e.g., personal digital assistant (PDA), smart phone, phablet, tablet, etc.), smart watch, server (e.g., blade server or rack server), a network storage device, camera, or any other suitable device and may vary in size, shape, performance, functionality, and price. The computing system may include random access memory (RAM), one or more processing resources such as a central processing unit (CPU) or hardware or software control logic, read only memory (ROM), and/or other types of memory. Additional components of the computing system may include one or more disk drives, one or more network ports for communicating with external devices as well as various input and output (I/O) devices, such as a keyboard, mouse, stylus, touchscreen and/or video display. The computing system may also include one or more buses operable to transmit communications between the various hardware components.
As illustrated in
A number of controllers and peripheral devices may also be provided, as shown in
In the illustrated system, all major system components may connect to a bus 1716, which may represent more than one physical bus. However, various system components may or may not be in physical proximity to one another. For example, input data and/or output data may be remotely transmitted from one physical location to another. In addition, programs that implement various aspects of the disclosure may be accessed from a remote location (e.g., a server) over a network. Such data and/or programs may be conveyed through any of a variety of machine-readable medium including, for example: magnetic media such as hard disks, floppy disks, and magnetic tape; optical media such as CD-ROMs and holographic devices; magneto-optical media; and hardware devices that are specially configured to store or to store and execute program code, such as application specific integrated circuits (ASICs), programmable logic devices (PLDs), flash memory devices, other non-volatile memory (NVM) devices (such as 3D XPoint-based devices), and ROM and RAM devices.
Aspects of the present disclosure may be encoded upon one or more non-transitory computer-readable media with instructions for one or more processors or processing units to cause steps to be performed. It shall be noted that the one or more non-transitory computer-readable media shall include volatile and/or non-volatile memory. It shall be noted that alternative implementations are possible, including a hardware implementation or a software/hardware implementation. Hardware-implemented functions may be realized using ASIC(s), programmable arrays, digital signal processing circuitry, or the like. Accordingly, the “means” terms in any claims are intended to cover both software and hardware implementations. Similarly, the term “computer-readable medium or media” as used herein includes software and/or hardware having a program of instructions embodied thereon, or a combination thereof. With these implementation alternatives in mind, it is to be understood that the figures and accompanying description provide the functional information one skilled in the art would require to write program code (i.e., software) and/or to fabricate circuits (i.e., hardware) to perform the processing required.
It shall be noted that embodiments of the present disclosure may further relate to computer products with a non-transitory, tangible computer-readable medium that have computer code thereon for performing various computer-implemented operations. The media and computer code may be those specially designed and constructed for the purposes of the present disclosure, or they may be of the kind known or available to those having skill in the relevant arts. Examples of tangible computer-readable media include, for example: magnetic media such as hard disks, floppy disks, and magnetic tape; optical media such as CD-ROMs and holographic devices; magneto-optical media; and hardware devices that are specially configured to store or to store and execute program code, such as application specific integrated circuits (ASICs), programmable logic devices (PLDs), flash memory devices, other non-volatile memory (NVM) devices (such as 3D XPoint-based devices), and ROM and RAM devices. Examples of computer code include machine code, such as produced by a compiler, and files containing higher level code that are executed by a computer using an interpreter. Embodiments of the present disclosure may be implemented in whole or in part as machine-executable instructions that may be in program modules that are executed by a processing device. Examples of program modules include libraries, programs, routines, objects, components, and data structures. In distributed computing environments, program modules may be physically located in settings that are local, remote, or both.
One skilled in the art will recognize no computing system or programming language is critical to the practice of the present disclosure. One skilled in the art will also recognize that a number of the elements described above may be physically and/or functionally separated into modules and/or sub-modules or combined together.
It will be appreciated to those skilled in the art that the preceding examples and embodiments are exemplary and not limiting to the scope of the present disclosure. It is intended that all permutations, enhancements, equivalents, combinations, and improvements thereto that are apparent to those skilled in the art upon a reading of the specification and a study of the drawings are included within the true spirit and scope of the present disclosure. It shall also be noted that elements of any claims may be arranged differently including having multiple dependencies, configurations, and combinations.