Rewriting regulatory DNA to dissect and reprogram gene expression
Creators: name: Martyn, Gabriella E.*
name: Montgomery, Michael T.*
name: Jones, Hank
name: Guo, Katherine
name: Doughty, Benjamin R.
name: Linder, Johannes
name: Chen, Ziwei
name: Cochran, Kelly
name: Lawrence, Kathryn A.
name: Munson, Glen
name: Pampari, Anusri
name: Fulco, Charles P.
name: Kelley, David R.
name: Lander, Eric S.
name: Kundaje, Anshul
name: Engreitz, Jesse M.
Publisher: name: Zenodo
Year: 2023

description: ==========================Date: 2023-12-18Repository authors: Michael T. Montgomery, Ziwei Chen, Kelly Cochran, Johannes Linder, Anshul Kundaje, Jesse M. EngreitzEmail: mmontgom@stanford.edu, ziwei75@stanford.edu, kcochran@stanford.edu, jlinder@calicolabs.com, akundaje@stanford.edu, engreitz@stanford.edu

bioRxiv DOI: https://doi.org/10.1101/2023.12.20.572268

==========================

The models and notebooks described below are associated with the following preprint/publication.

Rewriting regulatory DNA to dissect and reprogram gene expressionGabriella E. Martyn*, Michael T. Montgomery*, Hank Jones, Katherine M. Guo, Benjamin R. Doughty, Johannes Linder, Ziwei Chen, Kelly Cochran, Kathryn A. Lawrence, Glen Munson, Anusri Pampari, Charles P. Fulco, David R. Kelley, Eric S. Lander, Anshul Kundaje, Jesse M. Engreitz*Equal contribution. Either author can be listed first.

==========================

ChromBPNet (models)

This archive contains deep learning models trained to map DNA sequences to base-resolution ATAC-seq profiles for Jurkat, THP1, and stimulated Jurkat cells while performing automatic TN5 bias correction. The models are trained on ATAC-seq datasets from GEO: THP-1 cells (GSM4706091, GSM4706092), Jurkat cells (GSM4706084, GSM4706085) and stimulated Jurkat cells (GSM4706088, GSM4706089) from GEO. The models were trained using the ChromBPNet repository. The exact code base for training the models can be found here: https://github.com/kundajelab/chrombpnet.

The directory structure of this archive:

There is one directory for each cell type. For each cell type, models were trained on 5 independent folds (numbered 0 - 4):

<celltype>/<fold>/models/ contains the bias model, model with and without bias correction.

<celltype>/<fold>/models/chrombpnet_nobias.h5 is the model with bias correction and what we used for generating predictions and interpretations for each cell type.

<celltype>/<fold>/evaluation/ contains the evaluation metrics for each model, including pearson, spearman correlation on count predictions, and JSD on profile prediction.

<celltype>/<fold>/logs/ contains the log of train and validation loss during model training.

==========================

ProCapNet (models)

This archive contains deep learning models trained to map DNA sequences to base-resolution PRO-cap profiles in K562 (data from ENCODE: ENCSR261KBX). The models were trained using the ProCapNet repository. The code base for training the models can be found here: https://github.com/kundajelab/nascent_RNA_models.

The directory structure of this archive:

 Models were trained on 7 independent folds split by chromosomes (numbered 0 - 6):

models/fold[N].model.torch contains the saved PyTorch model object.

evaluation/fold[N].test.metrics.txt contains the evaluation metrics for each model (averaged across all examples in the test set), including pearson correlation and MSE for counts task predictions, and pearson correlation and JSD for profile task predictions.

auxiliary/fold[N]/ contains the auxiliary data used to train the model. Files named peaks.fold[N].

[train|val|test].bed.gz contain the set of PRO-cap peaks used for training/validation/testing for fold N, and files names.

DHSs.no_procap_overlap.fold[N].train.bed.gz contain the set of loci sampled from as negative examples during training.

logs/fold[N].train.metrics.tsv contains the log of train and validation loss during model training.

==========================

Enformer (notebooks)

This archive contains python notebooks for specific applications of the Enformer model (https://github.com/google-deepmind/deepmind-research/tree/master/enformer) used in the above manuscript. We used Enformer to to predict the quantitative effects of DNA variants on gene regulation, build in silico mutagenesis (ISM) maps for interpretation of predicted wild type and edited target DNA sequence motifs, and design sequence edits with desired effects on expression using Enformer paired with simulated annealing. These applications are described in detal in the methods section of the above manuscript.

Python notebooks in this archive:

enformer_ppif_predict.ipynb contains code to predict the effects of sequence variants in a 768-bp output window centered on the introduced variant. 

enformer_ppif_predict_tss.ipynb contains code to predict the effects of sequence variants in a 768-bp output window centered on the transcription start site (TSS) of PPIF.

enformer_ppif_ism.ipynb contains code to perform ISM and output base-resolution maps of predicted sequence contribution to gene regulation.

enformer_ppif_design.ipynb. contains code for rational design of sequence edits that we optimized for specific effects on gene expression using simulated annealing with a standard Metropolis acceptance criterion.

enformer_ppif_predict_designs contains code for predicting the effects of rationally designed edits.

enformer_ppif_ism_designs.ipynb contains code to perform ISM and output base-resolution maps of predicted sequence contribution to gene regulation for the rationally designed edits. This code is different from enformer_ppif_ism.ipynb in that the sequence edits made here include insertion + deletion combinations,  which requires different ISM configuration.