Whole-genome somatic copy-number aberration prediction from bulk RNA-seq alone, with one pan-cancer model covering 33 tumor types.
No providers recorded yet. Browse all providers
Every bulk RNA-seq run on a tumor already carries a shadow of the genome that produced it: an amplified region pushes its genes up, a deleted one pushes them down. Reading that shadow back into copy number is hard — the per-gene signal is weak, and tissue of origin dominates the expression profile more than any aberration. Copy number is normally called from DNA instead, as araCNA does from tumor whole-genome sequencing, and the expression-based tools that exist have tended to fit a separate classifier per cancer type.
RCANE — RNA-seq to Copy number Aberration NEural network — regresses the whole transcriptome against continuous copy-number log2 intensity ratios along the genome. Transcripts are ordered by genomic position and grouped 20 at a time into 1,514 segments, so the network reasons at roughly the scale a focal aberration spans. A cancer-type embedding adjusts each transcript's value before segment aggregation, absorbing tissue-of-origin variation while letting all 33 tumor types share one set of weights. Segment features then flow through two parallel views of genomic context: a chromosome-wise LSTM following runs of altered segments, and graph-attention blocks over positive- and negative-correlation graphs that capture events co-occurring across chromosomes, such as the 1p/19q co-deletion of gliomas.
RCANE was built by Changhao Ge, Xiaowen Hu, Lin Zhang and Hongzhe Li at the University of Pennsylvania, posted to bioRxiv in November 2024 and published in Communications Biology in 2025. In the TCGA benchmark it is the one method not refit per cohort: every comparison method there was trained separately for each cancer type.
The input is a B × 1514 × 20 tensor — batch by genomic segment by transcript — plus a cancer-type vector and a mask. Per-transcript MLPs and the cancer-type embedding feed a layer-normalized softmax-weighted average within each segment; the result passes to a 4-layer LSTM split into 23 chromosome sequences and to two 2-head graph-attention blocks, whose concatenated outputs run through a shared MLP and a per-segment univariate block — the final two layers, and the only ones unfrozen during fine-tuning. Roughly 46.8 million trainable parameters, trained for 130 epochs under Adam and mean squared error. Training used 8,900 TCGA tumors with 2,226 held out, across 33 cancer types and the 30,096 transcripts left after dropping the Y chromosome and anything expressed in under 30% of samples; Affymetrix SNP 6.0 log2 ratios segmented by circular binary segmentation supplied the ground truth. Segment-wise detection on TCGA test samples reached 0.80 sensitivity, 0.97 specificity and 0.79 MCC, against 0.37 for CNAPE and 0.35 for CNVkit. On 1,022 matched CPTAC samples spanning 10 cancer types — whose reference calls come from whole-exome data rather than arrays — the TCGA checkpoint led on whole-genome Jaccard score with no adaptation. Fine-tuning those final two layers on 114 DepMap cell lines lifted F1 to 0.86 neutral, 0.82 loss and 0.82 gain on 266 held-out lines.
The practical case is retrospective and cost-driven: cohorts with RNA-seq but no matched copy-number assay — archival collections, cell-line panels, clinical transcriptome studies — can be profiled for arm-level and focal aberrations from data already in hand. Continuous intensity output supports analyses that discrete gain/neutral/loss calls cannot, and the gene-weight readout separates transcripts genuinely driven by copy number from those governed by regulation.
RCANE shows that a single pan-cancer network can substitute for the per-cohort refitting expression-based copy-number tools have relied on, and that it keeps that advantage across a platform shift from SNP arrays to whole-exome-derived references. Two constraints matter. The cancer-type vocabulary is closed: inference requires one of the 33 TCGA abbreviations baked into the checkpoint, so a tumor type outside that set cannot be encoded. Input must be log2(1+TPM) normalized and batch-corrected against TCGA as reference, so out-of-the-box use depends on reproducing that harmonization. And the model does one thing — no reusable embedding, no generative mode. Within that scope it is fully released: MIT-licensed code, with pretrained and fine-tuned checkpoints on Zenodo alongside the preprocessed data.
Much of this page is generated or calculated automatically. Flag anything that looks off and we will re-run it.