This page is a reference, not a tutorial. Read it if you need to know exactly what a parameters were used to transform the raw Borzoi scores into 102 annotations. Start with the examples if you just want to run a workflow.
| Constant | Value | Module | Source |
|---|---|---|---|
SEED |
42 | annotations/borzoi/scale_and_normalize.py |
paper's indel-scaling script |
NUM_SNPS_SUBSAMPLE |
500,000 | annotations/borzoi/scale_and_normalize.py |
paper's indel-scaling script |
TRACK_CHUNK_SIZE |
500 | annotations/borzoi/scale_and_normalize.py |
paper's indel-scaling script (memory-bound, does not influence processing) |
N_COMPONENTS_CAP |
20 | annotations/borzoi/ipca.py |
paper's PCA script' "Sniff-102" (95%, cap 20) |
VARIANCE_EXPLAINED |
0.95 | annotations/borzoi/ipca.py |
paper's PCA script |
BATCH_SIZE |
50,000 | annotations/borzoi/ipca.py |
papers' PCA script |
Window tiling and MAF/INFO filters live entirely in the pinned PolyFun
fork (external/polyfun, DivyanshiSrivastava/polyfun_sniff@sniff-paper),
specifically ukb_regions_exclLRLD.tsv (regions/tiling) and
munge_polyfun_sumstats.py --min-info 0.6 --min-maf 0.001 (filters,
called directly in examples/). One additional step is implemented in
this repo, not PolyFun: SNPs in long-range LD regions (MHC on chr6, plus
two more regions on chr8/chr11) also need to be removed from the
baseline-LF and Borzoi annotation files themselves, before LD scores are
computed -- see sniff/merge_with_baseline/merge_annots_with_baseline.py's
exclude_long_range_ld_from_directory (and LONG_RANGE_LD_REGIONS for
the exact closed-interval boundaries), and resources.md.
Six categories, assigned from scores.h5's target_labels /
target_ids (see annotations/borzoi/track_categories.py):
| Category | Track count |
|---|---|
| ATAC | 232 |
| DNASE | 674 |
| RNA | 868 |
| CHIP | 3886 |
| RNAGTEX | 87 |
| CAGE | 638 |