360 likes | 547 Views
Smart Templates for Chemical Identification in GCxGC-MS. QingPing Tao 1 , Stephen E. Reichenbach 2 , Mingtian Ni 3 , Arvind Visvanathan 2 , Michael Kok 2 , Luke L. Waltman 1 1 GC Image, LLC, Lincoln, NE 2 Computer Science & Engineering Dept., University of Nebraska-Lincoln
E N D
Smart Templates for Chemical Identification in GCxGC-MS QingPing Tao1, Stephen E. Reichenbach2, Mingtian Ni3, Arvind Visvanathan2, Michael Kok2, Luke L. Waltman1 1GC Image, LLC, Lincoln, NE 2Computer Science & Engineering Dept., University of Nebraska-Lincoln 3Microsoft Corp., Redmond, WA Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work GCxGCPeak Template MatchingSmart TemplatesBuilding Smart Multi-type TemplatesConclusions and Future Work Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work GCxGC Objective of GCxGC Analysis Chemical Identification Outline GCxGC • Two independent separations for the entire sample • GCxGC data can be processed as a digital image • Mass spectrometry (MS) data provides rich information for identification Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work GCxGC Objective of GCxGC Analysis Chemical Identification Outline GCxGC GC Chromatogram GCxGC Total Ion Chromatogram Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work GCxGC Objective of GCxGC Analysis Chemical Identification Outline Objective of GCxGC Analysis • Separate individual peaks from background • Quantify each peak • Identify the peaks for chemicals of interest Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work GCxGC Objective of GCxGC Analysis Chemical Identification Outline Chemical Identification with GCxGC • Automated approaches • Library search • Such as NIST Mass Spectral Library • Rule-based techniques: • Such as constrain expressions based on retention times or mass spectrum • Pattern matching: markers, chemical retention pattern. • Challenges: • Data inconsistencies: retention time variations • Data and task complexities: multi-dimension, many peaks • Solution: combined approach (“Smart templates”) with peak template matching constraint expressions Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work GCxGC Objective of GCxGC Analysis Chemical Identification Outline Outline • Peak template matching • Smart Templates • Computer Language for Identifying Chemicals (CLIC) • Smart Template • Peak template matching with CLIC • Building Smart Multi-type Templates • Interactive tools for building smart multi-type templates • Automatically generating CLIC for peaks • Automatically generating peak sets with markers. • Conclusion and Future Works Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Chemical Identification Process Fundamental Difficulty Peak Template Matching • Identify compounds by matching previously known peaks to unidentified peaks • A peak template is a set of annotated peaks with: • Computed features such as peak location (2D retention times) • Assigned information such as compound name • A target peak is a set of unannotated peaks that have computed features • Peak template matching tries to establish as many correspondences as possible from template peaks to target peaks Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Chemical Identification Process Fundamental Difficulty Chemical Identification Process • Construct a peak template: • Created by a chemist through interactive annotation • Match template and target peaks • Apply the template: assign information from template to target peaks Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Chemical Identification Process Fundamental Difficulty Fundamental Difficulty of Peak Template Matching • Peak pattern distortions: • Peaks for the same compound may appear at different retention times in different images • Basic solution: • Search all allowable matches from template peaks to target peaks under some retention time windows • Find a transformation that maximize the number of matched peaks Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Chemical Identification Process Fundamental Difficulty B2 peak1 B1 B3 Fundamental Difficulty of Peak Template Matching • Challenges: • Searching transformations in a large space is computationally expensive • False identifications may happen when two target peaks are very close together • A solution: Smart Template peak2 B2 peak1 B1 B3 Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Computer Language for Identifying Chemicals (CLIC) Example CLIC Expressions Peak Template Matching with CLIC Smart Templates • Objective: • Reduce the number of allowable matchings • Reduce ambiguous matchings • Reduce human intervention • Approach: • Add more constraints other than retention time patterns • CLIC Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Computer Language for Identifying Chemicals (CLIC) Example CLIC Expressions Peak Template Matching with CLIC Computer Language for Identifying Chemicals (CLIC) CLIC [Reichenbach et al., 2004] is a language to express constraints on GCxGC retention times, peak characteristics, and mass spectral characteristics: • Functions of retention times • Functions of peak characteristics • Functions of mass spectra • Logical and arithmetic operators • Comparative operators: <, ≤, >, ≥, =, ≠ • Addition, subtraction, negation (-) and parentheses • Logical operators: and(&), or (|), and negation(!) Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Computer Language for Identifying Chemicals (CLIC) Example CLIC Expressions Peak Template Matching with CLIC Computer Language for Identifying Chemicals (CLIC) Functions characterizing chromatographic properties and mass spectral characteristics are key features of CLIC. • Retention(2) returns the retention time of the peak on the second column. • Intensity(40) returns the intensity value of the indicated channel (m/z = 40) in the mass spectrum of the peak. • Ordinal(40) returns the ordinal position of the indicated channel (m/z = 40 in a mass spectrum) in the intensity-ordered multi-channel array of the peak. • … Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Computer Language for Identifying Chemicals (CLIC) Example CLIC Expressions Peak Template Matching with CLIC Example CLIC Expressions • Alkanes • Criteria (Welthagen et al. 2003): Base peak 57 or 71 and second largest peak 71 or 57. No time rule is needed for this group, but a retention window of 1.0 – 1.5s can be used. • CLIC Expression: • (Ordinal(57) ≤ 2) & (Ordinal(71) ≤ 2)& (Retention(2) ≥ 1.0) & (Retention(2) ≤ 1.5) Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Computer Language for Identifying Chemicals (CLIC) Example CLIC Expressions Peak Template Matching with CLIC B2 peak1 B1 B3 Peak Template Matching with CLIC • Each peak in the template has an optional CLIC expression • First, find a set of possible matches by using the retention time pattern • Then, prune the matching space based on CLIC expressions • Finally, search for the best matching • The combination of chromatographic retention time patterns and CLIC expressions can improve both speed and accuracy of automated chemical identification for GCxGC • We call it a Smart template Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Building Smart Multi-type Templates Smart Template has been implemented in GC Image® software. • Interactive tools for building Multi-type Templates • Peaks, groups, graphics, text objects and chemical structures • Interactive tools for building CLIC expressions • A GUI that resembles a calculator for users to create and test CLIC expressions • An interface for specifying a CLIC expression for each template peak • Interfaces to match and apply templates Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Build Multi-type template Build Smart template Auto CLIC Auto chemical grouping with markers Build Multi-type template Construct and edit template with peaks and other structures: Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Build Multi-type template Build Smart Template Auto CLIC Auto chemical grouping with markers Build Smart Template – Example with Grob Mix 1) Build a template from the original image Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Build Multi-type template Build Smart Template Auto CLIC Auto chemical grouping with markers Build Smart Template – Example with Grob Mix 2) Wrong match because of peak pattern distortions: Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Build Multi-type template Build Smart Template Auto CLIC Auto chemical grouping with markers Build Smart Template – Example with Grob Mix 3) Smart template solution: a) Create CLIC expression for Nonanal Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Build Multi-type template Build Smart Template Auto CLIC Auto chemical grouping with markers Build Smart Template – Example with Grob Mix b) Specify CLIC expression for Nonanal template peak: Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Build Multi-type template Build Smart Template Auto CLIC Auto chemical grouping with markers Build Smart Template – Example with Grob Mix 4) Matching with Smart Template: Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Build Multi-type template Build Smart Template Auto CLIC Auto chemical grouping with markers Auto CLIC Automatically generate CLIC expressions for peaks: • CLIC function: Match() • NIST matching function returns the similarity between two mass spectra • Value range is [0, 1000] • Higher is the value, more similar are the two mass spectra • CLIC expression, Match(“<ms>”) > threshold, can be used to identify chemicals. • The mass spectrum of the peak is <ms> • Automatically generate the threshold Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Build Multi-type template Build Smart Template Auto CLIC Auto chemical grouping with markers Auto CLIC Automatically generate matching threshold: • The similarities between this peak and all other peaks should be less than the threshold • The threshold has the large margins from this peak and all other peaks • For example: peak 1 represents blob B1 • B1. Match(“<B1’s MS>”) = 1000 • B2. Match(“<B1’s MS>”) = 600 • B3. Match(“<B1’s MS>”) = 400 • Match(“<B1’s MS>”) > 800 B1 peak1 800 B2 B3 B2 B1 B3 600 1000 400 0 Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Build Multi-type template Build Smart Template Auto CLIC Auto chemical grouping with markers Auto CLIC 1) Set Auto CLIC function Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Build Multi-type template Build Smart Template Auto CLIC Auto chemical grouping with markers Auto CLIC 2) Generate CLIC Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Build Multi-type template Build Smart template Auto CLIC Auto chemical grouping with markers Auto chemical grouping with markers Group peaks based on their retention time patterns: • Build natural clusters of peaks • Each cluster is represented by a polygon • A template may consist of a set of groups (polygons) Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Build Multi-type template Build Smart template Auto CLIC Auto chemical grouping with markers Auto chemical grouping with markers 29 clusters created by single linkage hierarchical clustering algorithm Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Build Multi-type template Build Smart template Auto CLIC Auto chemical grouping with markers Auto chemical grouping with markers Automatically generate markers for groups (polygons) • Template matching is based on peaks • Each group needs markers • A marker is a significant peak in the group • Markers are at evenly distributed locations to represent the retention time pattern of the group • Auto marker: • Cluster all peaks in a group • Pick the largest peak in each cluster as a marker Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Build Multi-type template Build Smart template Auto CLIC Auto chemical grouping with markers Auto chemical grouping with markers 1) Set Auto Marker function Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Build Multi-type template Build Smart template Auto CLIC Auto chemical grouping with markers Auto chemical grouping with markers 2) Generate markers Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Build Multi-type template Build Smart template Auto CLIC Auto chemical grouping with markers Auto chemical grouping with markers 2) Generate markers Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Smart Templates Building Smart Multi-type Templates Conclusions and Future Work Conclusions and Future Work • Smart Template matching can be used to automatically identify chemicals in GCxGC-MS data • The combination of retention time patterns and constraints greatly reduces ambiguity and speeds processing • Future work: • Enhanced GUI • More CLIC functions • Semi-automated or automated template construction • Auto CLIC and Auto Marker are just two first steps Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS
Introduction Peak Template Matching Computer Language for Identifying Chemicals Peak Template Matching with CLIC Conclusions and Future Work Current work is supported by NSF and NIH Questions? Software: info@gcimage.com www.gcimage.com Licensing: info@zoex.com www.zoex.com Q. Tao, S. E. Reichenbach, et al. Multi-type Templates in GCxGC-MS