Menu

Modules

Vincent WALTER

MODULES

Current modules

Currently, several modules use R/RJava to perform clustering and statistics computations. In the future, we want to break those dependencies to facilitate the portability on other operating system (Windows). To do that, we want to integrate the methods provided by Weka 3: Data Mining Software in Java and the Apache Commons Math.

Alignment

Context

In bioinformatics, a sequence alignment is a way of arranging the sequences of DNA, RNA, or protein to identify regions of similarity that may be a consequence of functional, structural, or evolutionary relationships between the sequences. Aligned sequences of nucleotide or amino acid residues are typically represented as rows within a matrix. Gaps are inserted between the residues so that identical or similar characters are aligned in successive columns.

alternate "Evolucode MTMR1_HUMAN"

Methods

BLASTp

This scoring method is based on the sequence similarity between the proteins encoded by the training genes, and the protein encoded by the candidate genes. So we use the BLASTp program.

The sequence of the protein associated with different genes (training / test) are retrieved from the database SM2PH (XML-based embedded by GEPETTO). Then, BLAST database is generated just in time and e-values of the protein alignments between all training and all candidate genes are collected. For a candidate, the score is the best e-value obtained.

Recalled that in some families such as globin protein, a sequence homology of only 15% is sufficient to have a strong similarity in structure and function. Similarly, domains with greater than 30% homology are often enough to witness to a similarity in structure and function.

Evolucode

Context

Evolutionary systems biology aims to uncover the general trends and principles governing the evolution of biological networks. An essential part of this process is the reconstruction and analysis of the evolutionary histories of these complex, dynamic networks. Unfortunately, the methodologies for representing and exploiting such complex evolutionary histories in large scale studies are currently limited. EvoluCode (Evolutionary barCode) allows the integration of different evolutionary parameters (eg, sequence conservation, orthology, synteny …) in a unifying format and facilitates the multilevel analysis and visualization of complex evolutionary histories at the genome scale. The advantages of the approach are demonstrated by constructing barcodes representing the evolution of the complete human proteome.

alternate "Evolucode MTMR1_HUMAN"

See more here

Methods

K-means clustering
Linear Discriminant Analysis (LDA)
Pearson Correlation Test

Geco

Context

The accumulation of genomic and epigenetic data allows drawing a more and more precise
picture of the genomic context, but pieces of the puzzle remain to be assembled. Whatever the nature of genomic features (phylogenetics, epigenetics, gene types, gene exonic or nucleotidic composition, etc.), they help give a more accurate view of the genome at every level of focus (gene family, chromosomal region, organism). By considering the context of a set, specific signatures can be detected - such as the epigenetic pattern of histone post-translational modifications, outliers can be eliminated and behaviors predicted. We propose that such underlying information can be extracted and rebuilt in an integrative manner for a better understanding of the entities being manipulated. At this end, there is GeCo, the GenomicContext database and its coupled web portal, providing rich and up-to-date access to most recent contextual data and building new knowledge out of it.

alternate "GenomicContext

Methods

Linear Discriminant Analysis (LDA)
Mean absolute gap / Spearman

GxDb

Context

During the recent years gene expression profiling through transcriptomics has become an essential tool in many domains of research. This technique generates large quantities of data that may be exploited in many different ways allowing to reveal different aspects of the nature of the original data. The analysis and the meta- analysis of such data still remain quite laborious and often are not easily accessible to biologists. In this context, we develop an innovative platform, called GxDb, in order to offer an integrative tool for the analysis of transcriptomics data analysis. This platform is accessible through a secured web- portal and allows convenient upload of data, storage in a relational database and running many treatment and analysis procedures automatically. At the user interface, data query and analysis is greatly facilitated through the various modules and options for graphical display. GxDb clearly extends the opportunity to compare results from different treatment and analysis procedures (including human expert analysis) and/or different experiments. This also gives to the biologist tools for investigating and understanding the strengths and weaknesses of the data-treatments or combination thereof used during analysis, thus allowing to choose the best approach and tools for a given experimental question or a given gene.

alternate "GenomicContext

The tissue-specific pattern of mRNA expression can indicate important clues about gene function. High-density oligonucleotide arrays offer the opportunity to examine patterns of gene expression on a genome scale. Toward this end, we have designed custom arrays that interrogate the expression of the vast majority of protein-encoding human and mouse genes and have used them to profile a panel of 79 human tissues. The resulting data set provides the expression patterns for thousands of predicted genes, as well as known and poorly characterized genes, from humans. We have explored this data set for global trends in gene expression, valuated commonly used lines of evidence in gene prediction methodologies, and investigated patterns indicative of chromosomal organization of transcription.

Methods

Combined best p-values

This scoring method consists in comparing tissular expression profiles of candidate gene with those of known genes. The similarity of these tissular expression profiles is evaluated using the Pearson Correlation Coefficient. For each candidate gene and known genes, we keep the best p-value that corresponds to the closest profiles. Then the best p-values obtained against each known genes are merged using the Fisher omnibus anlysis.

The Pearson Correlation Coefficient is made only for positive correlation signal. One one hand, low expression of a gene does not necessarily means that it is repressed by the other. It may not be expressed in the observed tissue. On the other hand, the coexpression is more interesting because it can reflect an interaction (direct or not) between two genes.

IDGP

Context

Sequence analysis of the group of proteins known to be associated with hereditary diseases allows the detection of key distinctive features shared within this group. The disease proteins are characterized by greater length of their amino acid sequence, a broader phylogenetic extent, and specific conservation and paralogy profiles compared with all human proteins. This unique property pattern provides insights into the global nature of hereditary diseases and moreover can be used to predict novel disease genes. We have developed a computational method that allows the detection of genes likely to be involved in hereditary disease in the human genome. The probability score assignments for the human genome are accessible in the Biomedical Genomics Group Archive.

The discovery of the genes involved in genetic diseases is a very important step towards the understanding of the nature of these diseases. In-lab identification is a difficult, time-consuming task, where computational methods can be very useful. In silico identification algorithms can be used as a guide in future studies. Previous works in this topic have not taken into account that no reliable sets of negative examples are available, as it is not possible to ensure that a given gene is not related to any genetic disease. This feature of the nature of the problem is considered, and identification is approached as a partially supervised classification problem. In addition, a more specific method was performed to identify disease genes by classifying, for the first time, genes causing dominant and recessive diseases independently. This separation is based on previous results that show that these two types of genes present differences in their sequence properties. A new model averaging algorithm was applied to the identification of human genes associated with both dominant and recessive Mendelian diseases.

See more here and here

Methods

This method of prioritization is based on iDGP data. The score is the logical sum

P v Q = p + q - pq

where P is the probability of involvement in a dominant hereditary disease and Q is the probability of involvement in a recessive hereditary disease.

String

Context

Functional partnerships between proteins are at the core of complex cellular phenotypes, and the networks formed by interacting proteins provide researchers with crucial scaffolds for modeling, data reduction and annotation. STRING is a database and web resource dedicated to protein-protein interactions, including both physical and functional interactions. It weights and integrates information from numerous sources, including experimental repositories, computational prediction methods and public text collections, thus acting as a meta-database that maps all interaction evidence onto a common set of genomes and proteins.

alternate "STRING interactome of MTMR1_HUMAN"

See more here.

Methods

Overlapping networks

This naive method is based on the observation of the training genes and their interactors (of first degree) with a confidence score > 0.700. The weight of an interactor is correlated to the number of training genes wich interacts with.

The score is the relative size of the overlap between the candidate gene plus its interactors and the model.

Create a new module

Create a new jar project

Any new module should be distributed as a new JAR library. If you want to create a new module, you have to create a new Java Application project. You can use an IDE (Integrated Development Environment) like JDevelopper, Netbeans, Eclipse, IntelliJ,...

If you need a Java library (eg. Apache Commons), take the version used by [GEPETTO] if it is already imported into the lib folder, or a later version to avoid compatibility problems with other modules.

You need to import the Spring Framework, jBPM, GEPETTOModel libraries.

Architecture of packages

The default modules comply with a particular structure. You can reproduce it in your module to satisfy a particular standard but it is not required.

The packages names are based on :

  • your organisation organisation (eg. org.igbmc.lbgi)
  • the name of your module modulename (eg. modulename)

So you will have, at least :

  • organisation.module.modulename : specfic of the module
  • organisation.module.modulename.annotate : for the annotations of training/test sets
  • organisation.module.scoring : for the scoring methods

GEPETTOModel-based classes implementations

Local prioritization module

Module definition
  • GEPETTOModule : local prioritization module, uncoupled from the jBPM workflow engine
  • ModuleWorkItemHandler : to use as a jBPM service task
  • GEPETTOLocal : results of local prioritization (scores and annotations)
  • LocalPrioritization : result of local prioritization for one feature.
Dataset
  • DatasetLoader : to load data sets (training / test)
Scoring methods
  • GenePrioritization : for gene-based prioritization method
  • ProteinPrioritization : for protein-based prioritization method

inherit from Prioritization which should not be directly implemented.

Annotations
  • AbstractAnnotationFeature : annotations for test set
  • AbstractAnnotationFeatureElement : annotation for a test element
  • AbstractAnnotationTraining : annotations for the training set
  • AbstractAnnotationTrainingElement : annotation for a training element

inherit from Annotation which should not be directly implemented.

Others

Manipulated features
  • GEPETTOSet : set of genes / proteins and the correspondence between them

  • Protein : to identify a protein object

  • Gene: to identify a gene ibject

inherit from Feature which must be used preferably.

Manipulated Results
  • ModuleQuery ; intermediate form for data processing in local prioritization methods
  • Score : for the score
  • Rank : for the rank
Global prioritization
  • GEPETTOGlobal : results of global prioritization (scores and annotations)
  • GlobalPrioritization : result of global prioritization for one feature.
Logging
  • GEPETTOLogger : to log informations, errors, etc.
Exceptions
  • DependenciesNotFoundException : when dependencies are not satisfied
  • GEPETTOModuleException : when a general exception occured

MANIFEST file

You need to edit the MANIFEST file to add some required fields to be compatible with the [GEPETTO] core.

Manifest-Version: 1.0
Name: Alignment
JBPM-Main-Class: org.igbmc.lbgi.gepetto.module.alignment.AlignmentWorkItemHandler
JBPM-Task-Name: alignment
X-COMMENT: Main-Class will be added automatically by build

with the flowwoing required fields :

  • Name : the name of the module
  • JBPM-Main-Class : the class that extends org.igbmc.lbgi.gepetto.model.module.ModuleWorkItemHandler
  • JBPM-Task-Name : the name used in the jBPM workflow definition file

Module registration

To use your module, you must register it by the [GEPETTO] core. To do this, you have to :

  • Copy the project/module JAR file into the module directory
  • Copy the dependencies (libraries) into the lib directory
  • Copy data into the data directory
  • Register it.

To register it, run the following command

gepettoupdate

To verify that the module is registered and usable, run the following command and look if it appears in the list returned :

gepettomodule 

Community

In order to advance the project and allow other community members to take advantage of your developments, think to share it. Please contact us to add it to the default modules, add it to the GEPETTO SVN and add it to our Debian repository.

Together we are strength!


Related

Wiki: Architecture
Wiki: GEPETTO
Wiki: Home