PMMdeNovo: Difference between revisions

From Jstacs
Jump to navigationJump to search
No edit summary
(paper published)
Line 1: Line 1:
__NOTOC__
__NOTOC__
by Ralf Eggeling, Teemu Roos, Petri Myllymäki, and Ivo Grosse
 
== Paper ==
The paper [http://www.biomedcentral.com/1471-2105/16/375 Inferring intra-motif dependencies of DNA binding sites from ChIP-seq data] by Ralf Eggeling, Teemu Roos, Petri Myllymäki, and Ivo Grosse has been published in BMC Bioinformatics.


== Runnable JARs ==
== Runnable JARs ==
Line 10: Line 12:
Run by calling
Run by calling


<code>java -jar InhPMM.jar inputFile motifWidth motifOrder flankingOrder initSteps addSteps restarts output</code>
<code>java -jar ModelTrainer.jar inputFile motifWidth motifOrder flankingOrder initSteps addSteps restarts output</code>


where the arguments have the following semantics:
where the arguments have the following semantics:

Revision as of 18:05, 9 November 2015


Paper

The paper Inferring intra-motif dependencies of DNA binding sites from ChIP-seq data by Ralf Eggeling, Teemu Roos, Petri Myllymäki, and Ivo Grosse has been published in BMC Bioinformatics.

Runnable JARs

The application consists of three independent tools. All tools have mandatory (no default values) and optional arguments. Default values can be used by assigning "def". Alternatively, a shorter list of arguments can be provided, in which case all missing arguments are considered to assume default values.

ModelTrainer

The tool ModelTrainer performs a de novo motif discovery on a set of putative non aligned sequences. It infers an inhomogenous PMM of arbitrary order, where order 0 corresponds to a PWM model. Run by calling

java -jar ModelTrainer.jar inputFile motifWidth motifOrder flankingOrder initSteps addSteps restarts output

where the arguments have the following semantics:

name type default comment

inputFile String -- The location of a text file containing the input sequences. If the first character in the file is '>' the content is interpreted interpreted as fasta file. Otherwise it is interpreted as plain text, i.e., each line corresponding to one sequence.
motifWidth Integer 20 The width of the motif to be inferred.
motifOrder Integer 2 The initial order of the inhomogeneous PMM, i.e., the number of context positions that can be taken into account for modeling intra-motif dependencies.
flankingOrder Integer 2 The order of the homogenous Markov model, which is used for modeling the flanking sequences that do not belong to the motif.
initSteps Integer 50 The number of initial iterations steps that the algorithm is always run for each restart.
addSteps Integer 10 The number of additional iterations steps, i.e., the number of iterations that have to be performed after having obtained the last optimal model structure before termination is allowed.
restarts Integer 10 The number of restarts of the algorithm.
output String model The path and file prefix for the output files. The tool produces two files, namely (i) output.xml containing the learned model and (ii) output.dot containing the graphViz representation of the learned PCT structures.

BindingSitePrediction

The tool BindingSitePrediction predicts instances of binding sites in a positive data set based on a previously learned model. Run by calling

java -jar BindingSitePrediction.jar modelFile dataPos dataNeg alpha output

where the arguments have the following semantics:

name type default comment

modelFile String -- The location of the .xml representation (output of ModelTrainer) of the learned model.
dataPos String -- The location of the positive data (fasta file or plain text) in which binding site locations are to be identified.
dataNeg String -- The location of the negative data (fasta file or plain text) that is used for computing the prediction threshold.
alpha Integer 1E-4 Significance level on negative data.
output String bindingSites.txt Location of output file for writing the predicted binding sites.

Classification

The tool Classification performs first a motif discovery with subsequent fragment-based classification by using positive data that is assumed to contain an instance of the motif, and negative data that is assumed not to contain the motif. This tool can be used for performing a single step of a K-fold cross validation experiment. Run by calling

java -jar Classification.jar filePosTrain fileNegTrain filePosTest fileNegTest motifWidth motifOrder flankingOrder initSteps addSteps restarts

where the arguments have the following semantics:

name type default comment

filePosTrain String -- The location of a text file containing the positive training sequences (fasta or plain text).
fileNegTrain String -- The location of a text file containing the negative training sequences (fasta or plain text).
filePosTest String -- The location of a text file containing the positive test sequences (fasta or plain text).
fileNegTest String -- The location of a text file containing the negative test sequences (fasta or plain text).
motifWidth Integer 20 The width of the motif to be inferred.
motifOrder Integer 2 The initial order of the inhomogeneous PMM, i.e., the number of context positions that can be taken into account for modeling intra-motif dependencies.
flankingOrder Integer 2 The order of the homogenous Markov model, which is used for modeling the flanking sequences that do not belong to the motif.
initSteps Integer 50 The number of initial iterations steps that the algorithm is always run for each restart.
addSteps Integer 10 The number of additional iterations steps, i.e., the number of iterations that have to be performed after having obtained the last optimal model structure before termination is allowed.
restarts Integer 10 The number of restarts of the algorithm.

The tool returns (i) the model complexity, i.e., the number of leaves of all parsimonious context trees of the learned motif model, and (ii) performance of the classifier measured by the area under the ROC curve.

Data

The exemplary data sets contain extracted ChIP seq sequences of 50 different human transcription factors from the ENCODE project, as well as corresponding negative data. All data sets are split into 10 different subsets for enabling a reproducible 10-fold cross validation.

Source code

Building the source code requires Jstacs 2.1.