CoolFace
Datasetpublic

Taykhoom/chip-seq-glm-tang

GLM-Tang Task 2: GM12878 ChIP-seq Binding This dataset contains ten binary transcription-factor binding tasks from Task 2 of Tang et al. Given an exact 200 nt sequence from GM12878, predict whether it is centered on a factor-specific ChIP-seq peak or a matched DNase-accessible negative. Each transcription factor is an independent task identified by factor. Loading from datasets import load_dataset dataset = load_dataset("Taykhoom/chip-seq-glm-tang", "corrected")… See the full description on the dataset page: https://huggingface.co/datasets/Taykhoom/chip-seq-glm-tang.

sourceHugging Facecc-by-4.0updated 26d agoView on Hugging Face
0likes166downloads
Dataset Card

GLM-Tang Task 2: GM12878 ChIP-seq Binding

This dataset contains ten binary transcription-factor binding tasks from Task 2 of Tang et al. Given an exact 200 nt sequence from GM12878, predict whether it is centered on a factor-specific ChIP-seq peak or a matched DNase-accessible negative.

Each transcription factor is an independent task identified by factor.

Loading

python
from datasets import load_dataset

dataset = load_dataset("Taykhoom/chip-seq-glm-tang", "corrected")
ctcf_train = dataset["train"].filter(lambda row: row["factor"] == "CTCF")
ctcf_test = dataset["test"].filter(lambda row: row["factor"] == "CTCF")

Archive dataset size

SplitRows
train262,228
validation37,459
test74,929
Total374,616

The archive config contains exactly 187,308 positive and 187,308 negative rows with the distributed partitions unchanged.

Use corrected for scientific evaluation. It excludes 752 negative rows whose 200-nt interval overlaps a factor-specific positive source peak by at least one base, then assigns interval-connected components wholly to one split per factor. It contains 373,864 rows: 261,705 train, 37,385 validation, and 74,774 test. Contaminated negatives are excluded, never relabeled. The one-base threshold is deliberate: any shared genomic base duplicates input content, and transitive overlaps remain in the same component.

Factors:

text
ATF2, Arid3, BACH1, CTCF, ELK1, GABPA, MAX, REST, SRF, ZNF24

Arid3 is the archived filename label for the ARID3A experiment.

Task construction

  • Positive rows are 200 nt windows centered on the corresponding factor-specific GM12878 ChIP-seq peak.
  • Negative rows are 200 nt windows centered on GM12878 DNase hotspots.
  • The source study downsampled negatives to balance the classes.
  • The archive supplies 70/10/20 train/validation/test partitions.

Every row is tied to the exact published source BED:

  • ten factor peak files from Majdandzic Supplementary Table S1;
  • GM12878 DNase file ENCFF235KUD for negatives.

The selected source peak accession, source BED line, original peak interval, and number of matching source candidates are retained.

Sequence and target contract

sequence is always the exact archived 200 nt benchmark input decoded from the HDF5 one-hot array. It is never replaced by an assembly-normalized sequence.

label is:

text
1 = factor-specific ChIP-seq peak
0 = GM12878 DNase hotspot negative

The released models use binary cross-entropy and report accuracy, AUROC, and AUPR independently for each factor.

Columns

Column groupDescription
split, sequence, label, example_idSelected config partition, exact input, target, and unique archive row ID.
archive_splitOriginal partition; present in corrected only.
source_index, factor, cell_lineSource HDF5 row, task identity, and constant GM12878.
sequence_group_id, archive_sequence_split_leakageReverse-complement-canonical same-factor sequence group and whether it spans archive splits.
interval_component_id, archive_interval_component_split_leakageSame-factor connected component of source intervals linked by at least 1 bp overlap, and whether it spans archive splits.
negative_overlaps_positive_peakWhether a negative 200-nt interval overlaps any pinned positive source peak for that factor.
source_chrom, source_start, source_end, source_strandZero-based, half-open hg19 source window selected from the published BED.
source_coordinate_count, source_coordinates_uniqueNumber of distinct matching coordinate tuples and whether exactly one exists.
source_bed_record_countNumber of matching BED records, counted separately from coordinate uniqueness.
source_peak_accession, source_peak_lineENCODE file accession and one-based decompressed BED line.
source_peak_start, source_peak_endOriginal source peak/hotspot interval before 200 nt centering.
source_genome_buildAlways GRCh37/hg19.
source_idStable source-window identifier.
chrom, start, end, strandNullable strict center-lifted hg38 200 nt window.
liftover_start, liftover_endNullable raw lifted two-base source-center anchor.
liftover_match_count, coordinates_unique, selected_coordinates_uniqueStrict liftover candidate count and uniqueness flags.
coordinate_resolution, coordinates_availableMapping status and whether an hg38 annotation was retained.
hg38_sequenceNullable 200 nt sequence extracted from the strict hg38 center lift.
hg38_sequence_matches_source, hg38_sequence_edit_distanceComparison between sequence and the explicit hg38 derivative.
genome_buildGRCh38/hg38 when coordinates are available; null otherwise.

All source-BED candidates, including ambiguous alternatives, are retained in the processing release's coordinate-recovery sidecar. That intermediate distinguishes the original 200-nt hg19 source window (source_window_start/end) from the two-base source center anchor (source_center_start/end) and its lifted hg38 anchor (liftover_start/end). The dataset columns above remain the final 200-nt source and hg38 windows.

hg38 annotation

The hg38 fields are optional annotations, not benchmark replacements.

  • 374,586 rows have a strict unique source-center liftover.
  • 30 rows remain unresolved and have null hg38 fields.
  • 1,374 mapped rows differ between hg19 benchmark input and hg38 derivative.
  • Those rows require 3,743 total edit operations; the maximum is 50.

Archive and corrected splits

The archive split has 1,651 interval-connected components spanning partitions, affecting 3,384 rows. Exact-sequence grouping alone detects only 272 affected rows. The corrected config uses the stronger interval components and has zero cross-split source-interval overlap.

The associated one-hot evaluator must transpose GradientCorrection arrays from (rows, 4, 200) to (rows, 200, 4) exactly once before Conv1D. Corrected evaluator outputs identify this protocol explicitly; legacy metrics without that marker used ambiguous orientation.

Processing and verification

The HDF5 checksum verification, exact source-BED matching, strict center liftover, candidate sidecar, row-order checks, and the root manifest contract are documented at stable repository links:

  • Processing repository: https://github.com/TaykhoomDalal/GLM-Tang-Processing/tree/main
  • Task documentation: https://github.com/TaykhoomDalal/GLM-Tang-Processing/blob/main/chip-seq/README.md
  • Reproducibility manifest: https://github.com/TaykhoomDalal/GLM-Tang-Processing/blob/main/manifest.json

Sources and citation

Tang, Z. et al. Genome Biology 26, 203 (2025). https://doi.org/10.1186/s13059-025-03674-8

Majdandzic, A., Rajesh, C. & Koo, P. K. Correcting gradient-based interpretations of deep neural networks for genomics. Genome Biology 24, 109 (2023). https://doi.org/10.1186/s13059-023-02956-3

License

The Tang and GradientCorrection Zenodo releases are CC BY 4.0. ENCODE data retain the ENCODE data-use and attribution requirements.