Residual loop spectrum search and annotation for fragmentation ions
The iterative annotation method for mass spectrometry systems addresses the limitation of unannotated ion peaks in spectral library search engines by repeatedly annotating ion peaks, enabling comprehensive molecular structure identification in complex molecules.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-08-28
- Publication Date
- 2026-03-13
AI Technical Summary
Existing spectral library search engines in mass spectrometry often leave a significant number of ion peaks in a fragmentation spectrum unannotated, limiting the scope of molecular structure identification and analysis, particularly for complex molecules.
A system and method that iteratively annotates ion peaks by removing previously annotated peaks and resubmitting the fragmentation spectrum for additional annotation loops until defined criteria are met, allowing for the identification of multiple molecular substructures within a complex molecule.
Enhances the annotation and identification of multiple molecular substructures, providing a more robust and accurate analysis of complex molecules by ensuring a higher proportion of ion peaks are annotated, thereby improving the understanding of their composition and structure.
Smart Images

Figure 2026047284000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to residual loop spectrum search and annotation for fragmentation ions.
Background Art
[0002] A fragmentation spectrum analysis search engine queries an unknown spectrum once and annotates ion peaks in the fragmentation spectrum. As a result, one or more ion peaks may remain unannotated, thereby limiting the scope of annotation application and potentially reducing the annotation of the fragmentation spectrum of a complex molecule.
Summary of the Invention
[0003] The following presents an overview for achieving a basic understanding of one or more embodiments. This overview is not intended to identify key or important elements or to detail any scope or any claims of a particular embodiment. Its sole purpose is to present concepts in a simplified form as a prelude to the more detailed description that follows. In one or more embodiments described herein, a device, system, computer-implemented method, apparatus, or computer program product that facilitates loop spectrum search of residual fragmentation ions will be described.
[0004] A system is provided according to one or more embodiments. The system may include a mass spectrometer. The scientific instrument may further include non-temporary computer-readable memory capable of storing computer-executable components. The system may further include a processor operably coupled to the non-temporary computer-readable memory and capable of executing the computer-executable components stored in the non-temporary computer-readable memory. In various embodiments, the computer-executable component may include an annotation component that generates an annotated portion of a fragmentation spectrum based on previously removed annotated ion peaks of the fragmentation spectrum, the annotated portion of the fragmentation spectrum comprising one or more ion peaks annotated to belong to a first molecular structure. In various embodiments, the computer-executable component may include a looping component that removes annotated ion peaks from the fragmentation spectrum and resubmits the fragmentation pattern to the annotation component for one or more additional iterations of the annotation.
[0005] The advantages of the system and / or the corresponding computer implementation and / or computer program product may be its ability to repeatedly annotate ion peaks in fragmentation spectra and to identify multiple molecules or structures within the fragmentation spectra. This allows for more accurate identification and analysis of substances related to fragmentation and mass spectrometry analysis. [Brief explanation of the drawing]
[0006] The embodiments will be readily apparent from the following detailed description in conjunction with the accompanying drawings. For the sake of this description, similar reference numerals indicate similar structural elements. The embodiments are shown in the figures of the accompanying drawings as examples, not as limitations. [Figure 1]This is a block diagram of an exemplary scientific instrument module for performing annotation operations according to various embodiments described herein. [Figure 2] This is a flowchart illustrating an exemplary method for performing an annotation operation according to various embodiments described herein. [Figure 3] A block diagram of an example of a non-restrictive scientific instrument that facilitates loop spectral searching of residual ion peaks according to one or more embodiments described herein is shown. [Figure 4] A block diagram of an example of a non-restrictive scientific instrument that facilitates loop spectral searching of residual ion peaks according to one or more embodiments described herein is shown. [Figure 5] A flowchart illustrating a single-spectrum search according to one or more embodiments described herein is shown. [Figure 6] A flowchart of a single-loop spectral search for the search of residual ions, according to one or more embodiments described herein, is shown. [Figure 7A] The flowcharts of multiple search loops for residual ions according to one or more embodiments described herein are shown. [Figure 7B] The flowcharts of multiple search loops for residual ions according to one or more embodiments described herein are shown. [Figure 8] A flowchart of an exemplary, non-limiting computer-aided procedure that facilitates loop annotation of fragmentation spectra of unknown samples according to one or more embodiments described herein is shown. [Figure 9] A flowchart shows an example of a non-restrictive computer implementation that can facilitate the training of annotated machine learning models according to one or more embodiments described herein. [Figure 10] An example of a non-limiting block diagram of a graphical user interface that can be used when carrying out some or all of the methods or techniques disclosed herein is shown. [Figure 11]An example of a non-limiting block diagram of a computer device that can be used when carrying out some or all of the methods or techniques disclosed herein is shown. [Figure 12] An example of a non-limiting block diagram of a scientific instrument support system in which some or all of the methods or techniques disclosed herein may be implemented is shown. [Figure 13] A block diagram of an example of a non-limiting operating environment that can facilitate one or more embodiments described herein is shown. [Modes for carrying out the invention]
[0007] The following detailed descriptions are illustrative and not intended to limit the embodiments and / or the application or use of the embodiments. Furthermore, there is no intention to be bound by the expressions or implied information presented in the preceding sections on the summary of the invention or the embodiments for carrying out the invention. Here, one or more embodiments are described with reference to the drawings, but the same reference numerals are used throughout to indicate the same elements. The following descriptions include many specific details for illustrative purposes so that one or more embodiments may be understood more thoroughly. However, it is clear that in various cases one or more embodiments may be practiced without these specific details.
[0008] In mass spectrometry analysis, a sample can be analyzed by applying one or more fragmentation techniques and / or methods to the sample. These fragmentation techniques induce chemical dissociation within the sample, thereby causing ionization. Subsequently, the mass spectrometer can measure or determine the fragmentation spectrum by measuring the relative ion amounts as a function of the mass-to-charge ratio of the fragmented sample. The resulting fragmentation spectrum includes a graph of the mass-to-charge ratio of fragmentation ions. The graph shows various peaks (e.g., high abundances of various fragmentation ions), and the fragmentation spectrum can be compared to the fragmentation patterns of known molecules (e.g., the fragmentation spectrum of a known sample shows the relative abundances of fragmentation ions that the known sample tends to produce), generating an annotated fragmentation spectrum of the sample, and the sample or a part thereof can be identified by matching the peaks in the fragmentation spectrum of an unknown sample with the peaks in the fragmentation spectrum of a known sample.
[0009] Existing spectral library search engines perform a single query for the fragmentation spectrum of an unknown molecular sample and annotate the ionic peaks of the fragmentation spectrum based on comparison with known fragmentation patterns. However, for some molecular samples, the search function may annotate only a portion of the molecular sample's fragmentation spectrum based on the nearest known fragmentation pattern, leaving a significant number of ionic peaks in the fragmentation spectrum unannotated. This can result in results that only identify a portion of the sample's ionic fragments, limiting the usefulness of such analysis.
[0010] To overcome one or more shortcomings of existing spectral library search engines as identified above, one or more embodiments described herein annotate one or more ion peaks in the fragmentation spectrum of a molecular structure belonging to a first molecular substructure, remove one or more annotated ion peaks from the fragmentation spectrum, and, based on the removed annotated ion peaks, annotate one or more remaining ion peaks in the fragmentation spectrum as belonging to a second molecular substructure. By removing previously annotated ion peaks, the search function can query only the remaining ion peaks to find the known fragmentation pattern closest to the remaining ion peaks, and it may be found that the presence of previously annotated ion peaks could have prevented a search engine from identifying them by other means.
[0011] Furthermore, subsequent annotation allows for the selection of a second molecular substructure that is likely to exist based on the presence of a first molecular substructure. In one or more embodiments, residual ion peaks can be looped and queried, and this loop search can be repeated multiple times until one or more defined search criteria are met. Examples of defined search criteria include, but are not limited to, a defined number of loop iterations, a defined search time, until a defined proportion or number of ion peaks in the fragmentation spectrum are annotated, or another defined search criterion. As a result of this loop search of residual ion peaks, a higher proportion of ion peaks in the fragmentation spectrum can be annotated, enabling a more robust analysis of the initially present fragmentation spectrum. For example, parts of more complex molecules often exhibit fragmentation spectra similar to the fragmentation patterns of known low-compound compounds, which may explain various molecular substructures of the more complex molecule. Therefore, the techniques described herein enable the annotation and / or identification of multiple molecular substructures of a complex molecule (e.g., a broader scope of annotation), whereas existing techniques only allow the annotation of a single molecular substructure. By enabling the annotation / identification of multiple molecular substructures within a complex molecule, a more accurate analysis and / or understanding of the composition and structure of the complex molecule can be achieved.
[0012] Here, one or more embodiments are described with reference to the drawings, but the same reference numerals are used throughout to indicate the same elements. The following description includes many specific details for illustrative purposes to allow for a more thorough understanding of one or more embodiments. However, it is clear that in various cases one or more embodiments can be practiced without these specific details.
[0013] Figure 1 shows an example of a non-restrictive block diagram of the scientific instrument module 100 according to various embodiments described herein.
[0014] The scientific instrument module 100 can be implemented by circuits (including, for example, electrical or optical components) such as programmed computing devices. The logic of the scientific instrument module 100 can be contained in a single computing device or distributed across multiple computing devices communicating with each other as needed. Examples of computing devices that can implement the scientific instrument module 100, individually or in combination, are discussed herein with reference to Figures 11 and 13, and examples of systems or networks of interconnected computing devices in which the scientific instrument module 100 can be implemented across one or more computing devices are discussed herein with reference to Figure 12.
[0015] The scientific instrument module 100 may include a first logic 102 and a second logic 104. As used herein, the term “logic” may include a device that performs a set of operations associated with a logic element. For example, any of the logic elements included in the scientific instrument module 100 may be implemented by one or more computing devices programmed with instructions that perform a set of operations associated with one or more processing devices of a computing device. In certain embodiments, a logic element may include one or more non-temporary computer-readable media having instructions thereon, which, when executed by one or more processing devices of the computing device, cause one or more computing devices to perform a set of operations associated with it. As used herein, the term “module” may refer to a collection of one or more logic elements that together perform a function associated with a module. Different logic elements within a module may take the same form or different forms. For example, some logic within a module may be implemented by programmed general-purpose processing devices, while other logic within a module may be implemented by an integrated circuit for a specific use (ASIC). In another example, different logic elements within a module may be associated with different sets of instructions executed by one or more processing devices. A module may not contain all of the logic elements depicted in the associated drawings; for example, a module may contain a subset of the logic elements depicted in the associated drawings when the module performs a subset of the operations considered herein by reference to that module.
[0016] In various embodiments, a scientific instrument corresponding to the scientific instrument module 100 may exist. In various embodiments, the scientific instrument may be any suitable computerized device capable of electronically measuring scientific, clinical, or research-related properties, characteristics, or attributes of an analytical sample (e.g., a known or unknown mixture, compound, or substance aggregate). As a non-limiting example, the scientific instrument may be a mass spectrometer. In such a case, the scientific instrument may measure or determine the ion spectrum of the analytical sample (e.g., the relative ion abundance as a function of mass-to-charge ratio).
[0017] The first logic 102 may involve annotating one or more ion peaks in the fragmentation spectrum. As an example, the fragmentation spectrum of a sample can be obtained by applying one or more fragmentation techniques or skills (e.g., collision-induced dissociation, high-energy collision dissociation, ultraviolet photodissociation, electron transfer dissociation, electron capture dissociation, or other fragmentation techniques or skills) to the sample, and then using mass spectrometry techniques to measure or determine the relative ion abundance as a function of mass-to-charge ratio. This can then be compared to known fragmentation patterns stored in a library using two steps: 1) selecting the direction of comparison between the query and the library (e.g., forward, backward, or symmetrical), and selecting a scoring algorithm to compare the ionic intensity, mass precision, and / or other factors between the fragmentation spectrum of the sample and the known fragmentation patterns in the library. Next, the ion peaks are matched with ion peaks of known fragmentation patterns of known samples or compounds to identify molecular structures, and the matched ion peaks are annotated with names based on the identified molecular structures to generate an annotated fragmentation spectrum. For example, annotation may include the device comparing one or more ion peaks of the fragmentation spectrum of an unknown sample with one or more ion peaks of one or more possible matching fragmentation patterns stored in a fragmentation pattern library that stores fragmentation patterns of known samples or compounds; the device and / or entity selecting a matching fragmentation pattern from one or more possible matching fragmentation patterns; and the device marking one or more matched ion peaks of the fragmentation spectrum as belonging to the matching fragmentation pattern. In one or more embodiments, the device may select matching fragmentation patterns based on an entity defined by a characteristic such as the number of matching ion peaks.In one or more embodiments described in further detail below, a fragmentation pattern that matches can be selected by an annotated machine learning model. As described above, in some cases, the identification of the sample may be incomplete by leaving one or more ion peaks unannotated.
[0018] The second logic 104 can remove one or more annotated ion peaks from the fragmentation spectrum and resubmit the fragmentation spectrum (excluding the previously annotated ion peaks) to the first logic 102 for the annotation of one or more of the remaining ion peaks. By removing the previously annotated ion peaks, the fragmentation spectrum can contain only ion peaks that do not match a known fragmentation pattern, resulting in a known structure. This allows subsequent search and annotation steps to focus on the previously unannotated ion peaks, making it possible to identify additional molecular structures within the sample. In one or more embodiments, the second logic can determine whether one or more defined search criteria have been met. For example, if a predetermined number of annotation iterations or loops have been performed, the second logic 104 can terminate the looping annotation process. In another example, if it is specified that all ion peaks be annotated with a defined search criterion, the second logic 104 can loop until all ion peaks are annotated through a process of removing the annotated ion peaks from the fragmentation spectrum and resubmitting the fragmentation spectrum to the first logic 102. In a further example, the defined search criterion may include a similarity index based on a comparison of the fragmentation spectrum of an unknown sample with the fragmentation spectrum of a known sample or compound. For example, a scoring algorithm can be used to compare the peak mass-to-charge ratio and intensity between the fragmentation spectrum and the spectrum of a known sample. The loop can continue even if the score does not reach a defined threshold. Thus, the scientific instrument module 100 can facilitate loop spectral retrieval of residual ions in the fragmentation spectrum.
[0019] Figure 2 is a flowchart of a computer-implemented method 200 according to one or more embodiments described herein. The operations of computer-implemented method 200 can be performed with any suitable set of values to perform any suitable operations (e.g., by any of the various modules, computing devices, or graphical user interfaces described in FIGS. 1, 7, 8, 9, and 10, or used in combination therewith). In FIG. 2, the operations are illustrated one at a time in a particular order, but this order can be changed or repeated as desired (e.g., the different operations being performed can be performed in parallel as appropriate).
[0020] At 202, a first operation can be performed. For example, the first logic 102 of the scientific instrument module 100 can perform the operation at 202. The first operation may include annotating one or more ion peaks of a fragmentation spectrum.
[0021] At 204, a second operation can be performed. For example, the second logic 104 of the scientific instrument module 100 can perform the operation at 204. The second operation may include removing one or more annotated ion peaks from the fragmentation spectrum.
[0022] At 206, a third operation can be performed. For example, the first logic 102 and / or the second logic 104 can perform the operation at 206. The third operation may include annotating one or more remaining ion peaks of the fragmentation spectrum. Accordingly, the computer-implemented method 200 can facilitate a looped search for residual ion peaks according to one or more embodiments described herein.
[0023] Figure 3 shows a block diagram of an example of an unrestrictive scientific instrument that facilitates loop spectral retrieval of residual ion peaks according to one or more embodiments described herein. As shown, the scientific instrument 302 may include a mass spectrometer 306.
[0024] In various embodiments, the mass spectrometer 306 can be any suitable mass spectrometer. In various cases, the mass spectrometer 306 can be equipped with any suitable configuration hardware 324 for measuring the ion spectrum of the analyte. In various cases, the ion beam emitter can receive a component portion of the analyte and ionize that component portion into an ion beam. The ion beam emitter can facilitate this by any suitable ionization or fragmentation technique such as electron ionization, chemical ionization, matrix-assisted laser desorption ionization, electron spray ionization, photoelectron ionization, or inductively coupled plasma ionization, all of which can be implemented under vacuum or atmospheric pressure. In various embodiments, an ion photometer can guide or direct the ion beam generated by the ion beam emitter to a mass spectrometer and an ion detector. Non-limiting examples of such an ion photometer may include an ion focusing lens, an ion guide, or an ion deflector. In various cases, the mass spectrometer can separate or rearrange the ions present in the ion beam according to the mass-to-charge ratio. Non-limiting examples of mass spectrometers may include quadrupole mass spectrometers, time-of-flight mass spectrometers, magnetic sector mass spectrometers, electrostatic sector mass spectrometers, quadrupole ion trap mass spectrometers, orbit trap mass spectrometers, asymmetric track lossless mass spectrometers, or ion cyclotron resonance mass spectrometers. In various cases, ion detectors can electronically detect or measure the relative abundance of ions that strike them. Non-limiting examples of ion detectors may include electron breeding ion detectors, photobreeding tubes, microchannel plate detectors, image charge detectors, or Faraday cup ion detectors.
[0025] In either case, given an analytical sample, the mass spectrometer 306 can generate an ion spectrum showing the relative abundance of various ions in the analytical sample with respect to their mass-to-charge ratio (e.g., a fragmentation spectrum).
[0026] In various embodiments, the scientific instrument 302 may be equipped with an annotation system 308. In various cases, the annotation system 308 can facilitate the loop spectrum retrieval of residual ions on the fragmentation spectrum generated by the mass spectrometer 306.
[0027] In various embodiments, the annotation system 308 may include a processor 310 (e.g., a computer processing unit, a microprocessor) and a non-temporary computer-readable memory 312 connected to or coupled to the processor 310 in an operable, operational, or communicative manner. The non-temporary computer-readable memory 312 can store computer-executable instructions that, when executed by the processor 310, cause the processor 310 or other components of the annotation system 308 (e.g., an annotation component 314, a looping component 316) to perform one or more actions. In various embodiments, the non-temporary computer-readable memory 312 may store computer-executable components (e.g., an annotation component 314, a looping component 316), and the processor 310 may execute the computer-executable components.
[0028] In various embodiments, the annotation system 308 may include an annotation component 314. In various embodiments described herein, the annotation component 314 can annotate one or more ion peaks of a fragmentation spectrum generated by the mass spectrometer 306 (as described above in relation to the first logic 102) to generate an annotated portion of the fragmentation spectrum. As described above, the annotation process may include matching one or more ion peaks of the fragmentation spectrum with one or more ion peaks of one or more possible matching fragmentation patterns stored in a pattern library by the device, selecting a matching fragmentation pattern from one or more possible matching fragmentation patterns by the device, and marking one or more matching ion peaks of the fragmentation spectrum as belonging to a matching fragmentation pattern by the device.
[0029] In one or more embodiments, a matching fragmentation pattern can be selected from one or more possible matching fragmentation patterns based on a scoring algorithm that compares factors such as ionic intensity. In one or more embodiments, the matching fragmentation pattern may be selected based on one or more matching criteria, such as the number of matching ion peaks and / or a hierarchical relationship between a previously annotated molecular substructure and the molecular structure of one or more possible matching fragmentation patterns. For example, if one or more previously removed ion peaks are annotated to belong to a first molecular substructure, and the hierarchical relationship indicates that a molecular compound having the first molecular substructure is likely to also contain a second molecular substructure, and the second molecular substructure is identified as one of the possible matching fragmentation patterns, then the fragmentation pattern corresponding to the second molecular substructure can be selected as the matching fragmentation pattern. In one or more embodiments, the hierarchical relationship can be determined based on known fragmentation patterns using a pattern library and the proportion identified by the entity. For example, if a certain percentage of known fragmentation patterns containing a first molecular substructure also contain a second molecular substructure, a hierarchical relationship between the first and second molecular substructures can be identified (the percentage being defined by the entity). In another example, if there is a certain number of fragmentation patterns containing both the first and second molecular substructures, a hierarchical relationship can be identified, and the identified number is defined by the entity.
[0030] In various embodiments, the annotation system 308 may include a looping component 316. In various embodiments, the looping component 316 removes one or more ion peaks annotated by the annotation component 314 from the fragmentation spectrum, determines whether a defined search criterion is met, and, in response to the definition of the search criterion not being met, submits the fragmentation spectrum to the annotation component 314 to add one or more annotation rounds or loops (as described above in relation to the second logic 104). In one or more embodiments, once the annotation is complete, the final annotated fragmentation spectrum can be added to a pattern library for easy identification of the same sample type in the future.
[0031] Figure 4 shows a block diagram of an example of a non-restrictive scientific instrument that can facilitate loop spectral retrieval of residual ion peaks according to one or more embodiments described herein. As shown in the figure, the scientific instrument 302 may comprise a mass spectrometer 306 and an annotation system 308, as described above with respect to Figure 3. The annotation system 308 in Figure 4 may further comprise an annotation machine learning model 410 and a training component 416. In one or more embodiments, the training component 416 can train the annotation machine learning model 410 to select a matching fragmentation pattern from one or more possible matching fragmentation patterns, where the training includes generating an annotated fragmentation spectrum of a known sample by the annotation machine learning model, comparing the annotated fragmentation spectrum with the fragmentation pattern of the known sample by the training component 416, and updating the annotation machine learning model 410 based on the results of the comparison by the training component 416. Thus, since the annotation machine learning model 410 can learn the relationships between molecular substructures of known samples, it is possible for the annotation machine learning model 410 to accurately select matching fragmentation patterns from possible matching fragmentation patterns in order to further automate the annotation of unknown samples.
[0032] According to some embodiments, the annotated machine learning model 410 can use automated learning and decision procedures (e.g., the use of explicitly and / or implicitly trained statistical classifiers) in accordance with one or more embodiments described herein, by performing inference and / or probabilistic decisions and / or statistical decisions.
[0033] For example, the annotation machine learning model 410 can determine one or more answers based on information held as a source database of insights, using the principles of probabilistic and decisional theoretical estimation. In various embodiments, the annotation machine learning model 410 can use a source database of insights consisting of known fragmentation patterns and the molecular structures / substructures associated with those known fragmentation patterns. Furthermore, or alternatively, the annotation machine learning model 410 can rely on a predictive model constructed using machine learning and / or automated learning procedures. Logic-centric inference can be performed independently or in combination with probabilistic methods. For example, decision tree learning can be used to map observations about the data held in the source database of insights to derive appropriate annotations for one or more ion peaks in a fragmentation spectrum.
[0034] In this specification, the term “inference” generally refers to the process of justifying or inferring an evaluation from one or more observations collected through a system, component, module, environment, and / or events, reports, data, and / or other forms of communication. Inference can be used to identify specific situations or actions, and for example, it can also generate probability distributions between states. Inference can be probabilistic. For example, the calculation of a probability distribution in a state of interest can be done based on data and / or event considerations. Inference can also refer to techniques used to construct higher-level events from one or more events and / or data. Such inference can result in constructing new events and actions from one or more observed and stored event data, regardless of whether the events are temporally close and correlated, or whether the events and data are obtained from one or more event and data sources. Various classification schemes and / or systems (e.g., support vector machines, neural networks, logic-centered generation systems, Bayesian belief networks, fuzzy logic, data fusion engines, etc.) can be used when performing automated actions and / or inference actions in relation to the disclosed aspects. Furthermore, the inference process can be based on statistical or definitive methods such as random sampling and Monte Carlo Tree Search.
[0035] Various embodiments can utilize various artificial intelligence-based schemes to implement those embodiments. For example, the process of selecting a matching fragmentation pattern from one or more possible matching fragmentation patterns without interaction with a target entity can be enabled through an automated classifier system and process.
[0036] A classifier is a function that maps an input attribute vector x=(x1,x2,x3,x4,xn) to a confidence level that the input belongs to a class. That is, f(x) = confidence level(class). Such classifications can use probabilistic and / or statistical-based analysis (such as factoring analytical utilities and costs) to predict or infer the actions that should be taken to make a decision. The decision may include, but is not limited to, choosing which matching fragmentation pattern to select from one or more possible matching fragmentation patterns.
[0037] Support Vector Machines (SVMs) are presented as an example of a usable classifier. SVMs operate by finding a hypersurface in the possible input space, which attempts to separate trigger criteria from non-trigger events. Intuitively, this allows for the correct classification of test data that may be similar to, but not identical to, the training data. Other directed and undirected model classification approaches offering different isolation patterns can be used, such as Naive Bayes, Bayesian networks, decision trees, neural networks, fuzzy logic models, and probabilistic classification models. Classifications used herein may also include statistical regressions used to develop priority models.
[0038] One or more embodiments may use explicitly trained classifiers (e.g., through general training data) and potentially trained classifiers (e.g., by observing and recording target entity behavior, by receiving exogenous information, etc.). For example, an SVM can be constructed through a classifier constructor and a learning or training phase within a feature selection module. Thus, a classifier can be used to automatically learn and perform many functions, including, but not limited to, selecting matching fragmentation patterns from one or more possible matching fragmentation patterns. Furthermore, one or more embodiments may also use machine learning models trained using reinforcement learning. For example, penalty / reward scores can be assigned to various outputs generated by an annotating machine learning model 410 based on a defined entity configuration. Thus, the annotating machine learning model 410 can learn by selecting options with lower penalties and / or higher rewards in order to reduce the overall penalty score and / or increase the overall reward score. For example, the training component 416 can assign a penalty / reward score to the annotations generated by the annotation machine learning model 410 based on comparing the annotations with known fragmentation spectra of the samples used during training.
[0039] Figure 5 shows a flowchart of a single-spectrum search according to one or more embodiments described herein.
[0040] As shown in the figure, block 502 is the fragmentation spectrum of the sample showing ion peaks measured by mass spectrometer. Block 506 is the fragmentation pattern of a known structure, in this case the disaccharide melibiose contains one or more ion peaks that coincide with one or more ion peaks in block 502. Thus, as explained above with respect to Figure 1, one or more matching peaks can be annotated based on the library structure. However, as shown in block 504, this leaves some ion peaks unknown / unannotated. If using existing spectral search techniques, the analysis process would be terminated at this stage, leaving one or more ion peaks unannotated and thus leaving at least part of the sample structure unknown.
[0041] Figure 6 shows a flowchart of a single-loop spectral search for residual ion retrieval according to one or more embodiments described herein.
[0042] As shown in the figure, block 602 is the fragmentation spectrum of the sample showing ion peaks determined by the mass spectrometer. Block 606 is the fragmentation pattern of a known structure, in this case the disaccharide melibiose, and contains one or more ion peaks that coincide with one or more ion peaks in block 602. Thus, as described above with respect to Figure 1, one or more coincident peaks can be annotated based on the library structure. As described above with respect to Figure 5, one or more ion peaks remain unannotated, as shown in block 604. Furthermore, as described above with respect to Figure 1, annotated ion peaks (e.g., those annotated as components of the disaccharide melibiose) can be removed (as described in the second logic 104), and the fragmentation spectrum from which the annotated ion peaks have been removed (as shown in block 604) can then be resubmitted in another loop or iteration of annotation to annotate one or more of the remaining ion peaks.
[0043] Figures 7A and 7B show flowcharts of multiple search loops for residual ions according to one or more embodiments described herein.
[0044] In step 702, a fragmentation spectrum is obtained from the sample containing 100 ion peaks. As described above with respect to Figure 1, one or more ion peaks can be annotated (e.g., using the first logic 102) to generate an annotated portion of the fragmentation spectrum. As shown in the figure, 70 ion peaks are annotated as components of the maltose structure. The annotated ion peaks can then be removed from the fragmentation sample (e.g., using the second logic 104), and the fragment sample is resubmitted for a second round of annotation (e.g., step 704). In step 704, 27 of the remaining 40 ion peaks are annotated as components of the glycylretinic acid structure. The 27 annotated ion peaks can then be removed, and the remaining 13 unannotated ion peaks can be resubmitted for a third round / iteration of annotation (e.g., step 706). In step 706, 6 of the remaining ion peaks are annotated as components of the anandamide structure. Six annotated ion peaks are removed, and the remaining five ion peaks are resubmitted in one or more further rounds of annotation. It should be noted that the loop search for residual ions can continue until a set number of ion peaks are annotated, until a set percentage of the total number of ion peaks is annotated, until a specified number of loops are performed, until a specified amount of time has elapsed, or until another specified search criterion is met.
[0045] Figure 8 shows a flowchart of an exemplary, non-restrictive computer implementation 800 that can facilitate loop annotation of fragmentation spectra of unknown samples according to one or more embodiments described herein.
[0046] In various cases, the annotation system 308 can facilitate the computer implementation method 800. In various embodiments, act 802 may include annotating one or more ion peaks of a fragmentation spectrum produced by mass spectrometry (e.g., mass spectrometer 306) by a device (e.g., via the annotation component 314). For example, as described above with reference to Figures 1-4, annotation may include matching one or more ion peaks of the fragmentation spectrum with one or more ion peaks of one or more possible matching fragmentation patterns stored in a pattern library by the device, selecting a matching fragmentation pattern from one or more possible matching fragmentation patterns by the device, and marking one or more matching ion peaks of the fragmentation spectrum as belonging to a molecular structure associated with the matching fragmentation pattern by the device. As described above with reference to Figures 1-4, in one or more embodiments, the selection of a matching fragmentation pattern may be at least in part based on a stored relationship between the matching fragmentation pattern and a matching fragmentation pattern previously used to annotate one or more ion peaks of the fragmentation spectrum. For example, if there is a historical correlation between the first matching fragmentation pattern and the second matching fragmentation pattern, and the first matching fragmentation pattern was selected during the previous iteration / loop of annotation, then the second matching fragmentation pattern can be selected, provided that one or more possible matching fragmentation patterns include the second matching fragmentation pattern.
[0047] In various embodiments, act 804 may include the removal of annotated ion peaks from the fragmentation spectrum by a device (e.g., annotation component 314).
[0048] In various embodiments, action 806 may include checking the device (e.g., looping component 316) whether a defined search criterion is met. For example, as described above with reference to Figures 1-4, the defined search criterion may include at least one of a defined number of annotation loops / iterations, a defined number of ion peaks, a defined percentage of the total annotated ion peaks, a certain amount of search time elapsed, or other defined search criteria. If the defined search criterion is met or exceeded, the process may proceed from method 800 to action 808. If the defined search criterion is not met, method 800 returns to action 802, which may involve one or more additional annotation iterations / loops.
[0049] In various embodiments, act 808 may include sending or submitting a notification indicating that the device has completed annotation. In one or more embodiments, the notification may include an annotated portion of the fragmentation spectrum. For example, the completed annotated fragmentation spectrum may include annotations generated during each iteration / round of annotation. In one or more embodiments, the completed annotations may be stored in a pattern library as new fragmentation patterns so that similar samples of the same type can be identified in the future.
[0050] Figure 9 shows a flowchart of an example of a non-restrictive computer implementation 900 that can facilitate the training of annotated machine learning models according to one or more embodiments described herein.
[0051] In various embodiments, act 902 may include the device (e.g., annotation component 314) using an annotation machine learning model (e.g., annotation machine learning model 410) to generate an annotated fragmentation spectrum of a known sample. For example, the annotation machine learning model 410 may be assigned a fragmentation spectrum of a known sample and may be annotated to the fragmentation spectrum as described above with respect to Figure 8, where the annotation machine learning model 410 selects a matching fragmentation pattern from one or more possible matching fragmentation patterns, and the complete fragmentation pattern of the known sample is removed from the pattern library.
[0052] In various embodiments, act 904 may include a device (e.g., training component 416) comparing the annotated fragmentation spectrum generated by the annotated machine learning model 410 with the complete fragmentation pattern of a known sample. For example, the training component 416 can compare the annotated fragmentation pattern with the known fragmentation pattern to determine whether the annotated machine learning model 410 correctly identified the known sample and its molecular subcomponents.
[0053] In various embodiments, action 906 may include updating the annotated machine learning model 410 by a device (e.g., training component 416) based on the results of the comparison. For example, in one embodiment, if the annotated machine learning model correctly identifies one or more molecular subcomponents of a known sample, the training component 416 may assign a reward score based on the correctly identified molecular subcomponents. If the annotated machine learning model incorrectly identifies one or more molecular subcomponents of the sample (e.g., selecting a possible matching fragmentation pattern that is not present in the sample, or not selecting a possible matching fragmentation pattern that is present in the sample), the training component 416 may assign a penalty score. Thus, the annotated machine learning model can be trained using the desired function, and the annotated machine learning model 410 attempts to maximize the reward score and / or minimize the penalty score.
[0054] In various embodiments, action 908 may include checking with a device (e.g., training component 416) whether a defined training criterion has been met. In one or more embodiments, the defined training criterion may include at least one of the following: a defined training time, a defined number of training cycles, repeating all known samples in the training dataset, achieving a defined accuracy level, and / or determining that training of the annotated machine learning model 410 is complete using another criterion. In response that the defined training criterion has been met, method 900 may proceed to action 910 to terminate training of the annotated machine learning model 410. In response that the defined training criterion has not been met, method 900 may return to action 902, and the annotated machine learning model may be trained on one or more additional known samples in the training dataset.
[0055] The advantages of the system and / or the corresponding computer implementation method and / or computer program product may be its ability to repeatedly annotate ion peaks in fragmentation spectra and to identify multiple molecules or structures within the fragmentation spectra. This broadens the scope of annotation and allows for more detailed analysis of unknown samples compared to existing approaches.
[0056] Systems, methods, or techniques of scientific instruments disclosed herein may include interactions with human users (e.g., via a user-local computing device 1220, as discussed herein with reference to Figure 12). These interactions may include providing the user with information (e.g., information regarding the operation of a scientific instrument such as the scientific instrument 1210 in Figure 12, information regarding a sample being analyzed by the scientific instrument or other tests or measurements being performed, information obtained from a local or remote database, or other information), or providing the user with the option to input instructions (e.g., to control the operation of a scientific instrument such as the scientific instrument 1210 in Figure 12, or to control the analysis of data generated by the scientific instrument), queries (e.g., directed to a local or remote database), or other information. In some embodiments, these interactions may be performed via a graphical user interface (GUI) including a visual display on a display device (e.g., display device 1110, discussed herein with reference to Figure 11) that provides output to the user and / or prompts the user to provide input (e.g., via one or more input devices such as a keyboard, mouse, trackpad, or touchscreen included in other I / O devices 1112, discussed herein with reference to Figure 11). Systems, methods, or techniques of scientific instruments disclosed herein may include any suitable GUI for user interaction.
[0057] Figure 10 shows an exemplary graphical user interface 1000 (hereinafter, "GUI 1000") that may be used in some or all implementations of the support methods or techniques disclosed herein according to various embodiments. In various embodiments, GUI 1000 can be provided on a scientific instrument support system (e.g., scientific instrument support system 1200, as discussed herein, referring to Figure 12) of a computing device (e.g., computing device 1100, as discussed herein, referring to Figure 11) of any suitable electronic display (e.g., display device 1110, as discussed herein, referring to Figure 11), and a user or technician can interact with GUI 1000 using any suitable input device (e.g., any other I / O device 1112, as discussed herein, referring to Figure 11), and input techniques (e.g., cursor movement, motion capture, face recognition, gesture detection, voice recognition, button activation, etc.).
[0058] The GUI 1100 may include a data display area 1102, a data analysis area 1104, a scientific instrument control area 1106, and a setting area 1108. The specific number and arrangement of areas shown in Figure 11 are illustrative only, and any number and arrangement of areas containing any desired features may be included in other embodiments of the GUI 1100.
[0059] The data display area 1102 can display data generated by a scientific instrument (for example, the scientific instrument 1210 discussed herein, with reference to Figure 12). For example, the data display area 1102 can display one or more measured fragmentation spectra and / or annotated ion peaks.
[0060] The data analysis area 1004 may display the results of any appropriate data analysis (e.g., the results of analyzing the data shown in the data display area 1002 or other data). For example, the data analysis area 1004 may display electronic notifications generated by the annotation component 314 and / or the looping component 316. In some embodiments, the data display area 1102 and the data analysis area 1104 may be combined in the GUI 1000 (e.g., to include both data outputs from scientific instruments and partial data analysis in a common graph or area).
[0061] The scientific instrument control area 1006 may include options that enable a user or technician to control the scientific instrument (for example, the scientific instrument 1210 discussed herein, with reference to Figure 12). For example, the scientific instrument control area 1006 may include configurable parameters that control the operation of such a scientific instrument (for example, configurable parameters that control the voltage or current of the scientific instrument, configurable parameters that control the internal temperature of the scientific instrument, or configurable parameters that control the fluid flow velocity of the scientific instrument).
[0062] The configuration area 1008 may include options that allow a user or technician to control the features and functions of GUI 1000 (or other GUIs), or to perform common computing operations relating to the data display area 1002 and the data analysis area 1004 (for example, storing data on a storage device, such as the storage device 1104 discussed herein with reference to Figure 11, transmitting data to another user, labeling data, etc.).
[0063] As described above, the scientific instrument module 100 can be implemented by one or more computing devices. Figure 11 is a block diagram of a computing device 1100 that can carry out some or all of the scientific instrument methods or techniques disclosed herein in various embodiments. In some embodiments, the scientific instrument module 100 can be implemented by a single computing device 1100 or by multiple computing devices 1100. Furthermore, as will be discussed below, the computing device 1100 (or multiple examples thereof) implementing the scientific instrument module 100 may be part of one or more of the scientific instrument 1210, user-local computing device 1220, service-local computing device 1230, or remote computing device 1240 in Figure 12.
[0064] The computing device 1100 is illustrated as having several components, but one or more of these components may be omitted or duplicated to suit the application and configuration. In some embodiments, some or all of the components included in the computing device 1100 may be mounted on one or more motherboards and enclosed in a housing (including, for example, plastic, metal, or other material). In some embodiments, these components can be manufactured on a single system-on-a-chip (SoC) (for example, the SoC may include one or more processing devices 1102 and one or more storage devices 1104). Furthermore, in various embodiments, the computing device 1100 may omit one or more of the components shown in Figure 11, but may include interface circuits (not shown) for connecting the omitted one or more components using any suitable interface (e.g., a Universal Serial Bus (USB) interface, a High-Definition Multimedia Interface (HDMI®) interface, a Controller Area Network (CAN) interface, a Serial Peripheral Interface (SPI) interface, an Ethernet interface, a wireless interface, or other suitable interface). For example, the computing device 1100 may omit the display device 1110, but may include a display device interface circuit (e.g., a connector and driver circuit) that allows the display device 1110 to be connected.
[0065] The computing device 1100 may include processing devices 1102 (e.g., one or more processing devices). As used herein, the term “processing device” may refer to any device or part of a device that processes electronic data from registers or memory and converts that electronic data into other electronic data that can be stored in registers or memory. The processing device 1102 may include one or more digital signal processors (DSPs), application-specific integrated circuits (ASICs), central processing units (CPUs), graphics processing units (GPUs), cryptographic processors (dedicated processors that execute cryptographic algorithms in hardware), server processors, or any other suitable processing devices.
[0066] The computing device 1100 may also include a storage device 1104 (e.g., one or more storage devices). The storage device 1104 may include one or more memory devices, such as random access memory (RAM) (e.g., static RAM (SRAM) devices, magnetic RAM (MRAM) devices, dynamic RAM (DRAM) devices, resistive RAM (RRAM) devices, or conductive bridge RAM (CBRAM) devices), hard drive-based memory devices, solid-state memory devices, network drives, cloud drives, or any combination of memory devices. In some embodiments, the storage device 1104 may include memory that shares a die with the processing device 1102. In such embodiments, the memory may be used as cache memory and may include, for example, embedded dynamic random access memory (eDRAM) or spin-transfer torque magnetic random access memory (STT-MRAM). In some embodiments, the storage device 1104 may include a non-temporary computer-readable medium having instructions that, when executed by one or more processing devices (e.g., processing device 1102), cause the computing device 1100 to perform any suitable method or part of any of the methods disclosed herein.
[0067] The computing device 1100 may include an interface device 1106 (for example, one or more interface devices 1106). The interface device 1106 may include one or more communication chips, connectors, or other hardware and software to manage communication between the computing device 1100 and other computing devices. For example, the interface device 1106 may include a circuit that manages wireless communication for transferring data to and from the computing device 1100. The term “wireless” and its derivatives may be used to describe circuits, devices, systems, methods, techniques, communication channels, etc., that can communicate data through the use of modulated electromagnetic radiation over a non-solid medium. This term does not mean that the devices in question do not include any wiring, although in some embodiments they may not. The circuitry included in the interface device 1106 for managing wireless communication can implement any of several wireless standards or protocols, including, but are not limited to, Wi-Fi (IEEE 802.11 family), IEEE standards including the IEEE 802.8 standard (e.g., IEEE 802.8-2005 Amendment), and Long-Term Evolution (LTE) projects with any modifications, updates, and / or revisions (e.g., the Advanced LTE project, the Ultra-Mobile Broadband (UMB) project (also known as "3GPP®2")). In some embodiments, the circuitry included in the interface device 1106 for managing wireless communication may operate according to a Global System for Mobile Communications (GSM), General-Purpose Packet Radio Service (GPRS), Universal Mobile Telecommunications System (UMTS), High-Speed Packet Access (HSPA), Evolved HSPA (E-HSPA), or LTE network.In some embodiments, the circuitry included in the interface device 1106 for managing wireless communication may operate according to GSM Evolutionary High-Speed Data (EDGE), GSM EDGE Radio Access Network (GERAN), Universal Terrestrial Radio Access Network (UTRAN), or Evolutionary UTRAN (E-UTRAN). In some embodiments, the circuitry included in the interface device 1106 for managing wireless communication may operate according to Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Digital Extended Cordless Communications (DECT), Evolutionary Data Optimization (EV-DO), and their derivatives, as well as any other radio protocols designated as 3G, 4G, 5G, and later. In some embodiments, the interface device 1106 may include one or more antennas (e.g., one or more antenna arrays) for receiving and / or transmitting wireless communication.
[0068] In some embodiments, the interface device 1106 may include circuitry for managing wired communications, such as electrical, optical, or any other suitable communication protocol. For example, the interface device 1106 may include circuitry that supports communications according to Ethernet technology. In some embodiments, the interface device 1106 may support both wireless and wired communications and may support multiple wired communication protocols or multiple wireless communication protocols. For example, a first set of the interface device 1106's network may be dedicated to short-range wireless communications such as Wi-Fi or Bluetooth®, and a second set of the interface device 1106's circuitry may be dedicated to long-range wireless communications such as Global Positioning System (GPS), EDGE, GPRS, CDMA, WiMAX, LTE, or EV-DO. In some embodiments, a first set of the interface device 1106's circuitry may be dedicated to wireless communications, and a second set of the interface device 1106's circuitry may be dedicated to wired communications.
[0069] The computing device 1100 may include a battery / power circuit 1108. The battery / power circuit 1108 may include one or more energy storage devices (e.g., batteries or capacitors), or a circuit for coupling components of the computing device 1100 to an energy source separate from the computing device 1100 (e.g., AC line power).
[0070] The computing device 1100 may include a display device 1110 (for example, multiple display devices). The display device 1110 may include any visual indicator such as a head-up display, computer monitor, projector, touchscreen display, liquid crystal display (LCD), light-emitting diode display, or flat panel display.
[0071] The computing device 1100 may include other input / output (I / O) devices 1112. These other I / O devices 1112 may include, for example, one or more audio output devices (e.g., speakers, headsets, earphones, alarms, etc.), one or more audio input devices (e.g., microphones or microphone arrays), location devices (e.g., GPS devices that communicate with a satellite-based system to receive the location of the computing device 1100), audio codecs, video codecs, printers, sensors (e.g., thermocouples or other temperature sensors, humidity sensors, pressure sensors, vibration sensors, accelerometers, gyroscopes, etc.), image capture devices such as cameras, keyboards, cursor control devices (e.g., mice, styluses, trackballs, or touchpads), barcode readers, quick response (QR) code readers, or radio frequency identification (RFID) readers.
[0072] The computing device 1100 may have any suitable form factor for such use and configuration, such as a handheld or mobile computing device (e.g., a cell phone, smartphone, mobile internet device, tablet computer, laptop computer, netbook computer, ultrabook computer, personal digital assistant (PDA), ultramobile personal computer, etc.), a desktop computing device or server computing device, or other network computing component.
[0073] One or more computing devices implementing any of the scientific instrument module methods or techniques disclosed herein may be part of a scientific instrument support system. Figure 12 is a block diagram of an exemplary scientific instrument support system 1200 that enables some or all of the scientific instrument support methods disclosed herein according to various embodiments. The scientific instrument modules, methods, and techniques disclosed herein (e.g., scientific instrument module 100, computer implementation method 200, annotation system 308) can be implemented by one or more of the scientific instrument 1210, user local computing device 1220, service local computing device 1230, or remote computing device 1240 of the scientific instrument support system 1200.
[0074] Any of the scientific instrument 1210, user local computing device 1220, service local computing device 1230, or remote computing device 1240 may include any embodiment of computing device 1100, and any of the scientific instrument 1210, user local computing device 1220, service local computing device 1230, or remote computing device 1240 may take any suitable form of an embodiment of computing device 1100.
[0075] The scientific instrument 1210, the user local computing device 1220, the service local computing device 1230, or the remote computing device 1240 may each include a processing device 1202, a storage device 1204, and an interface device 1206. The processing device 1202 can take any suitable form, including any form of the processing device 1102, and the processing device 1202 included in different scientific instruments 1210, the user local computing device 1220, the service local computing device 1230, or the remote computing device 1240 may take the same or different forms. The storage device 1204 can take any suitable form, including any form of the interface device 1104, and the interface device 1204 included in different scientific instruments 1210, the user local computing device 1220, the service local computing device 1230, or the remote computing device 1240 may take the same or different forms. Interface device 1206 can take any suitable form, including any form of interface device 1106, and interface device 1206 included in different of the scientific instrument 1210, user local computing device 1220, service local computing device 1230, or remote computing device 1240 can take the same or different forms.
[0076] The scientific instrument 1210, the user local computing device 1220, the service local computing device 1230, and the remote computing device 1240 may communicate with other elements of the scientific instrument support system 1200 via a communication path 1208. The communication path 1208 may be communicably coupled to interface devices 1206 of different elements of the scientific instrument support system 1200, as illustrated, and may be a wired or wireless communication path (for example, according to any of the communication techniques discussed herein with reference to interface device 1106). The particular scientific instrument support system 1200 shown in Figure 12 includes communication paths between each pair of scientific instruments 1210, user local computing device 1220, service local computing device 1230, and remote computing device 1240, but this “fully connected” implementation is illustrative only, and various types of communication paths 1208 may not exist in various embodiments. For example, in some embodiments, the service local computing device 1230 may not have a direct communication path 1208 between its interface device 1206 and the interface device 1206 of the scientific instrument 1210. Instead, it may communicate with the scientific instrument 1210 via the communication path 1208 between the service local computing device 1230 and the user local computing device 1220, and the communication path 1208 between the user local computing device 1220 and the scientific instrument 1210.
[0077] Scientific instrument 1210 may include any suitable scientific instrument such as scientific instrument 302.
[0078] The user-local computing device 1220 may be a computing device that is local to the user of the scientific instrument 1210 (for example, according to any embodiment of the computing device 1100 described herein). In some embodiments, the user-local computing device 1220 may also be local to the scientific instrument 1210, but does not have to be. For example, the user-local computing device 1220 located in the user's home or office may be remote from the scientific instrument 1210, but communicate with it, so that the user can use the user-local computing device 1220 to control or access data from the scientific instrument 1210. In some embodiments, the user-local computing device 1220 may be a laptop computer, smartphone, or tablet device. In some embodiments, the user-local computing device 1220 may be a portable computing device.
[0079] The service local computing device 1230 may be a computing device that is local to an entity providing services to the scientific instrument 1210 (for example, according to any embodiment of the computing device 1100 described herein). For example, the service local computing device 1230 may be local to the manufacturer of the scientific instrument 1210 or to a third-party service company. In some embodiments, the service local computing device 1230 may communicate with the scientific instrument 1210, the user local computing device 1220, or the remote computing device 1240 (for example, via a direct communication path 1208 or via a plurality of “indirect” communication paths 1208 as described above) to receive data relating to the operation of the scientific instrument 1210, the user local computing device 1220, or the remote computing device 1240 (for example, the results of a self-test of the scientific instrument 1210, calibration coefficients used in the scientific instrument 1210, and measurements of sensors associated with the scientific instrument 1210). In some embodiments, the service local computing device 1230 may communicate with the scientific instrument 1210, the user local computing device 1220, and / or the remote computing device 1240 (for example, via a direct communication path 1208 or a plurality of “indirect” communication paths 1208, as discussed above) to transmit data to the scientific instrument 1210, the user local computing device 1220, or the remote computing device 1240 (for example, to update programmed instructions such as firmware in the scientific instrument 1210, to initiate the execution of a test or calibration sequence in the scientific instrument 1210, or to update programmed instructions such as software in the user local computing device 1220 or the remote computing device 1240).Users of the scientific instrument 1210 may communicate with the service local computing device 1230 to report problems with the scientific instrument 1210 or the user local computing device 1220, to request a visit from a technician to improve the operation of the scientific instrument 1210, to order consumables or replacement parts associated with the scientific instrument 1210, or for other purposes.
[0080] The remote computing device 1240 may be a computing device located away from the scientific instrument 1210 or the user local computing device 1220 (for example, according to one of the embodiments of the computing device 1100 considered herein). In some embodiments, the remote computing device 1240 may be included in a data center or other large-scale server environment. In some embodiments, the remote computing device 1240 may include network-attached storage (for example, as part of storage device 1204). The remote computing device 1240 can store data generated by the scientific instrument 1210, perform analysis of the data generated by the scientific instrument 1210 (for example, according to programmed instructions), facilitate communication between the user local computing device 1220 and the scientific instrument 1210, and facilitate communication between the service local computing device 1230 and the scientific instrument 1210.
[0081] In some embodiments, one or more elements of the scientific instrument support system 1200 illustrated in Figure 12 may be excluded. Furthermore, in some embodiments, there may be multiple variations of the elements of the scientific instrument support system 1200 in Figure 12. For example, the scientific instrument support system 1200 may include multiple user local computing devices 1220 (e.g., different user local computing devices 1220 associated with different users or located in different places). In another example, the scientific instrument support system 1200 may include multiple scientific instruments 1210, all communicating with a service local computing device 1230 and / or a remote computing device 1240. In such embodiments, the service local computing device 1230 may monitor these multiple scientific instruments 1210, and the service local computing device 1230 may "broadcast" updates or other information to the multiple scientific instruments 1210 simultaneously. Different scientific instruments 1210 within the scientific instrument support system 1200 may be located close to each other (e.g., in the same room) or far apart from each other (e.g., on different floors of a building, in different buildings, in different cities, etc.). In some embodiments, the scientific instrument 1210 may be connected to an Internet of Things (IoT) stack that enables instruction and control of the scientific instrument 1210 through a web-based application, a virtual or augmented reality application, a mobile application, or a desktop application. Any of these applications may be accessed by a user operating a user-local computing device 1220 that communicates with the scientific instrument 1210 via an intervening remote computing device 1240. In some embodiments, the scientific instrument 1210 may be sold by the manufacturer as part of a scientific instrument computing unit 1212, together with one or more associated user-local computing devices 1220.
[0082] In some embodiments, the multiple scientific instruments 1210 included in the scientific instrument support system 1200 may be of different types, for example, one scientific instrument 1210 may be a mass spectrometer and another scientific instrument 1210 may be a chromatograph. In some such embodiments, a remote computing device 1240 or a user-local computing device 1220 may combine data from different types of scientific instruments 1210 included in the scientific instrument support system 1200.
[0083] In various cases, machine learning algorithms or models can be implemented in any suitable manner to facilitate the appropriate embodiments described herein. To facilitate some of the above embodiments of machine learning in various embodiments, consider the following description of artificial intelligence (AI). Various embodiments described herein can use artificial intelligence to facilitate the automation of one or more features or functionalities. Components can use various AI-based schemes to carry out the various embodiments / examples disclosed herein. To provide or assist in many of the decisions described herein (e.g., decisions, confirmations, inferences, calculations, predictions, forecasts, estimations, derivations, foresights, detections, computations), components described herein can examine all or a subset of data to which they are permitted access and infer or determine the state of a system or environment from a set of observations obtained through events or data. Decisions can be used to identify specific situations or actions, and can also generate, for example, probability distributions between states. Decisions can be probabilistic; that is, they compute probability distributions for interesting states based on considerations of data and events. Decisions can also refer to techniques used to construct higher-level events from a set of events or data.
[0084] Such decisions may generate new events or actions from an observed set of events or memorized event data, regardless of whether the events are temporally close and correlated, or whether the events and data are derived from one or more event and data sources. The components disclosed herein are used in relation to various classification schemes or systems (e.g., support vector systems, neural networks, expert systems, Bayesian belief networks, fuzzy logic, data fusion engines, etc.) that are explicitly trained (e.g., via training data) and implicitly trained (e.g., via observation of behavior, preferences, historical information, receipt of external information, etc.) to perform actions automatically or determined in relation to the claimed subject. Thus, many functions, evaluations, or decisions can be automatically learned and performed using classification schemes or systems.
[0085] A classifier can map an input attribute vector, z=(z1,z2,z3,z4,zn), to a confidence level of whether the input belongs to a class, such as f(z)=confidence level (class). Such classifications can automatically determine the actions to take using probabilistic or statistical analysis (e.g., factoring the usefulness and cost of the analysis). A Support Vector Machine (SVM) is one example of a usable classifier. The SVM works by finding a hypersurface in the input space, which attempts to separate trigger criteria from non-trigger events. Intuitively, this allows for the correct classification of test data that is similar to but not identical to the training data. Other directed and undirected model classification approaches that offer different isolation patterns include, for example, Naive Bayes, Bayesian networks, decision trees, neural networks, fuzzy logic models, or probabilistic classification models, any of which can be used. Classifications used herein also include statistical regression used to develop priority models.
[0086] To provide additional context for the various embodiments described herein, Figure 10 and the following discussion are intended to provide a brief and general description of a suitable computing environment 1000 that can implement various embodiments of the embodiments described herein. While the embodiments have been described in the general context of computer executable instructions that can run on one or more computers, those skilled in the art will recognize that these embodiments can also be implemented in combination with other program modules or as a combination of hardware and software.
[0087] Generally, a program module includes routines, programs, components, data structures, etc., that perform a specific task or implement a specific abstract data type. Furthermore, as those skilled in the art will know, the method of the present invention can be used in conjunction with one or more related devices, each including single-processor or multi-processor computer systems, minicomputers, mainframe computers, Internet of Things (IoT) devices, distributed computing systems, and personal computers, portable computing devices, microprocessor-based electronic devices, and programmable consumer electronic devices.
[0088] The illustrated embodiments of the embodiments described herein can also be implemented in a distributed computing environment in which specific tasks are performed by remote processing devices linked via a communication network. In a distributed computing environment, program modules can be located on both local and remote memory storage devices.
[0089] Computing devices typically include a variety of media, which may include computer-readable storage media, machine-readable storage media, or communication media, and these two terms are used herein to distinguish them from one another as follows: Computer-readable storage media or machine-readable storage media can be any available storage media that can be accessed by a computer, and include both volatile and non-volatile media, removable and non-removable media. By example, but not by limitation, computer-readable storage media or machine-readable storage media can be implemented in relation to any method or technique for storing information such as computer-readable or machine-readable instructions, program modules, structured data, or unstructured data.
[0090] Computer-readable storage media may include, but are not limited to, random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, compact disc read-only memory (CD-ROM), digital versatile disc (DVD), Blu-ray disc (BD) or other optical disc storage devices, magnetic cassettes, magnetic tapes, magnetic disk storage devices or other magnetic storage devices, solid-state drives or other solid-state storage devices, or other tangible or non-temporary media that can be used to store desired information. In this regard, the terms “tangible” or “non-temporary” as applied herein to storage media, memory media or computer-readable media exclude only the temporary signals themselves that propagate as modifiers, and do not waive any rights to all standard storage media, memory media or computer-readable media that do not merely propagate the temporary signals themselves.
[0091] A computer-readable storage medium can be accessed by one or more local or remote computing devices, for example, through access requests, queries, or other data retrieval protocols, and various operations can be performed on the information stored on that medium.
[0092] Communication media typically include any information distribution or transmission medium that embodies computer-readable instructions, data structures, program modules, or other structured or unstructured data in the form of data signals, such as modulated data signals, such as carrier waves or other transmission mechanisms. The term “modulated data signal” or “signal” refers to a signal in which one or more of its characteristics are set or modified to encode one or more pieces of information within the signal. By example, but not limited to, communication media include wired media such as wired networks or direct wired connections, as well as wireless media such as acoustic, RF, infrared, and other wireless media.
[0093] Referring again to Figure 13, an exemplary environment 1300 for implementing various embodiments of the embodiments described herein includes a computer 1302, a processing unit 1304, system memory 1306, and a system bus 1308. The system bus 1308 connects system components, including but not limited to the system memory 1306, to the processing unit 1304. The processing unit 1304 can be any of various commercially available processors. Dual microprocessors and other multiprocessor architectures can also be used as the processing unit 1304.
[0094] The system bus 1308 can be one of several types of bus structures that can further interconnect with memory buses, peripheral buses, and local buses (with or without a memory controller) using any of various commercially available bus architectures. The system memory 1306 includes ROM 1313 and RAM 1312. The basic input / output system (BIOS) can store information in non-volatile memory such as ROM, erasable programmable read-only memory (EPROM), and EEPROM, and the BIOS includes basic routines that help transfer information between elements within the computer 1302, such as during startup. RAM 1312 may also include high-speed RAM such as static RAM for caching data.
[0095] Computer 1302 further includes an internal hard disk drive (HDD) 1314 (e.g., EIDE, SATA), one or more external storage devices 1316 (e.g., magnetic floppy disk drives (FDDs) 1316, memory stick or flash drive readers, memory card readers, etc.), and drives 1320 capable of reading from or writing to disks 1322 such as CD-ROMs, DVDs, and BDs, e.g., solid-state drives, optical disc drives, etc. Alternatively, if a solid-state drive is included, disks 1322 are not included unless otherwise specified. Although the internal HDD 1314 is shown as being located within computer 1302, the internal HDD 1314 can also be configured for external use in a suitable chassis (not shown). Furthermore, although not shown in environment 1300, a solid-state drive (SSD) can be used in addition to or instead of the HDD 1314. The HDD 1314, external storage device 1316, and drive 1320 are connectable to the system bus 1308 via the HDD interface 1324, external storage interface 1326, and drive interface 1328, respectively. Interface 1324 for external drive implementation may include at least one or both of the Universal Serial Bus (USB) and the Institute of Electrical and Electronics Engineers (IEEE) 1394 interface technology. Other external drive connection technologies are within the considerations of the embodiments described herein.
[0096] Drives and their associated computer-readable storage media provide non-volatile storage such as data, data structures, and computer-executable instructions. In the case of computer 1302, the drives and storage media are adapted for storing any data in a suitable digital format. While the above description of computer-readable storage media refers to each type of storage device, those skilled in the art will know that other types of computer-readable storage media, whether currently existing or to be developed in the future, can also be used in the exemplary operating environment, and furthermore, any such storage media can contain computer-executable instructions for performing the methods described herein.
[0097] The drive and RAM 1312 can store many program modules, including an operating system 1330, one or more application programs 1332, other program modules 1334, and program data 1336. All or part of the operating system, applications, modules, or data can also be cached in RAM 1312. The systems and methods described herein can be implemented using various commercially available operating systems or combinations of operating systems.
[0098] Computer 1302 may optionally include emulation techniques. For example, a hypervisor (not shown) or other intermediary may emulate the hardware environment of operating system 1330, and the emulated hardware may optionally differ from the hardware shown in Figure 13. In such embodiments, operating system 1330 may include one VM from a plurality of virtual machines (VMs) hosted on computer 1302. Furthermore, operating system 1330 may provide an application 1332 with a runtime environment such as a Java runtime environment or a .NET framework. The runtime environment is a consistent execution environment that enables application 1332 to run on any operating system that includes the runtime environment. Similarly, operating system 1330 may support containers, and application 1332 may take the form of a container, which is a lightweight, standalone, executable package of software including, for example, code, runtime, system tools, system libraries, and application configuration.
[0099] Furthermore, computer 1302 can be enabled with security modules such as a Trusted Processing Module (TPM). For example, in a TPM, the boot component then hashs the next boot component in a timed manner and waits for the result to match a secure value before loading the next boot component. This process can be applied at any layer in the code execution stack of computer 1302, for example, at the application run level or the operating system (OS) kernel level, thereby enabling security at any level of code execution.
[0100] The user can input instructions and information to the computer 1302 via one or more wired / wireless input devices, such as a keyboard 1338, a touchscreen 1340, or a mouse 1342. Other input devices (not shown) may include a microphone, an infrared (IR) remote control, a radio frequency (RF) remote control, or other remote control, a joystick, a virtual reality controller or virtual reality headset, a gamepad, a stylus pen, an image input device such as a camera, a gesture sensor input device, a visual-motor sensor input device, an emotion or face detection device, or a biometric input device such as a fingerprint or iris scanner. These and other input devices are often connected to the processing unit 1304 via an input device interface 1344 that can be coupled to the system bus 1308, but can also be connected via other interfaces such as a parallel port, an IEEE 1394 serial port, a game port, a USB port, an IR interface, or a BLUETOOTH® interface.
[0101] Monitor 1346 or other types of display devices can also be connected to the system bus 1308 via an interface such as a video adapter 1348. In addition to monitor 1346, a computer typically includes other peripheral output devices (not shown), such as speakers and printers.
[0102] Computer 1302 can operate in a network environment using logic connections via wired or wireless communication to one or more remote computers, such as remote computers 1350. The remote computers 1350 can be workstations, server computers, routers, personal computers, portable computers, microprocessor-based entertainment appliances, peer devices, or other common network nodes, and typically include many or all of the elements described with respect to computer 1302, but for brevity, only the memory / storage device 1352 is shown. The illustrated logic connections include wired / wireless connections to a local area network (LAN) 1354 or a wide area network (e.g., a wide area network (WAN) 1356). Such LAN and WAN networking environments are common in offices and enterprises, facilitating enterprise-scale computer networks such as intranets, all of which can connect to global communication networks such as the Internet.
[0103] When used in a LAN networking environment, computer 1302 can connect to LAN 1354 via a wired or wireless network interface or adapter 1358. Adapter 1358 facilitates wired or wireless communication to LAN 1354, and LAN may also include a wireless access point (AP) placed on it to communicate with adapter 1358 in wireless mode.
[0104] When used in a WAN networking environment, computer 1302 may include a modem 1360 or connect to a communication server on the WAN 1356 via other means for establishing communication over the WAN 1356, such as the Internet. The modem 1360 may be internal or external and wired or wireless and may connect to the system bus 1308 via an input device interface 1344. In a networked environment, program modules shown with respect to computer 1302 or a part thereof may be stored in a remote memory / storage device 1352. It will be understood that the illustrated network connection is illustrative and other means for establishing communication links between computers may be used.
[0105] When used in either a LAN or WAN network environment, computer 1302 can access a cloud storage system or other network-based storage system, such as a network virtual machine that provides one or more modes of storing or processing information, in addition to, or instead of, the external storage device 1316 described above. Generally, the connection between computer 1302 and the cloud storage system can be established via LAN 1354 or WAN 1356, for example, by an adapter 1358 or modem 1360, respectively. When computer 1302 is connected to the relevant cloud storage system, the external storage interface 1326 can manage the storage devices provided by the cloud storage system, similar to other types of external storage devices, with the assistance of the adapter 1358 or modem 1360. For example, the external storage interface 1326 can be configured to provide access to the cloud storage sources as if those sources were physically connected to computer 1302.
[0106] Computer 1302 may be capable of communicating with any wireless device or entity configured to operate wirelessly, such as a printer, scanner, desktop or portable computer, portable data assistant, communications satellite, any part or location of equipment associated with a wirelessly discoverable tag (e.g., kiosk, newsstand, product shelf, etc.), and a telephone. This may include Wireless Fidelity (Wi-Fi) and Bluetooth® wireless technologies. Thus, the communication may be a predefined structure similar to existing networks, or simply ad-hoc communication between at least two devices.
[0107] Various non-limiting forms are illustrated in the following examples.
[0108] Example 1. A system comprising a mass spectrometer that generates a fragmentation spectrum from a sample, and a process that executes a computer executable component stored in non-temporary computer-readable memory, wherein the computer executable component is an annotation component that generates an annotated portion of a fragmentation spectrum based on annotated ion peaks of a previously removed fragmentation spectrum, the annotated portion of the fragmentation spectrum being annotated as belonging to a first molecular structure, and a looping component that removes the annotated ion peaks from the fragmentation spectrum and resubmits the fragmentation spectrum to the annotation component for one or more additional iterations of annotation.
[0109] Example 2: The system of any of the preceding examples can be implemented, and the looping component further verifies whether the defined search criteria are met, and in response to the defined search criteria being met, terminates the annotation of the fragmentation spectrum.
[0110] Example 3: The system of the preceding example can be implemented, and the defined search criteria consist of at least one of the following: a defined number of annotation iterations, a defined time duration, a defined number of annotated ion peaks, a defined percentage of the total number of annotated ion peaks, or a similarity index based on a comparison between the fragmentation spectrum and the fragmentation spectrum of a known compound.
[0111] Example 4: The system of any of the preceding examples can be implemented, and the generation of annotated portions of the fragmentation spectrum follows these steps: comparing one or more ion peaks of the fragmentation spectrum with one or more ion peaks of one or more possible matching fragmentation patterns stored in a pattern library, the pattern library storing fragmentation patterns of one or more known compounds; selecting a matching fragmentation pattern from one or more possible matching fragmentation patterns; and marking one or more matching ion peaks of the fragmentation spectrum as belonging to a molecular substructure associated with the matching fragmentation pattern.
[0112] Example 5: The system of any of the preceding embodiments further comprises: an annotation machine learning model that selects a matching fragmentation pattern from one or more possible matching fragmentation patterns; and a training component that trains the annotation machine learning model, wherein the training includes: using the annotation machine learning model to generate an annotated fragmentation spectrum of a known sample; comparing the annotated fragmentation spectrum with the fragmentation pattern of the known sample; and updating the annotation machine learning model based on the results of the comparison.
[0113] Example 6: The system of any of the preceding embodiments can be implemented, and the mass spectrometer includes at least one of a quadrupole mass spectrometer, an orbitrap mass spectrometer, a time-of-flight mass spectrometer, or an asymmetric track lossless mass spectrometer.
[0114] In various embodiments, any one or more combinations of Examples 1 to 6 can be implemented.
[0115] Example 7: A computer-aided method comprising: annotating one or more ion peaks of a fragmentation spectrum as belonging to a first molecular substructure using a device operably coupled to a processor; removing the annotated ion peaks from the fragmentation spectrum using the device; and annotating one or more remaining ion peaks of the fragmentation spectrum as belonging to a second molecular substructure using the device, based on the removed annotated ion peaks.
[0116] Example 8: A computer implementation of any of the preceding embodiments may be implemented to further include: the device verifies whether a defined search criterion is met, and in response to the lack of a defined search criterion being met, the device resubmits the fragmentation spectrum for one or more additional iterations of annotation.
[0117] Example 9: The system of any of the preceding examples can be implemented, and the defined search criteria consist of at least one of the following: a defined number of annotation iterations, a defined time duration, a defined number of annotated ion peaks, a defined percentage of the total number of annotated ion peaks, and a similarity index based on a comparison between the fragmentation spectrum and the fragmentation spectrum of a known compound.
[0118] Example 10: A computerized implementation of any of the preceding embodiments may be implemented to further include: generating the fragmentation spectrum from a sample using a scientific instrument, the scientific instrument comprising a mass spectrometer and fragmentation techniques.
[0119] Example 11: A computer implementation method of any of the preceding embodiments can be implemented, the fragmentation technique comprising at least one of collision-induced dissociation, high-energy collision dissociation, electron transfer dissociation, electron capture dissociation, or ultraviolet photodissociation.
[0120] Example 12: A computer-aided implementation of any of the preceding examples can be implemented, and the annotation comprises one of the following: comparing one or more ion peaks of a fragmentation spectrum with one or more ion peaks of one or more possible matching fragmentation patterns stored in a pattern library, the pattern library storing fragmentation patterns of one or more known compounds; selecting a matching fragmentation pattern from one or more possible matching fragmentation patterns by the device; and marking one or more matching ion peaks of the fragmentation spectrum by the device as belonging to a molecular substructure associated with the matching fragmentation pattern.
[0121] Example 13: A computer implementation method of any of the preceding examples can be implemented, and the selection of matching fragmentation patterns is based on at least one scoring algorithm, one or more defined matching criteria, and one or more hierarchical relationships between molecular compounds.
[0122] Example 14: A computer-implemented method of any of the preceding examples can be implemented, further configured, and trained by the device to select an annotated learning model for selecting a matching fragmentation pattern from one or more possible matching fragmentation patterns, the training of which includes: generating an annotated fragmentation spectrum of a known sample by the device using the annotated machine learning model; comparing the annotated fragmentation spectrum with the fragmentation pattern of the known sample; and updating the annotated machine learning model by the device based on the results of the comparison.
[0123] In various embodiments, any one or more combinations of Examples 7 to 14 can be implemented.
[0124] Example 15: A computer program product comprising non-temporary computer-readable memory in which program instructions are materialized, wherein the program instructions are executable by a computer, and the computer performs the following: annotates one or more ion peaks of a fragmentation spectrum as belonging to a first molecular substructure; removes the annotated ion peaks from the fragmentation spectrum; and, based on the removed annotated ion peaks, annotates one or more remaining ion peaks of the fragmentation spectrum as belonging to a second molecular substructure.
[0125] Example 16: A computer program product of any of the preceding embodiments can be implemented, and the program instructions executed by the processor cause the processor to further: check whether a defined search criterion is met by the device, and in response that the defined search criterion is not met, the fragmentation spectrum is resubmitted for one or more additional iterations of annotation.
[0126] Example 17: A computer program product of any of the preceding embodiments can be implemented, and the processor is instructed by program instructions to perform the following: to generate the fragmentation spectrum from a sample using a scientific instrument, the scientific instrument comprising a mass spectrometer and fragmentation techniques.
[0127] Example 18: A computer-aided method of any of the preceding examples can be implemented, and the annotation comprises one of the following: comparing one or more ion peaks of a fragmentation spectrum with one or more ion peaks of one or more possible matching fragmentation patterns stored in a pattern library, the pattern library storing fragmentation patterns of one or more known compounds; selecting a matching fragmentation pattern from one or more possible matching fragmentation patterns; and marking one or more matching ion peaks of a fragmentation spectrum as belonging to a molecular substructure associated with the matching fragmentation pattern.
[0128] Example 19: A computer implementation method of any of the preceding examples can be implemented, in which the selection of matching fragmentation patterns is based on at least one scoring algorithm, one or more defined matching criteria, and one or more hierarchical relationships between molecular compounds.
[0129] Example 20: The computer program product of any of the preceding embodiments can be implemented, wherein the processor trains an annotation machine learning model to select a matching fragmentation pattern from one or more possible matching fragmentation patterns, and the training consists of: using the annotation machine learning model to generate an annotated fragmentation spectrum of a known sample; comparing the annotated fragmentation spectrum with the fragmentation pattern of the known sample; and updating the annotation machine learning model based on the results of the comparison.
[0130] In various embodiments, any one or more combinations of Examples 15 to 20 can be implemented.
[0131] In various embodiments, any one or more combinations of Examples 1 to 20 can be implemented.
Claims
1. It is a system, A mass spectrometer that generates a fragmentation spectrum from a sample, A processor that executes computer executable components stored in non-temporary computer-readable memory, The aforementioned computer executable component is An annotation component that generates an annotated portion of the fragmentation spectrum based on previously removed annotated ion peaks of the fragmentation spectrum, wherein the annotated portion of the fragmentation spectrum includes one or more ion peaks that are annotated as belonging to a first molecular structure, A system comprising: a looping component that removes the annotated ion peaks from the fragmentation spectrum and resubmits the fragmentation spectrum to the annotating component for one or more additional iterations of the annotation.
2. The system according to claim 1, wherein the looping component further checks whether a defined search criterion is met, and in response that the defined search criterion is met, terminates the annotation of the fragmentation spectrum.
3. The system according to claim 2, wherein the defined search criteria include at least one of a defined number of annotation iterations, a defined time duration, a defined number of annotated ion peaks, a defined percentage of the total number of annotated ion peaks, or a similarity index based on a comparison between the fragmentation spectrum and the fragmentation spectrum of a known compound.
4. The annotated portion of the fragmentation spectrum is generated as follows: The process involves comparing one or more ion peaks of the aforementioned fragmentation spectrum with one or more ion peaks of one or more possible matching fragmentation patterns stored in a pattern library that stores fragmentation patterns of one or more known compounds, Selecting a matching fragmentation pattern from the one or more possible matching fragmentation patterns, The system according to claim 1, comprising marking one or more matching ion peaks of the fragmentation spectrum as belonging to a molecular substructure associated with the matching fragmentation pattern.
5. The aforementioned computer executable component, An annotation machine learning model that selects the matching fragmentation pattern from the one or more possible matching fragmentation patterns, The training component further comprises the aforementioned annotation machine learning model, The aforementioned training, Using the aforementioned annotation machine learning model, annotated fragmentation spectra of known samples are generated, The annotated fragmentation spectrum is compared with the fragmentation pattern of the known sample, The system according to claim 4, further comprising updating the annotated machine learning model based on the results of the comparison.
6. The system according to claim 1, wherein the mass spectrometer includes at least one of a quadrupole mass spectrometer, an orbit trap mass spectrometer, a time-of-flight mass spectrometer, or an asymmetric track lossless mass spectrometer.
7. A computer implementation method, Annotating one or more ion peaks in a fragmentation spectrum as belonging to a first molecular substructure using a device operably coupled to the processor, The device removes the annotated ion peaks from the fragmentation spectrum, A computer-aided method comprising: annotating one or more remaining ion peaks of the fragmentation spectrum as belonging to a second molecular substructure based on the annotated ion peaks removed by the device.
8. The aforementioned device verifies whether the defined search criteria are met, The computer implementation method according to claim 7, further comprising: in response that the defined search criteria are not met, the device resubmitting the fragmentation spectrum for one or more additional iterations of annotation.
9. The computer-aided method according to claim 8, wherein the defined search criteria include at least one of a defined number of annotation iterations, a defined time duration, a defined number of annotated ion peaks, a defined percentage of the total number of annotated ion peaks, or a similarity index based on a comparison between the fragmentation spectrum and the fragmentation spectrum of a known compound.
10. The computer-assisted method according to claim 7, further comprising generating the fragmentation spectrum from a sample using scientific instruments, wherein the scientific instruments include a mass spectrometer and fragmentation techniques.
11. The computer-aided method according to claim 10, wherein the fragmentation technique includes at least one of collision-induced dissociation, high-energy collision dissociation, electron transfer dissociation, electron capture dissociation, or ultraviolet light dissociation.
12. The aforementioned annotation, The device compares one or more ion peaks of the fragmentation spectrum with one or more ion peaks of one or more possible matching fragmentation patterns stored in a pattern library that stores fragmentation patterns of one or more known compounds. The device selects a matching fragmentation pattern from the one or more possible matching fragmentation patterns, The computer-aided method according to claim 7, comprising using the device to mark one or more matching ion peaks of the fragmentation spectrum as belonging to a molecular substructure associated with the matching fragmentation pattern.
13. The computer implementation method according to claim 12, wherein the selection of the matching fragmentation pattern is based on at least one of a scoring algorithm, one or more defined matching criteria, and one or more hierarchical relationships between molecular compounds.
14. The device further includes training an annotation machine learning model to select the matching fragmentation pattern from the one or more possible matching fragmentation patterns. The aforementioned training, The device generates annotated fragmentation spectra of known samples using the annotated machine learning model, The device allows for the comparison of the annotated fragmentation spectrum with the fragmentation pattern of the known sample, The computer implementation method according to claim 12, comprising updating the annotated machine learning model based on the results of the comparison using the device.
15. A computer program product comprising non-temporary computer-readable memory in which program instructions are materialized, wherein the program instructions are provided to a processor, Annotate one or more ion peaks in the fragmentation spectrum as belonging to the first molecular substructure. Remove the annotated ion peaks from the fragmentation spectrum. A computer program product that can be executed by the processor to cause one or more remaining ion peaks of the fragmentation spectrum to be annotated as belonging to a second molecular substructure, based on the removed annotated ion peaks.
16. The program instructions that can be executed by the processor are further executed by the processor. It checks whether the specified search criteria are met. The computer program product according to claim 15, which, in response to the failure to meet the defined search criteria, causes the fragmentation spectrum to be resubmitted for one or more additional iterations of annotation.
17. The program instructions that can be executed by the processor are further executed by the processor. The computer program product according to claim 15, wherein a scientific instrument is used to generate the fragmentation spectrum from a sample, the scientific instrument comprising a mass spectrometer and fragmentation techniques.
18. The annotation involves comparing one or more ion peaks of the fragmentation spectrum with one or more ion peaks of one or more possible matching fragmentation patterns stored in a pattern library that stores fragmentation patterns of one or more known compounds. Selecting a matching fragmentation pattern from the one or more possible matching fragmentation patterns, The computer program product according to claim 15, comprising marking one or more matching ion peaks of the fragmentation spectrum as belonging to a molecular substructure associated with the matching fragmentation pattern.
19. The computer program product according to claim 18, wherein the selection of the matching fragmentation pattern is based on at least one of a scoring algorithm, one or more defined matching criteria, and one or more hierarchical relationships between molecular compounds.
20. The program instructions executable by the processor further cause the processor to train an annotation machine learning model to select the matching fragmentation pattern from the one or more possible matching fragmentation patterns. The aforementioned training, Using the aforementioned annotation machine learning model, annotated fragmentation spectra of known samples are generated, The annotated fragmentation spectrum is compared with the fragmentation pattern of the known sample, The computer program product according to claim 18, further comprising updating the annotated machine learning model based on the results of the comparison.