Workflows
Without bias removal
For cases where you don’t have a bias track you want to regress out, here are the steps:
Prepare bigwig tracks and select the regions you are interested in. There are some utilities for this in BPReveal (
prepareBed), but you are mostly on your own for this stage.Prepare training data files with
prepareTrainingData. These hdf5 files contain the sequences and experimental profiles for all the heads in your model.Train a solo model with
trainSoloModel.Measure the performance of your model with
metrics.Make predictions from the model with
makePredictions.Generate importance scores, either one-dimensionally, with
interpretFlat, or by making two-dimensional PISA plots withinterpretPisaRun MoDISco to extract motifs (using
shapToNumpythe externaltfmodisco-litepackage)Use the motif mapping tools
motifSeqletCutoffs,motifScanandmotifAddQuantilesto map the discovered motifs back to the genome.Use the plotting utilities in
plottingto make impressive graphics with your results.
With bias removal
If you do have strong experimental biases, you will need to regress them out. In that case, the workflow is the following:
Prepare bigwig tracks and select the regions you are interested in with
prepareBed.Prepare a data file containing bias using
prepareTrainingData. The bias regions may be uninteresting regions in the genome, or you may train on your regions of interest but use an experimental control for the data.Train a bias (AKA solo) model with
trainSoloModel.Train a transformation model to match the bias model to the experimental data, using
trainTransformationModel.Train a residual model to explain non-bias parts of the experimental data, using
trainCombinedModel.Measure the performance of the full model with
metrics.Make predictions from the full model and residual model with
makePredictions.Generate importance scores from the residual model with
interpretFlat.Run MoDISco, using scores generated by
shapToNumpy.Map the discovered motifs back to the genome using
motifSeqletCutoffs,motifScanandmotifAddQuantiles.Use the plotting utilities in
plottingto make impressive graphics with your results.