Descripción general de los principales módulos de análisis de GenePattern 21-Septiembre-2010 1. Introducción GenePattern es una poderosa plataforma para análisis genómico que provee acceso a más de 125 herramientas para el análisis de expresión génica, de SNPs, proteómica y en general de trabajos de procesamiento de datos. A través de una interface Web, se tiene fácil acceso a las herramientas y se permite la cración de pipelines que hacen posible la investigación reproducible in silico. Los pipelines de GenePattern permiten capturar, automatizar y compartir las complejas series de pasos requeridos para el análisis de datos genómicos, proporcionando una forma de crear y distribuir una completa metodología de análisis computacional en un sólo script ejecutable. Dichos pipelines capturan métodos de análisis computacional, modulos y/u otros pipelines y sus parámetros de forma que se pueden encadenar métodos al utilizarse como entrada y salida unos de otros. Cómo los pipelines son facilmente importados y exportados desde GenePattern, se pueden compartir con los colegas que quieran reproducir los resultados o usarlos para documentar publicaciones. 1 2. 2.1. Casos de aplicación GenePattern en el centro de colaboración de Harvard para genética y genómica El GIGPAD (Gateway for integrated Genomics-Proteomics Applications an Data) es una plataforma de software que permite a los investigadores y clínicos en el HPCGG (Harvard-Partners Center for Genetics and Genomics)compartir datos y resultados de análisis sin comprometer la confidencialidad del paciente. GIGPAD se basa en GenePattern para proveer la red de trabajo computacional para los laborarios del HPCGG. Según Eugene Clark, arquitecto del GIGPAD, el uso de GenePattern permite disociar la bioinformática desde la infraestructura de aplicación principal, proporcionando así a los profesionales de las ciencias biológicas y de la salud una mejor manera de inovar sin ser restingido por prácticas formales de desarrollo de software. En general, la integración GIGPAD-GenePattern centraliza el acceso a la información, reduce el tiempo de procesamiento y simplifica el mantenimiento. 2.2. GenePattern usado para enseñar modelación atómica en el MIT El profesor Markus Buehler del departamento de ingeniería civil y ambiental del MIT usa complejos algoritmos para estudiar como la estructura molecular de un material está relacionada con la respuesta de estructuras a gran escala. Para enseñar a sus estudiantes estos aspectos, los detalles técnicos de implicados al operar en una estación de trabajo impiden enfocarse con la debida atención en el fundamento del método númerico. Sin embargo, trabajando con Ivica Ceraj un software desarrollado en el MIT, es posible crear una interface entre GenePattern y el código que Buehler usa en su propia investigación. Esta combinación es una herramienta simple pero muy precisa para el modelado necesario, de manera que los estudiantes pueden desarrollarse mejor y adoptar métodos para sus propias aplicaciones. 2 3. Análisis genómico en GenePattern 3.1. Análisis de expresión génica GenePattern provee soporte para amplias categorias del análisis de expresión génica: Análisis diferencial. Predicción de clases (supervisado) Descubrimiento de clases (no supervisado) Análisis de mecanismos (pathways) Además, soporta muchos tipos de conversiones de datos, tales como filtrado y normalización, los cuales son prerrequisitos estandar para el análisis de datos genómicos. 3.1.1. Análisis diferencial El análisis diferencial (o también conocido como marker selection), es la busqueda de genes que están diferencialmente expresados en distintos fenotipos. GenePattern puede evaluar la expresión diferencial usando el signalto-noise ratio o el estadístico t y provee del siguiente soporte para el análisis diferencial: Comparative Marker Selection: Clasifica los genes basandose en el valor de el estadístico que está siendo usado para evaluar la expresión diferencial y usa un test de permutaciones para computar la significancia (p-value nominal) de la posición asignada a cada gen. El análisis se ajusta a múltiples hipótesis nulas e incluye FDR (False discovery rate) y FEWER (family-wise error rate). Se pueden controlar la clasificación de genes basada en el estadístico más apropiado para los datos. Class Neighbors: Ayuda a identificar los genes en los que el patrón de expresión está fuertemente correlacionado. Heat Map viewer: Muestra los valores de expresión diferencial por medio de un mapa de calor. Donde la expresión más grande es mostrada en rojo y la menor en azul, los valores intermedios son una combinación de ambos. 3 Los módulos correspondientes a este análisis se resumen en la siguiente tabla: Módulos de expresión diferencial ClassNeighbors, selecciona los genes que más se asemejan a un perfil. ComparativeMarkerSelection, calcula los valores de significancia de las features usando varias métricas. Incluye FDR(BH), Q-Value, maxT, FWER, Feature-Specific P-Value, and Bonferroni. COPA, Perform Cancer Outlier Profile Analysis. ExtractComparativeMarkerResults, crea un conjunto de datos y una lista de características a partir de los resultados de ComparativeMarkerSelection. GeneNeighbors, selecciona los genes que más se asemejan a un perfil contínuo (por ejemplo: otro gene). GSEA, Gene Set Enrichment Analysis. SelectFeaturesColumns, toma un pedazo de columna a partir de un archivo .res, .gct, .snp, .cn, .loh, .odf, o .cls. SelectFeaturesRows, genera un archivo .res, .gct, .snp, .cn, .loh, or .odf que contiene sólo características especificadas. 3.1.2. Predicción de clases La predicción de clases es la busqueda de una firma de expresión génica que prediga conjuntos de clases. La metodología clásica consiste en comenzar con dos conjuntos de datos, uno de orientación y uno de prueba. Utiliza el conjunto de orientación para construir un clasificador basado en método elegido y el conjunto de prueba para probar el clasificador. GenePattern proporciona el siguiente soporte para predicción de clases: Diversos métodos de clasificación, incluyendo arboles de clasificación y regresión (CART), K-nearest neighbors (KNN), redes neurales probabilísticas (PNN), voto ponderado y máquinas de soporte vectorial (SVM). 4 Un algoritmo de leave-one-out cross-validation para cada método de clasificación. Para conjuntos pequeños, en lugar de crear conjuntos de orientación y de prueba, por medio del cross-validation se divide un conjunto de datos en n pliegues. Para cada pliegue, el análisis orienta n − 1 pliegues y prueba el restante. Después, iterativamente orienta y prueba todos los pliegues. El análisis combina los resultados para determinar el clasificador. Una herramienta para dividir un único conjunto de datos, en varios conjuntos de datos de orientación y prueba que no se superponen. Los módulos correspondientes a este análisis se resumen en la siguiente tabla: Módulos de predicción de clases BlastTrainTest, predicción de similaridad de secuencia usando BLAST. BlastXValidation, cross-validation de la predicción de similaridad de secuencia usando BLAST. CART, árbol de regresión y clasificación. CARTXValidation, cross-validation del árbol de regresión y clasificación. KNN, clasificación K-nearest neighbors. KNNXValidation, clasificación KNN con leave-one-out crossvalidation. ModEcocTrainTest, Modified error correcting output code prediction. ModEcocXValidation, Modified error correcting output code crossvalidation prediction. NearestTemplatePrediction, predicción del vecino más cercano basada en la lista de genes marcados. PNN, Redes neurales probabilísticas PNNXValidationOptimization, PNN Leave-One-Out CrossValidation Optimization. SVM, clasifica muestras usando Máquinas de Soporte Vectorial. WeightedVoting, votación ponderada. WeightedVotingXValidation, Leave-One-Out Cross-Validation de votación ponderada. 5 3.1.3. Descubrimiento de clases El descubrimiento de clases es la busqueda de taxonomía desconocida biológicamente relevante identificada por la firma de expresión génica o un conjunto biológicamente relevante de genes coexpresados. La metodología clásica se basa en clusters validados a tráves de las anotaciones de genes, análisis de enriquecimiento (aquellos clusters enriquecidos con genes provenientes de categorias, mecanismos o procesos importantes funcionalmente) o resultados replicados en otros conjuntos de datos. GenePattern proporciona el siguiente soporte para predicción de clases: Diversos métodos tradicionales de clustering, inlcuyendo clustering de consenso, jerárquico y mapas auto organizantes (SOM). Herramientas de validación para recuperar anotaciones y dividir un único conjunto de datos en varios conjuntos de datos de orientación y prueba que no se superponen. Otros métodos de clustering poco tradicionales como Non-negative matrix factorization (NMF) y Principal components analysis (PCA). Los módulos correspondientes a este análisis se resumen en la siguiente tabla: Módulos de descubrimiento de clases ConsensusClustering, Resampling-based clustering method. HierarchicalClustering.MATLAB, clustering jerárquico. HierarchicalClustering, clustering jerárquico. KMeansClustering, módulo que desarrolla el algoritmo de clustering K-Means Clustering. NMFConsensus, Non-negative Matrix Factorization (NMF) Consensus Clustering. SOMClustering, algoritmo de mapas auto organizantes. SubMapBrowser, inspecciona todos los posibles mapeos de subclase. SubMap, mapea subclases entre dos conjuntos de datos. 6 3.1.4. Análisis de mecanismos El análisis de mecanismos (pathway analysis) es la busqueda de genes diferencialmente expresados en distintos fenotipos. GenePattern proporciona el siguiente soporte para este análisis: KScore computa un estadístico de rango no paramétrico que representa la distribución posicional de un conjunto de genes en el tope de una lista ordenada. Se puede usar este análisis para examinar el enriquecimiento de un conjunto de genes en el tope de una lista ordenada. El KSscore es alto cuando los genes en el conjunto de estos aparecen cerca del tope de la lista ordenada. GSEA (análisis de enriquecimiento de conjuntos de genes) determina si un conjunto de genes definido a priori muestra diferencia significativa y éstas concuerdan entre dos estados biológicos. Herramientas para la recuperación de anotaciones que ayuden al entendimiento conjuntos de genes y los resultados del enriquecimiento de estos. 3.1.5. Formato de datos Los módulos de GenePattern están diseñados para fácil acceso. Todos los módulos leen y escriben información usando formatos de archivo estándares de GenePattern, los cuales son archivos de texto delimitados por tabulador o comas. Además, proporciona soporte para la conversión de datos incluso para hacer conversiones a y desde documentos MAGE-ML. También es posible añadir convertidores como nuevos módulos. El servidor de GenePattern tiene enlaces a su librería para los ambientes de programación Java, MATLAB y R, los cuales permiten desarrollar aplicaciones para leer y escribir todos los formatos de archivo estándares de GenePattern. 7 3.2. Proteómica Para el análisis de datos de proteómica, GenePattern proporciona el siguiente soporte. 3.2.1. AuDIT Multiple reaction monitoring-mass spectrometry (MRM-MS) de peptidos con stable isotope-labeled internal standards (SIS), es un ensayo cuantitativo para medir proteínas en complejas mátrices biológicas. Estos ensayos pueden ser muy precisos y cuantitativos pero la frecuencia de ocurrencia de interferencia requiere que la información de MRM-MS sea manualmente revisada por un experto. El módulo AuDIT implementa un algoritmo que de manera automática identifica transiciones imprecisas de información basada en la presencia de una señal de interferencia entre muestras replicadas. Además, reduce el tiempo de manejo subjetivo de información, mejora la precisión global de análisis de datos y se implementa fácilmente en el flujo de trabajo de análisis de datos estándar. 3.2.2. ESP Predictor Desarrollo de ensayos dirigidos basados en MS para detectar y cuantificar cambios en los niveles de proteína. Requiere la identificación de los péptidos a utilizar como sustitutos cuantitativos de cada proteína candidato. La mayor firma de predicción de péptidos (módulo ESPPredictor) ofrece un medio de predicción para tales firmas de péptidos desde una sola secuencia. 3.2.3. PEPPeR (LC-MS) Para el análisis de datos de LC-MS, GenePattern proporciona soporte para algoritmos definidos por PEPPeR, una plataforma para reconocimiento de patrones de proteómica experimental: Landmark matching es un método para propagar péptidos identificados a través del tiempo, en features LC-MS de masa exacta y por tanto, es una forma de maximizar el total de péptidos identidicados a partir de métodos de adquisición dispares. El empalmamiento de picos intenta agrupar features similares (o picos) a través de corridas de muestras LC-MS múltiples, ésto incorporando 8 m/z y variación de retención de tiempo (RT). Aunque el empalmar picos puede ser llevado a cabo en cualquier tipo de datos LC-MS, es típicamente desarrollado después del Landmark matching. Materiales suplementarios para las módulos de PEPPeR que incluyen una guía de inicio rápidos para GenePattern PEPPeR, ejemplos de aplicación y utilidades para facilitar el procesamiento de datos. 3.2.4. ProteoArray (LC-MS) Para una serie de experimentos LC-MS en formato mzXML, el módulo ProteoArray para el análisis de datos de LC-MS ofrece soporte para detectar y alinear features a tráves de corridas. 3.2.5. SELDI/MALDI Para el análisis de información SELDI/MALDI GenePattern ofrece el siguiente soporte: Calidad de valoración del espectro de entrada como una función del área sobre el espectro y el área sobre el espectro después de remover el componente ruidoso de la señal. Detección de pico usando filtros de convolución digital, los cuales aplican suavizamiento, corrección de fondo y mejoran de los filtros de pico para el espectro antes de identificar la locaciones finales de los picos. Comparación de espectro que filtra el ruido proveniente de dos espectros y después compara el espectro usando una función de correlación cruzada. Un pipeline proteómico que provee un procesamiento automático de información SELDI/MALDI. Además, para la calidad de valoración y la detección de picos, el pipeline incorpora una gama de métodos de normalización y algoritmos sofisticados de alineación de picos para su empalmamiento a tráves de multiples muestras; empezando con el espectro desde un conjunto de muestras, las salidas del pipeline de picos empalmados como features y las intensidades normalizadas de estos picos para cada muestra. Muchos aspectos de este pipeline son totalmente personalizables. 9 Integración con otros módulos de análisis de GenePattern. Representando los picos como features, la detección del pico y los módulos de pipelines proteómicos crean salidas similares a aquellas usadas como entrada de los módilos que soportan el análisis de expresión génica, tales como clustering, clasificación y selección diferencial, que están basados en reconocimiento de patrones y son aplicables al análisis tanto de proteómica como de análisis de expresión génica. 3.2.6. Formato de datos Los módulos de proteómica están diseñados para fácil acceso. Todos los módulos de proteómica len y escriben información usando mzXML o archivos csv con valores separados por comas. Generalmente los archivos mzXML tienden a ser usados para datos de LC-MS y los archivos csv para datos de SELDI/MALDI. GenePattern proporciona soporte para la conversión a y desde archivos mzXML. Además, permite la creación de convertidores como módulos. Los módulos correspondientes a este soporte se resumen en la siguiente tabla: 10 Módulos de análisis de proteómica AreaChange, calcula la fracción de área sobre el espectro que es atribuible a la señal (área después de remover el ruido / área original). AuDIT, detección automática de transiciones inexactas e imprecisas en espectrometría de masas MRM. CompareSpectra, compara dos espectros para determinar su similaridad. ESPPredictor, determina cuales péptidos trípticos generarán la señal más alta en ESI-MS. LandmarkMatch, un método proteómico para propagar péptidos identificados a través de múltiples corridas MS. LocatePeaks, ubica picos detectados en un espectro. mzXMLToCsv, convierte un archivo mzXML a un archivo zip o csv. PeakMatch, desarrolla el empalme de picos en datos LC-MS. Peaks, determina picos en el espectro usando una serie de filtros digitales. PlotPeaks, grafica los picos. ProteoArrays, módulo de procesamiento de datos proteómicos LC-MS. ProteomicsAnalysis, corre el análisis proteómico en el conjunto de espectro de entrada. 3.3. Análisis de SNPs Para el análisis de datos de microarreglos de nucleotidos de un sólo poliformismo (SNPs) de alta densidad, de alteraciones de número de copias (amplificaciones y deleciones) y detección de perdida de heterocigocidad (LOH), GenePattern proporciona el siguiente soporte: Escalamiento de los datos para normalizar los niveles de intensidad entre los microarreglos. Modelado de intensidad de sonda para determinar el valor el respectivo decada SNP basado en los niveles de intensidad de las sondas en cada conjunto de éstas. 11 Cálculo del número de copias (CN) de un SNP blanco. Dicho cálculo divide el valor de intensidad del SNP blanco sobre el valor de intensidad del SNP normal. Inlcuso es llamado normalización CN o normalización con respecto a los normales. Suavizamiento basado en el paquete GLAD (Gain and Loss Analysis of DNA), el cual detecta la región en el patrón genómico y asigna un status (normal, ganado o perdido) para cada región cromosomal. Análisis adicional para soportar la detección y vizualización de LOH y alteraciones de CN. Los módulos correspondientes a este soporte se resumen en la siguiente tabla: Módulos de análisis de SNPs CBS, segmenta información del número de copias de ADN en regiones con estimaciones del mismo número de copias, usando segmentación circular binaria (CBS). CopyNumberDivideByNormals, determina el número de copias de una SNP blanco. GISTIC, identificación genómica de blancos significativos en Cancer. GISTICPreprocess, prepara archivos de SNP para GISTIC. GLAD, análisis de ganancias y perdidas de ADN. LOHPaired, computa LOH para muestras pareadas. SNPFileCreator, procesa datos a nivel de sonda de SNP Affymetrix en valores de expresión. SNPFileSorter, ordena un archivo .snp por cromosoma y locación. SNPMultipleSampleAnalysis, determina regiones de aberraciones de número de copias concordantes. XChromosomeCorrect, corrige los SNPs del cromosoma X para muestras de hombres. 12 3.4. Pre-procesamiento y conversión de datos El análisis de datos genómicos requiere trabajar con grandes cantidades de datos ruidosos en una gran variedad de formatos, donde los genes identificadores pueden variar de acuerdo a las plataformas. Para soportar el análisis genómico de GenePattern proporciona lo siguiente para un trabajo simple con los diferentes tipos de datos. Para la exportación, importación y conversión de datos, GenePattern es capaz de recibir datos provenientes de una amplia gama de plataformas y formatos. Incluye MAGE-ML, mzXML y el Gene Expression Omnibus (GEO); convierte archivos CEL Affymetrix en archivos de GenePattern y estos mismos en archivos con formato MAGE-ML. También convierte line-endings al formato requerido por el sistema operativo utilizado. Para la normalización, filtración e imputación de valores el módulo preprocessDataset provee muchas opciones de pre-procesamiento, tales como diferentes métodos de normalización, determinación de umbrales y variación de filtración. Si el conjunto de datos de expresión contiene valores perdidos es posible imputarlos. Para la conversión de identificadores de genes y recuperación de anotaciones GenePattern permite convertir los indentificadores de genes usados por un microarreglo a los de otro. Proporciona acceso a anotaciones de genes a través de GeneCruiser, el cual usa identificadores de sonda (gene) Affymetrix. Para trabajar con conjuntos de datos se tienen herramientas para extraer nombres de renglones y columnas (gene y muestra), transponer y extraer renglones y columnas de datos, y reordenar muestras basadas en fenotipos o dividir un conjunto de datos en dos conjuntos no superpuestos. Los módulos correspondientes a este soporte se resumen en la siguiente tabla: 13 Módulos de pre-procesamiento y conversión de datos Arff2Gct, convierte un archivo .arff en una pareja de archivos de GenePattern .gct/ .cls. CollapseDataset, contrae todos los valores del conjunto de sondas de un gene en un sólo vector de valores. ComBat, Batch Correction (corrección de lotes). CombineOdf, combina dos archivos de resultados de predicción en un sólo, archivo ponderado multi etiquetado (multi-label). ConvertLineEndings, convierte line-endings al formato del sistema operativo huesped. ConvertToMAGEML, convierte un archivo de conjunto de datos gct, res, u odf en un archivo MAGE-ML. ConvertToMAGETAB, módulo para exportar datos desde GenePattern en formato MAGE-TAB. DownloadURL, descarga un archivo desde una URL. ExpressionFileCreator, crea un archivo RES o GCT desde un conjunto de archivos CEL Affymetrix. ExtractColumnNames, lista los descriptores de muestra desde un archivo .res, .gct u .odf. ExtractRowNames, extrae los nombres de renglones de archivos archivo .res, .gct u .odf. Gct2Arff, convierte una pareja de archivos .gct / cls en un archivo .arff. GenePatternDocumentExtractor, extrae los pipelines de GenePattern y otra información inscrustada desde documentos de Word 2007. GEOImporter, importa datos desde Gene Expression Omnibus (GEO). Hu68kHu35kAtoU95, convierte una lista de sondas Hu6800/Hu35KsubA Affymetrix a el correspondiente U95Av2 Affymetrix. 14 IlluminaConcatenator, concatena los conjuntos de sondas normalizados Illumina en un sólo archivo GCT. IlluminaNormalizer, normaliza las lecturas de illumina. IlluminaScanExtractor, extrae los valores de intensidad de las lecturas de illumina. MapChipFeaturesGeneral, mapea los genes (features) de un conjunto de datos. MergeColumns, une los conjuntos de datos por columna. MergeRows, une los conjuntos de datos por renglón. MultiplotPreprocess, crea información derivada de un conjunto de datos de expresión para usarse en módulo de vizualización multi-gráfico. PreprocessDataset, desarrolla muchas opciones de preprocesamiento en un archivo res, gct o de conjunto de datos de entrada. ProteinDatasetCreation, extrae features de una archivo .FASTA de proteńas para usar los algoritmos estandar de predicción. ReorderByClass, reordena las muestras en un conjunto de datos de expresión y clasifica el archivo por clases. SplitDatasetTrainTest, divide un conjunto de datos (y archivos cls) en un número de subconjuntos de orientación y prueba. TransposeDataset, transpone un conjunto de datos .res, .gct u odf. UniquifyLabels, hace etiquetas únicas de renglones y columnas. Referencias [1] Reich M, Liefeld T, Gould J, Lerner J, Tamayo P, Mesirov JP GenePattern 2.0 Nature Genetics 38 no. 5 (2006): pp500-501. Disponible en: http://www.broadinstitute.org/cancer/software/genepattern/index.html 15