树深度与样本质量相关特征:RNA-Seq数据分类中Boruta特征选择的两个隐藏因素

arXiv cs.LG 论文

摘要

本文研究了 Boruta 特征选择方法中树深度设置对 RNA-Seq 癌症数据基因筛选结果的影响,发现默认的浅树深度限制会显著改变基因选择并降低分类准确率,建议使用不限深度的树并加入类内样本质量过滤。

arXiv:2610.33307v2 Announce Type: new Abstract: Boruta is a widely used method for selecting gene panels from RNA sequencing data, and its most used implementation recommends Random Forest trees of depth 3 to 7, an untested setting. We tested whether this setting changes which genes are selected, using pan-cancer data from The Cancer Genome Atlas (10,469 tumors, 33 cancer types) and breast cancer PAM50 subtyping (981 tumors, 5 subtypes). A leakage-free protocol fitted every label-dependent step inside training folds, measured every effect against seed-to-seed variation, and held out a locked test set per task. In pan-cancer data, shallow trees changed the selection far more than a new seed did: the top-500 overlap with unlimited-depth selections was 0.37 at depth 5, against 0.84 to 0.93 between seeds at depth 5 or unlimited depth. Shallow trees confirmed 3.5 times fewer genes, missed markers of large classes and produced less accurate 50-gene panels (balanced accuracy 0.809 vs 0.889). The effect vanished once the cap reached about 60 to 75% of the depth that unrestricted trees grow to, set mainly by the number of classes, not sample size, and leaving depth uncapped cost no accuracy in either task. The effect replicated in a second cross-validation repeat and under permutation importance. About a third of pre-filtered candidates also tracked sample quality within class; a within-class filter removed them without loss of test accuracy (balanced accuracy 0.943 vs 0.942 with 1,000 genes). We recommend uncapped trees, or a cap chosen from the realized tree depth, and a within-class quality filter before Boruta.
查看原文
查看缓存全文

缓存时间: 2026/10/28 07:26

# Tree Depth and Sample-Quality-Associated Features: Two Hidden Factors in Boruta Selection for RNA-Seq Data Classification
Source: [https://arxiv.org/html/2610.33307](https://arxiv.org/html/2610.33307)
Tareque Mohmud Chowdhury††thanks:Corresponding author: tareque@iut\-dhaka\.eduAffiliation:Department of Computer Science and Engineering, Islamic University of Technology, Gazipur 1704, BangladeshAbu Raihan Mostofa KamalAffiliation:Department of Computer Science and Engineering, Islamic University of Technology, Gazipur 1704, Bangladesh

###### Abstract

Boruta is widely used to select gene panels from RNA sequencing data, and its most used implementation recommends Random Forest trees of depth 3 to 7, an untested setting\. We tested whether this setting changes which genes are selected, using pan\-cancer data from The Cancer Genome Atlas \(10,469 tumors, 33 cancer types\) and breast cancer PAM50 subtyping \(981 tumors, 5 subtypes\)\. A leakage\-free protocol fitted every label\-dependent step inside training folds, measured every effect against seed\-to\-seed variation, and held out a locked test set per task\. In pan\-cancer data, shallow trees changed the selection far more than a new seed did: the top\-500 overlap with unlimited\-depth selections was 0\.37 at depth 5, against 0\.84 to 0\.93 between seeds at depth 5 or unlimited depth\. Shallow trees confirmed 3\.5 times fewer genes, missed markers of large classes and produced less accurate 50\-gene panels \(balanced accuracy 0\.809 vs 0\.889\)\. The effect vanished once the cap reached about 60 to 76% of the depth that unrestricted trees grow to, a depth set mainly by the number of classes, not sample size\. Leaving depth uncapped cost no accuracy in either task\. The effect replicated in a second cross\-validation repeat and under permutation importance\. About a third of pre\-filtered candidates also tracked sample quality within class; a within\-class filter removed them without loss of test accuracy \(balanced accuracy 0\.943 vs 0\.942 with 1,000 genes\)\. We recommend uncapped trees, or a cap chosen from the realized tree depth, and a within\-class quality filter before Boruta\.

Keywords:Boruta, cancer classification, feature selection, gene expression, hyperparameter sensitivity, machine learning, random forests, RNA sequencing, The Cancer Genome Atlas\.

## 1Introduction

RNA sequencing measures the expression of about 60,000 genes in each sample, while a single cancer cohort usually contains only hundreds to a few thousand samples\[[1](https://arxiv.org/html/2610.33307#bib.bib58),[2](https://arxiv.org/html/2610.33307#bib.bib59)\]\. Classifiers of cancer type and subtype built on such data depend on feature selection: a small gene panel is cheaper to measure, easier to interpret and easier to validate in new cohorts than a model that uses every gene\[[3](https://arxiv.org/html/2610.33307#bib.bib21),[4](https://arxiv.org/html/2610.33307#bib.bib52),[5](https://arxiv.org/html/2610.33307#bib.bib1)\]\. The 50\-gene PAM50 assay for breast cancer subtypes is the best\-known example of such a panel\[[6](https://arxiv.org/html/2610.33307#bib.bib47)\]\. For a panel to be useful, the selection method must find genes that carry real class signal, and it must find them reproducibly\. Classifiers of the cancer types in The Cancer Genome Atlas \(TCGA\) reach high accuracy with both classical and deep learning models\[[7](https://arxiv.org/html/2610.33307#bib.bib39),[8](https://arxiv.org/html/2610.33307#bib.bib34),[9](https://arxiv.org/html/2610.33307#bib.bib44),[10](https://arxiv.org/html/2610.33307#bib.bib42)\], but they rarely examine how the selected genes depend on the settings of the selection method\.

Boruta is one of the most widely used selection methods for this task\[[11](https://arxiv.org/html/2610.33307#bib.bib35)\]\. It adds a permuted copy, or shadow, of every feature, fits a Random Forest\[[12](https://arxiv.org/html/2610.33307#bib.bib8)\], and keeps the features whose importance repeatedly exceeds that of the best shadow\. Because it seeks all relevant features rather than a panel of fixed size, it suits exploratory biology, and it has been found to be among the most self\-consistent Random Forest selectors on gene expression data\[[13](https://arxiv.org/html/2610.33307#bib.bib14),[14](https://arxiv.org/html/2610.33307#bib.bib36),[15](https://arxiv.org/html/2610.33307#bib.bib11)\]\. Its most used Python implementation, BorutaPy, recommends “pruned trees with a depth between 3\-7” and shows a maximum depth of 5 in its example\[[16](https://arxiv.org/html/2610.33307#bib.bib7)\]\. No published evidence supports this advice\. In large multi\-class problems, unrestricted trees grow far deeper: in our pan\-cancer data their median depth was 33\. A shallow cap removes most of each tree, and impurity importance can only credit features that are used in the splits that remain\.

Two research gaps remain: how Random Forest tree depth changes the genes that Boruta selects, and whether candidate genes track sample quality rather than biology\. First, studies of Random Forest parameters have tuned the number of candidate features per split, the sample fraction and the minimal node size, mostly for prediction accuracy or in small problems, where trees stay shallow whatever the setting\[[17](https://arxiv.org/html/2610.33307#bib.bib60),[18](https://arxiv.org/html/2610.33307#bib.bib50)\]\. The effect of tree depth on feature selection in large multi\-class data has not been measured\. Second, features can track sample\-level technical variation\. In TCGA RNA sequencing \(RNA\-seq\) data, library size, tumor purity and processing plate leave signal that normalization does not remove\[[19](https://arxiv.org/html/2610.33307#bib.bib37),[20](https://arxiv.org/html/2610.33307#bib.bib4),[21](https://arxiv.org/html/2610.33307#bib.bib43)\], and detection rate drives a large share of variation in single\-cell data\[[22](https://arxiv.org/html/2610.33307#bib.bib25)\]\. Selectors that reserve places for non\-coding RNA categories may draw such genes in, because a quota must be filled even when the genes available to fill it carry little class signal\. Removing whole gene types is not a solution, because pseudogene and long non\-coding RNA \(lncRNA\) expression can carry real subtype signal\[[23](https://arxiv.org/html/2610.33307#bib.bib32),[24](https://arxiv.org/html/2610.33307#bib.bib22),[25](https://arxiv.org/html/2610.33307#bib.bib61)\]\. To our knowledge, no feature selection study has tested candidate genes for within\-class association with sample quality before selection\.

Evaluating either effect needs care\. Selecting features outside the cross\-validation loop inflates accuracy\[[26](https://arxiv.org/html/2610.33307#bib.bib3),[27](https://arxiv.org/html/2610.33307#bib.bib56)\], and differences between settings can be no larger than the variation between random seeds\[[28](https://arxiv.org/html/2610.33307#bib.bib31),[29](https://arxiv.org/html/2610.33307#bib.bib46)\]\. We therefore used a protocol in which every label\-dependent step is fitted inside training folds, each task has a locked test set opened once, and every comparison of settings is measured against the variation between seeds\.

This paper makes four contributions:

1. 1\.The first systematic study of Random Forest depth inside Boruta on large multi\-class data: up to nine depth settings in two tasks \(33\-class pan\-cancer and 5\-class PAM50 subtyping\), with effects measured against seed noise and replicated across cross\-validation repeats and importance measures\.
2. 2\.Evidence that the size of the effect follows the depth that unrestricted trees reach, which is set mainly by the number of classes rather than by sample size, with a practical rule: leave depth uncapped, which cost no accuracy or stability in either task, or check the realized depth before choosing a cap\.
3. 3\.A within\-class quality\-association measure showing that about a third of pre\-filtered candidate genes track sample quality, and a filter that removes them before selection without loss of test accuracy\.
4. 4\.A leakage\-free, reproducible pipeline and its code, evaluated on locked test sets\.

Section[2](https://arxiv.org/html/2610.33307#S2)reviews related work\. Section[3](https://arxiv.org/html/2610.33307#S3)describes the data, pipeline and experiments, Section[4](https://arxiv.org/html/2610.33307#S4)the results, and Section[5](https://arxiv.org/html/2610.33307#S5)their implications and limitations\. Section[6](https://arxiv.org/html/2610.33307#S6)concludes\.

## 2Related Work

### 2\.1Feature Selection for Gene Expression Classification

Feature selection for gene expression data falls into filter methods, which rank genes by a univariate statistic; wrapper methods, which search gene subsets with a classifier; and embedded methods, which select during model fitting\[[3](https://arxiv.org/html/2610.33307#bib.bib21),[4](https://arxiv.org/html/2610.33307#bib.bib52),[30](https://arxiv.org/html/2610.33307#bib.bib6)\]\. Hybrid designs combine a fast filter with a slower wrapper or embedded step, as in our pipeline\[[5](https://arxiv.org/html/2610.33307#bib.bib1)\]\. Common first\-stage filters include univariate tests and minimum\-redundancy maximum\-relevance ranking\[[31](https://arxiv.org/html/2610.33307#bib.bib49)\], and embedded selection with boosted models has been used to build cancer gene signatures\[[32](https://arxiv.org/html/2610.33307#bib.bib53)\]\. Boruta is often the second stage of such designs\. Studies of these hybrids report the accuracy of the final panel; to our knowledge, none has examined how Boruta’s tree depth changes the genes selected\.

### 2\.2Random Forest Importance and Its Parameters

Boruta relies on Random Forest importance, by default the mean decrease in impurity, which accumulates over the splits in which a feature is used\[[12](https://arxiv.org/html/2610.33307#bib.bib8),[33](https://arxiv.org/html/2610.33307#bib.bib40)\]\. Impurity importance can favor some feature types, and permutation importance is the usual alternative\[[34](https://arxiv.org/html/2610.33307#bib.bib54),[35](https://arxiv.org/html/2610.33307#bib.bib2),[36](https://arxiv.org/html/2610.33307#bib.bib45)\]\. Wright*et al\.*studied how the number of candidate features per split affects the detection of interacting variables, with trees grown to purity\[[17](https://arxiv.org/html/2610.33307#bib.bib60)\]\. Janitza*et al\.*proposed Vita, a fast importance test for high\-dimensional data, as an alternative to Boruta\[[37](https://arxiv.org/html/2610.33307#bib.bib30)\]\. Kursa compared Random Forest selectors on microarray data and found Boruta the most self\-consistent; deeper Random Ferns confirmed more genes, but Random Forest depth was not varied\[[14](https://arxiv.org/html/2610.33307#bib.bib36)\]\. Degenhardt*et al\.*compared Random Forest selection methods on omics data at fixed settings\[[15](https://arxiv.org/html/2610.33307#bib.bib11)\]\. Reviews of Random Forest tuning discuss tree size, through node size or depth, as a parameter for prediction accuracy rather than for feature selection\[[18](https://arxiv.org/html/2610.33307#bib.bib50)\]\. To our knowledge, no peer\-reviewed study has varied Random Forest depth inside Boruta on large multi\-class data or tested the depth range recommended by BorutaPy\.

### 2\.3Stability of Feature Selection

A selection method should return similar genes when the data change slightly\. The Nogueira index measures this across resamples and corrects for set size\[[29](https://arxiv.org/html/2610.33307#bib.bib46)\]; an earlier index is that of Kalousis*et al\.*\[[28](https://arxiv.org/html/2610.33307#bib.bib31)\]\. Gene signatures for the same clinical question are known to overlap little between studies\[[38](https://arxiv.org/html/2610.33307#bib.bib16)\]\. Most stability studies compare methods; few separate the variation caused by a setting from the variation between random seeds of the same setting, which is the comparison our design uses\.

### 2\.4Unwanted Variation in RNA\-Seq Data

Molania*et al\.*showed that TCGA RNA\-seq data carry variation from library size, tumor purity and processing plates that common normalizations do not remove, and that it distorts downstream analyses, including subtype calls\[[21](https://arxiv.org/html/2610.33307#bib.bib43)\]\. Batch effects are common in high\-throughput data\[[19](https://arxiv.org/html/2610.33307#bib.bib37)\], tumor purity varies widely across TCGA samples\[[20](https://arxiv.org/html/2610.33307#bib.bib4)\], and RNA degradation changes transcript quantification\[[39](https://arxiv.org/html/2610.33307#bib.bib18)\]\. In single\-cell data, the fraction of detected genes per cell drives a major axis of variation\[[22](https://arxiv.org/html/2610.33307#bib.bib25)\]\. Pseudogene expression, often treated as noise, carries subtype\-specific signal across cancers\[[23](https://arxiv.org/html/2610.33307#bib.bib32),[24](https://arxiv.org/html/2610.33307#bib.bib22)\], and lncRNAs show cancer\-type\-specific expression\[[40](https://arxiv.org/html/2610.33307#bib.bib28),[25](https://arxiv.org/html/2610.33307#bib.bib61)\]\. Our quality\-association measure applies these observations to feature selection: it tests each candidate gene, within class, for association with the number of detected genes per sample, instead of correcting the whole matrix or excluding gene types\.

## 3Materials and Methods

All experiments follow one rule: every step that uses class labels is fitted on training samples only, and each task’s test set was opened once, after all choices were fixed\. Fig\.[1](https://arxiv.org/html/2610.33307#S3.F1)summarizes the design\.

Figure 1:Study design\. Two tasks from TCGA RNA\-seq data: pan\-cancer classification \(10,469 tumors, 33 classes\) and breast cancer PAM50 subtyping \(981 tumors, 5 classes\)\. Each task has a locked test set \(20% of patients\)\. Inside every training fold: expression filter, within\-class quality filter \(quality\-aware pipeline only\), category\-aware ANOVA F pre\-filter to 3,000 candidates, and Boruta at each depth setting with three random seeds\. Selections are compared with seed\-to\-seed variation; panels of the topKKgenes are evaluated with logistic regression \(LR\) and LightGBM\.### 3\.1Data

RNA\-seq gene expression data \(STAR–Counts workflow\[[41](https://arxiv.org/html/2610.33307#bib.bib13)\], GENCODE v36 annotation\[[42](https://arxiv.org/html/2610.33307#bib.bib17)\]\) for all 33 TCGA projects\[[2](https://arxiv.org/html/2610.33307#bib.bib59)\]were downloaded from the NCI Genomic Data Commons \(GDC\)\[[43](https://arxiv.org/html/2610.33307#bib.bib20)\]through its REST API \(Data Release 46\.0, August 10, 2026; downloaded October 15–16, 2026\)\. In total, 11,505 open\-access files with 60,660 genes each were retrieved and checked against their GDC MD5 checksums\. Expression was represented aslog2⁡\(TPM\+1\)\\log\_\{2\}\(\\mathrm\{TPM\}\+1\), where TPM denotes transcripts per million\[[44](https://arxiv.org/html/2610.33307#bib.bib38)\]\. Plate and tissue source site identifiers were parsed from aliquot barcodes\.

Genes were assigned to four RNA categories from their GENCODE gene types: protein\-coding \(mRNA, 19,962 genes\), lncRNA \(16,901\), miRNA genes \(1,881\) and all other types \(“other”, 21,916; mostly processed pseudogenes, 10,167\)\. TCGA RNA\-seq measures miRNA precursor and host transcripts, not mature miRNAs\.

### 3\.2Cohort, Quality Control and Splits

Primary tumor samples \(sample type 01\) were kept, with two exceptions: sample type 03 for LAML, which has no type 01 samples, and both primary and metastatic \(06\) samples for SKCM, in which metastatic samples form most of the cohort\. One sample per patient was chosen by a fixed rule \(primary before metastatic, then vial, portion and barcode order\)\.

For each sample we computed library size and the number of detected genes \(TPM\>\>1\)\. Samples whose number of detected genes was more than three median absolute deviations\[[45](https://arxiv.org/html/2610.33307#bib.bib51)\]below their cancer\-type median and below 70% of that median were excluded \(19 samples, at most 3 per cancer type\)\. A further 253 samples, flagged by a looser rule \(library size or detected genes more than three median absolute deviations below the median\), were kept\. The rules use quality metrics only, never labels\. Plate and site explained 2–3 times the chance level of variance in the first principal components within the eight largest projects \(up to 4\.6 times in UCEC\)\. Because these factors are confounded with cancer type and patient population, correcting for them would also remove class signal\[[19](https://arxiv.org/html/2610.33307#bib.bib37)\], so no batch correction was applied\.

The final pan\-cancer cohort had 10,469 tumors from 33 cancer types \(Table[1](https://arxiv.org/html/2610.33307#S3.T1)\)\. Splits were stratified by cancer type, with esophageal carcinoma further split by recorded histology into adenocarcinoma and squamous cell carcinoma; a histology group with fewer than 13 samples joined the largest group of its cancer type\. Twenty percent of patients \(2,095\) formed a locked test set\. The other 8,374 were assigned to three repeats of stratified 5\-fold cross\-validation \(CV\) with the same strata \(seed 42\)\. Repeat 0 was used for all development experiments and repeat 1 for the replication check \(Section[3\.11](https://arxiv.org/html/2610.33307#S3.SS11)\)\. The smallest class in any validation fold had 5 samples \(CHOL\)\. Classifiers used the 33 cancer types as classes; the histology split served only to balance the splits\.

Table 1:Cohorts and SplitsPan\-cancerPAM50Classes33 cancer types5 subtypesTumors after QC10,469981Development set8,374797Locked test set2,095184Training samples per CV foldabout 6,700637Smallest classCHOL \(35\)Normal\-like \(36\)Largest classBRCA \(1,095\)LumA \(499\)PAM50 development subtypes: LumA 419, LumB 155, Basal 129, Her2 65, Normal\-like 29; test: 80, 42, 42, 13, 7\. QC: quality control\.
### 3\.3Second Task: Breast Cancer PAM50 Subtypes

PAM50 subtype labels\[[6](https://arxiv.org/html/2610.33307#bib.bib47)\]from the TCGA PanCancer Atlas\[[46](https://arxiv.org/html/2610.33307#bib.bib26)\]were obtained from cBioPortal\[[47](https://arxiv.org/html/2610.33307#bib.bib10),[48](https://arxiv.org/html/2610.33307#bib.bib19)\]\(study brca\_tcga\_pan\_can\_atlas\_2018\) for 981 patients and matched to TCGA\-BRCA tumors\[[49](https://arxiv.org/html/2610.33307#bib.bib55)\]of the pan\-cancer cohort\. Samples kept their pan\-cancer set: 797 development samples and 184 locked test samples \(Table[1](https://arxiv.org/html/2610.33307#S3.T1)\)\. Development samples were split by stratified 5\-fold CV \(seed 42; training folds of 637\)\. The design, depth grid and measures for this task were fixed before any result was seen\.

### 3\.4Candidate Pre\-Filter

Within each training fold, genes were first filtered without labels \(TPM\>\>1 in at least 20 training samples\), which left about 48,000 genes\. A category\-aware analysis of variance \(ANOVA\) F filter then kept 3,000 candidates, with quotas proportional to each RNA category’s share of the expressed genes \(at least 50 per category\), so that non\-coding genes were not crowded out by mRNAs\. In the quality\-aware pipeline, the quality filter \(Section[3\.8](https://arxiv.org/html/2610.33307#S3.SS8)\) is applied between these two steps\.

### 3\.5Boruta

Boruta\[[11](https://arxiv.org/html/2610.33307#bib.bib35)\]was implemented directly, following its Python implementation BorutaPy\[[16](https://arxiv.org/html/2610.33307#bib.bib7)\]: each iteration adds a permuted copy of every active feature \(shadow features\), fits a Random Forest, and counts a hit for each gene whose impurity importance exceeds the largest shadow importance\. Genes are confirmed or rejected by a two\-step correction \(Benjamini–Hochberg\[[50](https://arxiv.org/html/2610.33307#bib.bib5)\], then Bonferroni over iterations\) atα=0\.05\\alpha=0\.05\. We used 300 trees at every depth \(BorutaPy’s automatic tree count depends on depth, which would confound the comparison\), balanced class weights, and at most 50 iterations\. Genes still tentative at the end were treated as not confirmed\. Genes were ranked by confirmation, then hit rate, then mean importance; rankings from three seeds were averaged \(mean hit rate, then mean importance\)\. Algorithm[1](https://arxiv.org/html/2610.33307#alg1)gives the full pipeline for one training fold\.

Algorithm 1Quality\-Aware Hybrid Selection for One Training Fold0:training samples

XX, labels

yy, detected\-gene count

qqper sample; depth

dd, seeds

SS, candidate count

C=3,000C=3\{,\}000, threshold

τ=0\.3\\tau=0\.3
1:Expression filter: keep genes with TPM

\>\>1 in at least 20 training samples

2:Quality filter: for each gene, compute

rqr\_\{q\}, its within\-class correlation with

log10⁡q\\log\_\{10\}q; drop genes with

\|rq\|\>τ\|r\_\{q\}\|\>\\tau
3:Category\-aware pre\-filter: rank the remaining genes by ANOVA F; keep

CCgenes, split across RNA categories in proportion to their sizes \(at least 50 each\)

4:foreach seed

s∈Ss\\in Sdo

5:Run Boruta \(300 trees, maximum depth

dd, at most 50 iterations,

α=0\.05\\alpha=0\.05\); record each gene’s decision, hit rate and mean importance

6:endfor

7:Rank genes by mean hit rate, then mean importance, across seeds

7:the top\-

KKgenes for any panel size

KK

### 3\.6Depth Experiment

Random Forest maximum depth was set to 3, 5, 8, 10, 15, 20, 25, 30 or unlimited \(pan\-cancer\) and 3, 5, 8, 10, 15, 20 or unlimited \(PAM50\), with seeds 0–2 in every fold; depths 5, 15 and unlimited had seeds 0–4 in the pan\-cancer task\. Agreement between selections was measured by the Jaccard index\[[51](https://arxiv.org/html/2610.33307#bib.bib29)\]of the top\-KKgenes \(K=500K=500pan\-cancer; 200 and 500 PAM50\)\. The yardstick was seed noise: overlap between two seeds at the same depth\. The depth effect was measured against unlimited depth with different seeds \(seedaaat depthddvs seedbbat unlimited depth,a≠ba\\neq b\), because runs sharing a seed share shadow permutations and tree random states, which inflates their overlap when the cap rarely binds\. We call the difference between seed\-to\-seed overlap and this cross\-seed overlap with unlimited depth the*depth gap*\. Stability across folds was measured by the Nogueira indexΦ\\Phiof the top\-KKsets\[[29](https://arxiv.org/html/2610.33307#bib.bib46)\]\. To test whether combining depths stabilizes the selection, we also ranked genes by their hit rates averaged over depths 5, 15 and unlimited\.

The decision rule for the pan\-cancer task was set before running: the depth effect is real if the mean between\-depth top\-500 Jaccard is at least 0\.05 below the mean between\-seed Jaccard and lower in all five folds\.

### 3\.7Gene Properties

For each top\-500 set we recorded the share of each RNA category, the median ANOVA F percentile among candidates, and marker coverage: the share of each class’s 20 strongest one\-vs\-rest markers \(training fold\) found in the set, averaged over the eight smallest and the eight largest classes\. For PAM50 we counted the PAM50 genes recovered in the top 100 and 200\.

### 3\.8Quality Association and Quality Filter

For each expressed gene, the quality associationrqr\_\{q\}was the Pearson correlation, within class, between its expression andlog10\\log\_\{10\}of the sample’s number of detected genes\. Both variables were centered on their class means in the training fold before the correlation was computed, so differences in quality between classes do not count\. A gene was quality\-associated when\|rq\|\>0\.3\|r\_\{q\}\|\>0\.3\. The quality\-aware pipeline drops these genes after the expression filter and before the category quotas; thresholds 0\.2 and 0\.4 were run as a sensitivity check\. The baseline pipeline is identical but omits this filter; the depth experiment used the baseline pipeline\. The 0\.3 threshold was chosen during exploration from quality association alone, not from accuracy\. Two outcomes were fixed in advance: the filter should lower the quality\-associated share of the selected genes, and it should narrow the accuracy gap between high\- and low\-quality validation samples\.

### 3\.9Classifiers and Accuracy

Gene sets were the topKKgenes of each ranking \(pan\-cancerK=50K=50, 100, 200, 500, 1,000; PAM50K=20K=20, 50, 100, 200, 500\)\. Two classifiers were trained with fixed settings for every gene set: logistic regression\[[52](https://arxiv.org/html/2610.33307#bib.bib48)\]\(standardized features, L2 penalty,C=0\.1C=0\.1, balanced class weights\) and LightGBM 4\.7\.0\[[53](https://arxiv.org/html/2610.33307#bib.bib33)\]\(300 trees, learning rate 0\.05, 31 leaves, balanced class weights, deterministic mode\)\. The primary measure was balanced accuracy\[[54](https://arxiv.org/html/2610.33307#bib.bib9)\]on validation folds, with macro\-F1 as secondary\. Methods were compared by paired differences across folds\. References were the ANOVA F ranking of the same candidates and, in the pan\-cancer task, random genes drawn from the candidates\.

### 3\.10Locked Test Sets

The final pipelines were rerun on all development samples \(unlimited depth unless stated, three seeds each\)\. Panel sizeKKwas chosen per classifier by the one\-standard\-error rule\[[55](https://arxiv.org/html/2610.33307#bib.bib24)\]on CV results of the quality\-aware pipeline: the smallestKKwhose mean balanced accuracy was within one standard error of the best\. A compact panel was also reported \(K=100K=100pan\-cancer;K=50K=50PAM50, to match the PAM50 gene count\)\. On the test sets we compared the quality\-aware and baseline pipelines in both tasks, a depth\-5 pipeline in PAM50, and the 50 PAM50 genes as an upper reference, since the PAM50 labels were derived from those genes\. We report balanced accuracy with 95% confidence intervals from 2,000 bootstrap resamples\[[56](https://arxiv.org/html/2610.33307#bib.bib15)\]drawn within class, macro\-F1 and per\-class recall\. Paired differences were tested by the bootstrap interval of the difference and an exact McNemar test\[[57](https://arxiv.org/html/2610.33307#bib.bib41),[58](https://arxiv.org/html/2610.33307#bib.bib12)\]\. A difference was claimed only if its 95% interval excluded 0\. Each test set was opened once \(time recorded\)\.

### 3\.11Robustness Checks

Four checks were fixed before they were run\. 1\) Realized depth: unrestricted forests \(100 trees, balanced class weights\) were fitted to the candidates of every training fold of both tasks, and the depth of every tree was recorded\. 2\) Importance measure: on pan\-cancer fold 0, forests of 300 trees at depth 5 and at unlimited depth \(seeds 0–2\) were fitted to the 3,000 candidates\. Genes were ranked by impurity importance and by permutation importance\[[12](https://arxiv.org/html/2610.33307#bib.bib8),[35](https://arxiv.org/html/2610.33307#bib.bib2)\]\(increase in validation log loss, two permutations per gene\), and the depth gap was computed for each; in this check it was the mean seed agreement at the two depths minus their cross\-seed overlap\. The depth effect was taken as independent of the importance measure if the permutation\-importance gap was at least 0\.05\. 3\) Replication: the second prepared CV repeat \(new folds, pre\-filter refitted in each training fold\) was run at depths 5, 8, 10, 15 and unlimited, seeds 0–2 \(75 runs\)\. The main effect counted as replicated if the depth\-5 gap was at least 0\.05 and positive in all five folds; the observation that depth 10 is least reproducible was kept only if depth 10 again had the lowest seed agreement among depths 8, 10 and 15\. 4\) Sample size versus classes: in every pan\-cancer training fold, we drew stratified subsamples of 637, 1,600 and 3,300 samples and used the full fold \(all 33 classes\), and subsamples of 637 samples restricted to 5, 10, 20 or 33 randomly drawn cancer types \(three draws each\); the pre\-filter was refitted on each subsample and the realized depth of 100 unrestricted trees was recorded\. Boruta was then run on the 637\-sample, 33\-class subsample at depths 5, 8, 10 and unlimited \(seeds 0–2, 60 runs\); depths 15 and 20 were added after this first run \(30 runs\) to locate where the gap vanishes\. Sample size was taken as the main driver if the depth\-8 gap for the top 200 genes was at most 0\.02, as in PAM50 \(637 training samples\), and the number or kind of classes if it was at least 0\.05\.

### 3\.12Software and Computing

Python 3\.10\.12, NumPy 2\.2\.6\[[59](https://arxiv.org/html/2610.33307#bib.bib23)\], pandas 2\.3\.3, SciPy 1\.15\.3\[[60](https://arxiv.org/html/2610.33307#bib.bib57)\], scikit\-learn 1\.7\.2\[[52](https://arxiv.org/html/2610.33307#bib.bib48)\], LightGBM 4\.7\.0\[[53](https://arxiv.org/html/2610.33307#bib.bib33)\], joblib 1\.5\.3, Matplotlib 3\.10\.8\[[61](https://arxiv.org/html/2610.33307#bib.bib27)\]and, for the GDC download, requests 2\.32\.5\. Exact versions of all packages are listed in the code repository\. Runs were executed on a 47\-core server with 500 GB RAM, 15 runs in parallel with 3 threads each\. A pan\-cancer Boruta run at unlimited depth took about 84 minutes per training fold \(300 trees, 50 iterations\); a PAM50 run took about 3 minutes\.

## 4Results

Tree depth shifts Boruta’s selection far beyond seed noise in pan\-cancer data and barely at all in PAM50 subtyping; the difference follows how deep unrestricted trees grow\. The quality filter removes quality\-associated genes in both tasks without changing test accuracy\.

Figure 2:Effect of Random Forest maximum depth on Boruta feature selection in TCGA pan\-cancer data \(33 classes; 5\-fold cross\-validation, 3 seeds per depth\)\. Shaded: depth range recommended in the BorutaPy documentation \(3–7\); “unl\.” = unlimited depth\. \(a\) Genes confirmed by Boruta \(mean±\\pmSD over folds and seeds\)\. \(b\) Jaccard overlap of the top 500 genes: blue, between each depth and unlimited depth, compared across different seeds; dashed, between two seeds at the same depth\. \(c\) Stability of the top 500 genes across folds \(Nogueira index\)\. \(d\) Validation balanced accuracy of logistic regression and LightGBM trained on the top 50 genes \(mean±\\pmSD over folds\); differences between depths are consistent within folds \(Section[4\.2](https://arxiv.org/html/2610.33307#S4.SS2)\)\. \(e\) Share of each class’s 20 strongest one\-vs\-rest marker genes found among the top 500, averaged over the 8 smallest and the 8 largest classes\. \(f\) Share of non\-coding “other” gene types, mostly processed pseudogenes, among the top 500\.### 4\.1Depth Changes What Boruta Selects in Pan\-Cancer Data

The pre\-declared decision rule was met: the top\-500 overlap between depths \(0\.528\) was 0\.364 below the overlap between seeds \(0\.892\), and lower in all five folds \(differences 0\.347–0\.377\)\. Depth\-5 trees confirmed 472 genes against 1,659 at unlimited depth, and depth 3 only 249 \(Fig\.[2](https://arxiv.org/html/2610.33307#S4.F2)\(a\)\)\.

Measured against seed noise, the gap closes steadily between depth 8 and depth 20 \(Fig\.[2](https://arxiv.org/html/2610.33307#S4.F2)\(b\)\)\. It is 0\.50 at depth 3, 0\.47 at depth 5 and 0\.35 at depth 8, falls to 0\.20 at depth 10 and 0\.12 at depth 15, and is 0\.01 at depth 20 and 0\.00 from depth 25\. Across all five training folds, unrestricted trees reached median depth 33 \(5th–95th percentile 28–39; Fig\.[3](https://arxiv.org/html/2610.33307#S4.F3)\)\. A cap of 20 therefore cuts almost every tree, yet changes the selection no more than a new seed does: splits below depth 20 add little to the importance ranking\.

Every depth was reproducible across folds \(Φ\\Phi0\.85–0\.90\), so depth causes a systematic shift rather than instability, although shallow selections were somewhat less stable \(Φ\\Phi0\.849 at depth 3, 0\.863 at depth 5, 0\.900 at unlimited depth\) and agreed less between seeds \(0\.82–0\.84 vs 0\.93\)\. Depth 10 was the least reproducible setting \(seed agreement 0\.78,Φ\\Phi0\.858\), lying in the middle of the transition; this replicated in a second CV repeat \(Section[4\.9](https://arxiv.org/html/2610.33307#S4.SS9)\)\. Averaging the hit rates of depths 5, 15 and unlimited did not stabilize the selection either \(Φ\\Phi0\.861, below unlimited depth alone\)\.

Figure 3:The depth effect follows the depth that unrestricted trees reach\. \(a\) Depth gap, defined as the seed\-to\-seed overlap of the top 500 genes minus their overlap with unlimited\-depth selections from different seeds, in the pan\-cancer and PAM50 tasks; 0 means changing the depth alters the selection no more than changing the seed\. Shaded: BorutaPy\-recommended range\. \(b\) Realized depth of unrestricted Random Forest trees \(100 trees per training fold, 5 folds\), on the same depth scale as \(a\); boxes show quartiles, whiskers the 5th–95th percentiles\.
### 4\.2Shallow Trees Give Worse Small Panels

With 50 genes, balanced accuracy rose from 0\.806 \(depth 3\) and 0\.809 \(depth 5\) to 0\.889 at unlimited depth with logistic regression, and from 0\.827 to 0\.870 with LightGBM \(Fig\.[2](https://arxiv.org/html/2610.33307#S4.F2)\(d\)\)\. Paired by fold, depth 5 was worse than unlimited depth atK=50K=50by 0\.080 \(logistic regression\) and 0\.039 \(LightGBM\), with no fold favoring shallow trees\. The gap shrank with panel size \(LightGBM:−0\.018\-0\.018atK=100K=100,−0\.009\-0\.009at 500,−0\.003\-0\.003at 1,000\), and fromK=1,000K=1\{,\}000every depth was within 0\.927–0\.943\. For reference, atK=50K=50the ANOVA F ranking reached 0\.772 \(logistic regression\) and 0\.806 \(LightGBM\), and random candidates 0\.849 and 0\.819\.

Table 2:Pan\-Cancer Selections by Random Forest Depth \(5 Folds, Seeds 0–2; Top 500 Genes Unless Stated\)
### 4\.3What Shallow Trees Select

Gene properties changed smoothly with depth \(Table[2](https://arxiv.org/html/2610.33307#S4.T2)\)\. Shallow trees favored genes with strong univariate signal \(median ANOVA F percentile 83 at depth 3, 73 at unlimited depth\) and non\-coding “other” gene types \(share 0\.29 vs 0\.11\)\. They missed most markers of large classes: coverage of the 20 strongest one\-vs\-rest markers of the eight largest classes was 0\.14 at depth 3 and 0\.62 at unlimited depth\. Markers of small classes were recovered by depth 15 \(about 0\.60\); those of large classes only by depth 20\. Across five folds, 175 genes were specific to depth 5 \(74 “other”\) and 195 to unlimited depth \(150 mRNA\), around a shared core of 238\.

### 4\.4In PAM50 Subtyping, Unrestricted Trees Are Shallow and Depth Matters Little

With 637 training samples and five classes, unrestricted trees reached median depth 12 \(range 8–20\), and the depth effect was small\. Only depth 3 departed clearly from unlimited depth: 264 confirmed genes against 386, a top\-200 depth gap of 0\.087, and fewer PAM50 genes in the top 200 \(27\.6 vs 30\.2\)\. At depth 5 the gap was 0\.005 \(top 200\) and 0\.020 \(top 500\); from depth 8 it was 0\.00 \(Fig\.[3](https://arxiv.org/html/2610.33307#S4.F3)\)\. Validation accuracy showed no depth effect: depth 5 minus unlimited ranged from−0\.021\-0\.021to\+0\.018\+0\.018acrossKKand classifiers, with mixed signs\. In both tasks the gap vanished once the cap reached 61–76% of the median depth of unrestricted trees\.

Boruta clearly beat the ANOVA F ranking for small PAM50 panels: with 20 genes, 0\.82 vs 0\.71 \(LightGBM\) and 0\.86 vs 0\.77 \(logistic regression\)\. FromK=100K=100the two were equal\.

### 4\.5A Third of Candidates Are Quality\-Associated

In the pan\-cancer task, 32% of the 3,000 candidates \(29–33% per fold\) had\|rq\|\>0\.3\|r\_\{q\}\|\>0\.3\(Fig\.[4](https://arxiv.org/html/2610.33307#S4.F4)\(a\)\)\. The share depended strongly on RNA category: 8% of mRNA candidates, 15% of miRNA genes, 40% of lncRNAs and 57% of “other” genes, highest for transcribed processed pseudogenes \(70%\), TEC \(68%\) and processed pseudogenes \(66%\)\. Category quotas therefore draw quality\-associated genes into the candidate pool\. Deep Boruta rejected most of them \(5% of the unlimited\-depth top 500\), while shallow trees kept three times as many \(15% at depth 5; Fig\.[4](https://arxiv.org/html/2610.33307#S4.F4)\(b\)\)\.

Processed pseudogenes might simply mirror their parent genes through misassigned reads\. They did not: within cancer type, their median correlation with the parent gene was 0\.03 among all candidates\.

Figure 4:Candidate genes associated with sample quality in the pan\-cancer task\. A gene is quality\-associated when its within\-class correlation withlog10\\log\_\{10\}of the number of detected genes exceeds 0\.3 in absolute value \(training fold\)\. \(a\) Share of quality\-associated candidates by RNA category \(blue\) and by the most affected gene types \(gray\), over 5 folds\. \(b\) Share among the top 500 Boruta genes at each depth; dashed, share among all 3,000 candidates\. \(c\) Share among the top 500 genes re\-measured on validation samples, without and with the within\-class quality filter\.
### 4\.6The Quality Filter in Cross\-Validation

The filter removed about 14,500 of 48,131 expressed genes per fold and replaced half the candidates \(Jaccard with baseline 0\.50–0\.53\), while keeping category shares\. The quality\-associated share of selected genes, measured again on validation samples, fell from 5\.3% to 1\.3% \(Fig\.[4](https://arxiv.org/html/2610.33307#S4.F4)\(c\)\)\. Selected panels held more lncRNAs \(top 500: 0\.216 vs 0\.190\)\. Cross\-validated balanced accuracy rose slightly \(LightGBM\+0\.020\+0\.020atK=50K=50, higher in 5 of 5 folds; logistic regression\+0\.002\+0\.002to\+0\.005\+0\.005\)\. Of the two pre\-declared outcomes, the first was met \(the lower quality\-associated share above\); the second was not, because the accuracy gap between high\- and low\-quality validation samples did not shrink\. Thresholds 0\.2 and 0\.4 gave similar results\.

### 4\.7Computational Cost

Shallow trees are faster, but the saving buys worse panels in the pan\-cancer task\. With 300 trees and 50 iterations on about 6,700 training samples and 3,000 candidates, one Boruta run took 22\.8 minutes at depth 5, 68\.0 at depth 15 and 83\.8 at unlimited depth \(3\.7 times longer than depth 5\), on 3 CPU threads per run\. In exchange, unlimited depth raised 50\-gene balanced accuracy by 8\.0 points \(logistic regression\) and 3\.9 points \(LightGBM\)\. In PAM50 data the difference is small in both cost and outcome: 2\.2–2\.3 minutes at depth 5 against 3\.0–3\.1 at unlimited depth on 797 samples\. The quality filter added no measurable cost to pre\-filtering; its pan\-cancer Boruta runs took 87–93 minutes because more genes stayed active\. The full pan\-cancer depth grid \(165 runs\) took 485 CPU\-hours, and all 400 Boruta runs in this study 840 CPU\-hours\.

### 4\.8Locked Test Sets

On the test sets, the quality filter, and in PAM50 the depth cap, made no difference to accuracy \(Table[3](https://arxiv.org/html/2610.33307#S4.T3), Fig\.[5](https://arxiv.org/html/2610.33307#S4.F5)\)\. The one\-standard\-error rule choseK=1,000K=1\{,\}000for both classifiers in the pan\-cancer task, the largest size tested, andK=50K=50\(logistic regression\) andK=20K=20\(LightGBM\) in PAM50\.

Table 3:Balanced Accuracy on the Locked Test SetsTask, classifier,KKQuality\-aware \(95% CI\)BaselineDepth 5PAM50 genesQuality\-aware minus baseline \(95% CI\)Pan\-cancer, LR, 1,0000\.943 \(0\.927–0\.958\)0\.942––\+0\.001\+0\.001\(−0\.006\-0\.006to 0\.007\)Pan\-cancer, LightGBM, 1,0000\.928 \(0\.912–0\.945\)0\.923––\+0\.006\+0\.006\(−0\.001\-0\.001to 0\.013\)Pan\-cancer, LR, 1000\.921 \(0\.904–0\.936\)0\.925––−0\.005\-0\.005\(−0\.013\-0\.013to 0\.002\)Pan\-cancer, LightGBM, 1000\.905 \(0\.887–0\.923\)0\.904––\+0\.001\+0\.001\(−0\.012\-0\.012to 0\.013\)PAM50, LR, 500\.889 \(0\.814–0\.951\)0\.8970\.9020\.894−0\.008\-0\.008\(−0\.044\-0\.044to 0\.017\)PAM50, LightGBM, 200\.833 \(0\.741–0\.920\)0\.8340\.811–−0\.001\-0\.001\(−0\.039\-0\.039to 0\.031\)PAM50, LightGBM, 500\.865 \(0\.780–0\.945\)0\.8700\.8740\.786−0\.004\-0\.004\(−0\.053\-0\.053to 0\.036\)Pan\-cancer: 2,095 samples, 33 classes; PAM50: 184 samples, 5 classes\. Intervals from 2,000 bootstrap resamples drawn within class\. LR: logistic regression; CI: confidence interval\.

In the pan\-cancer task the final 1,000\-gene panel reached 0\.943 balanced accuracy and 0\.959 accuracy with logistic regression; the 100\-gene panel reached 0\.921\. In PAM50, of 11 paired comparisons, one interval just excluded 0 \(LightGBM,K=20K=20, quality\-aware minus depth 5:\+0\.022\+0\.022, 0\.003–0\.044; McNemarp=0\.11p=0\.11\)\. It was not seen atK=50K=50or with logistic regression, so we do not count it as a depth effect\. A 50\-gene Boruta panel containing 14 PAM50 genes matched the 50 PAM50 genes with logistic regression \(−0\.005\-0\.005,−0\.028\-0\.028to 0\.019\), although the labels were derived from those genes\. Recall for Normal\-like \(7 test samples\) ranged from 0\.29 to 0\.86 across panels\.

Figure 5:Balanced accuracy on the locked test sets, with 95% confidence intervals from 2,000 bootstrap resamples drawn within class\. \(a\) Pan\-cancer task \(2,095 samples, 33 classes\), panels of 1,000 genes \(chosen by the one\-standard\-error rule\) and 100 genes\. \(b\) PAM50 task \(184 samples, 5 subtypes\), panels of 20 or 50 genes; the 50 PAM50 genes are an upper reference, as the labels were derived from them\.
### 4\.9Robustness Checks

The depth effect holds under permutation importance and replicates almost exactly in a second CV repeat; all three pre\-declared rules were met\.

*Importance measure\.*Ranking genes by permutation importance gave a depth gap of 0\.223 \(seed agreement 0\.40 at depth 5 and 0\.69 at unlimited depth; depth 5 vs unlimited 0\.32\), close to the gap under impurity importance \(0\.261\)\. The effect is therefore not an artifact of impurity importance\. The two importance rankings agreed more in deep forests \(top\-500 Jaccard 0\.66 vs 0\.55\), and deep forests also classified better with all 3,000 candidates \(validation balanced accuracy 0\.889 vs 0\.778\)\.

*Second CV repeat\.*With new folds and refitted pre\-filters, every measure matched the first repeat \(Table[4](https://arxiv.org/html/2610.33307#S4.T4)\)\. The depth\-5 gap was 0\.468 in both repeats \(smallest fold 0\.448\), and depth 10 again had the lowest seed agreement \(0\.784, against 0\.831 at depth 8 and 0\.909 at depth 15\)\. Confirmed gene counts differed by less than 1% between repeats\.

Table 4:Pan\-Cancer Selections in Two Independent CV Repeats*Realized depth\.*Over all folds, unrestricted trees reached median depth 33 \(5th–95th percentile 28–39, range 25–44\) in the pan\-cancer task and 12 \(9–16, range 8–20\) in PAM50 subtyping\. The gap vanished from depth 20–25 and from depth 8, respectively: 61–76% and 67% of the median\.

*Sample size or number of classes?*The two tasks differ in both sample size and number of classes, so we separated the two by subsampling the pan\-cancer training folds \(Fig\.[6](https://arxiv.org/html/2610.33307#S4.F6)\)\. With all 33 classes, a tenfold increase in samples raised the median realized depth only from 26\.5 \(637 samples\) to 33\.4 \(about 6,700\)\. At a fixed 637 samples, the number of classes raised it from 6\.6 \(5 randomly drawn cancer types\) to 26\.5 \(33 types\)\. With 637 samples and all 33 classes, Boruta’s depth effect stayed large: the depth\-8 gap was 0\.292 for the top 200 genes \(the set fixed in the rule; Fig\.[6](https://arxiv.org/html/2610.33307#S4.F6)\(c\) shows the top 500\), against 0\.001 in PAM50 with the same number of training samples\. The gap fell to 0\.084 at depth 15 and 0\.016 at depth 20, that is, it vanished at 75% of the median realized depth of 26\.5, in line with the two full tasks\. By the pre\-declared rule, the number and kind of classes, not sample size, drive the effect\. Five randomly drawn cancer types gave shallower trees than the five PAM50 subtypes \(median 6\.6 against 12\), so classes that are harder to separate also need deeper trees\.

Figure 6:Realized depth and the depth effect versus sample size and number of classes \(pan\-cancer subsamples\)\. \(a\) Median realized depth of unrestricted trees \(100 trees per training fold\) against training\-set size, all 33 classes; mean±\\pmSD over 5 folds\. \(b\) Median realized depth against the number of randomly drawn cancer types at 637 training samples \(3 draws per fold\)\. \(c\) Depth gap of the top 500 genes for the full pan\-cancer data, for a 637\-sample subsample with all 33 classes \(depths 5–20 and unlimited\), and for PAM50 \(637 training samples, 5 subtypes\)\. At 637 samples fewer than 500 genes were confirmed, so the top 500 also includes tentative genes ranked by hit rate\.

## 5Discussion

### 5\.1How Depth Changes Boruta’s Selection

Tree depth decides which genes can earn importance in Boruta\. A tree capped at depth 5 has at most 31 internal splits, and with 33 classes it spends them on the largest differences: genes with strong univariate signal that separate broad groups of cancer types\. Genes that distinguish large, similar classes, such as the subtypes of a common cancer, never get a split, so they never beat the shadow features and are not confirmed\. This explains the three properties of shallow selections: a bias toward high ANOVA F genes, the loss of large\-class markers \(coverage 0\.14 at depth 3 against 0\.62 unlimited\) and the weaker 50\-gene panels \(Sections[4\.2](https://arxiv.org/html/2610.33307#S4.SS2)and[4\.3](https://arxiv.org/html/2610.33307#S4.SS3)\)\. Depth 10 was the least reproducible setting in both CV repeats\. At that depth, about half of the large\-class signal is reachable, and which half is reached depends on the random draws, so the transition region is where Boruta is most sensitive to randomness\.

### 5\.2When Depth Matters

The effect depends on the problem\. It was large in pan\-cancer classification, with 33 classes and about 6,700 training samples per fold, where unrestricted trees reach median depth 33, and almost absent in PAM50 subtyping, with 5 classes and 637 training samples, where they reach median depth 12\. Subsampling showed that the number of classes, not sample size, set this difference: with all 33 classes, even 637 training samples gave trees of median depth 26\.5 and a large depth effect, whereas tenfold more samples added only about seven levels\. In all three settings \(pan\-cancer, PAM50, and the 637\-sample pan\-cancer subsample\) the depth gap vanished once the cap reached 61–76% of the median realized depth; the coarse depth grid means the true point may lie somewhat lower\. With three settings this is an observation rather than a law, but the practical advice needs no threshold: leaving depth uncapped cost no accuracy or stability in either task, and fitting one unrestricted forest shows the realized depth before any cap is chosen\. The extra cost is moderate: an unlimited\-depth run took 3\.7 times longer than a depth\-5 run in the pan\-cancer task and about 1\.3 times longer in PAM50\.

The result held under the checks most likely to be raised\. Ranking genes by permutation importance instead of impurity importance gave nearly the same depth gap \(0\.223 against 0\.261\), so the effect is not an artifact of impurity importance\. A second CV repeat with new folds and refitted pre\-filters reproduced every value within 0\.01\.

### 5\.3Relation to Prior Work and to the BorutaPy Default

Our PAM50 result shows that where unrestricted trees are shallow, a depth cap matters little\. Comparisons of Random Forest selection methods have mostly used smaller data sets with few classes\[[14](https://arxiv.org/html/2610.33307#bib.bib36),[15](https://arxiv.org/html/2610.33307#bib.bib11)\], which may explain why depth has received little attention\. The pan\-cancer result shows that this small effect does not carry over to larger, multi\-class problems\. Kursa found that deeper Random Ferns confirmed more genes\[[14](https://arxiv.org/html/2610.33307#bib.bib36)\], matching our confirmed counts \(249 at depth 3 against 1,659 unlimited\)\. The depth range recommended by BorutaPy lies inside the shallow regime for pan\-cancer data and produced worse small panels there\. Comparisons limited to deep caps \(15–25\) or to large panels would miss the effect, because the differences there are small: with 1,000 genes, every depth reached 0\.927–0\.943 balanced accuracy\. The test accuracy of our 1,000\-gene panel \(0\.943 balanced accuracy, 0\.959 accuracy\) lies in the range reported for TCGA pan\-cancer classifiers\[[7](https://arxiv.org/html/2610.33307#bib.bib39),[9](https://arxiv.org/html/2610.33307#bib.bib44)\], although differences in cohorts, classes and metrics prevent a direct comparison\.

### 5\.4Quality\-Associated Genes

About a third of pre\-filtered candidates tracked the number of detected genes within class, mostly lncRNAs and pseudogenes\. This is consistent with the unwanted variation documented in TCGA\[[21](https://arxiv.org/html/2610.33307#bib.bib43)\]\. Category\-aware quotas, meant to give non\-coding genes a fair share of candidates, pull these genes in: each category’s quota must be filled even when its genes carry weak class signal, and quality\-linked variation can raise their F statistics\. The within\-class filter removes them before selection without dropping whole gene types, which matters because many non\-coding genes carry real signal\[[24](https://arxiv.org/html/2610.33307#bib.bib22)\]\. It left test accuracy unchanged in both tasks, so we claim cleaner panels at no cost rather than higher accuracy\. The small CV gains \(up to 2 points with LightGBM\) did not hold on the test sets, and the filter did not make classifiers more robust to sample quality within TCGA\. Detected\-gene counts also reflect tumor purity\[[20](https://arxiv.org/html/2610.33307#bib.bib4)\]and transcriptional activity, so we use “quality\-associated” rather than “artifact”\. Deep Boruta was partly self\-cleaning: 5% of its top 500 genes were quality\-associated, against 15% at depth 5, so the filter matters most for shallow trees and for univariate selectors\.

### 5\.5Beyond Gene Expression

The explanation in Section[5\.1](https://arxiv.org/html/2610.33307#S5.SS1)does not depend on biology: a capped tree has few splits, and they go to the features with the strongest marginal signal\. Other selectors that threshold tree importance, including other shadow\-feature methods, may therefore show the same bias\. In our data the effect grew with the depth that unrestricted trees reach, which rose with the number of classes and, in one comparison, was greater for classes that are harder to separate\. Many\-class problems in other domains, such as text, spectral or imaging data, may therefore be affected as well\. We tested only RNA\-seq data with Boruta, so this is a hypothesis for future work, not a finding of this study\.

### 5\.6Practical Guidelines

1. 1\.Fit one unrestricted forest on the training data and record tree depths before choosing a cap\.
2. 2\.If depth must be capped for speed, keep the cap above about 75% of the median realized depth; otherwise leave it unlimited\.
3. 3\.Fix the number of trees across settings; BorutaPy’s automatic tree count changes with depth\.
4. 4\.Judge any setting against seed variation, comparing runs with different seeds\.
5. 5\.Test candidate features for within\-class association with sample\-quality metrics, and filter inside training folds\.
6. 6\.Keep every label\-dependent step inside CV folds, and open the test set once\.

### 5\.7Limitations

Both tasks come from one consortium and one processing pipeline; an external cohort is planned for a follow\-up study\. Permutation importance was checked on one pan\-cancer fold, outside Boruta, and the second CV repeat covered five of the nine depths\. Boruta was run with 300 trees and 50 iterations, and in the pan\-cancer task many genes were still tentative at the end\. The 0\.3 quality threshold was chosen during exploration, from quality association alone; thresholds of 0\.2 and 0\.4 gave similar results\. The class\-number comparison used randomly drawn cancer types, which are easier to separate than subtypes of one cancer; class separability was not varied directly\. The PAM50 test set is small \(7 Normal\-like and 13 Her2 samples\), so per\-class recall is noisy\. PAM50 labels were derived from the PAM50 genes, so the PAM50 gene panel is an upper reference, not a fair competitor\.

## 6Conclusion

In multi\-class cancer RNA\-seq data, Random Forest tree depth is not a minor Boruta setting\. In TCGA pan\-cancer data, the commonly recommended shallow depths changed which genes were selected far more than the random seed did, and gave less accurate small panels\. The effect disappeared once the cap reached the depth unrestricted trees grow to, and was almost absent in breast cancer subtyping, where those trees are shallow\. Subsampling showed that this depth is set mainly by the number of classes, not by sample size\. Leaving depth uncapped cost nothing in either task\. About a third of pre\-filtered candidates track sample quality within class; filtering them within class before category quotas removes them and admits more lncRNAs without loss of test accuracy\. We recommend this pipeline \(expression filter, within\-class quality filter, category\-aware quotas, Boruta with unrestricted trees, rankings averaged over seeds\) and release the code\. Its panels should next be tested in independent cohorts processed with other pipelines\.

## Author Contributions

Tareque Mohmud Chowdhury conceived and designed the approach, performed the experiments, analyzed the data, and wrote the manuscript\. Abu Raihan Mostofa Kamal supervised the whole study and revised the manuscript\. Both of the authors have read and approved the final version of the manuscript\.

## Data and Code Availability

TCGA RNA\-seq data and clinical data \(recorded primary diagnosis, used only to stratify the splits\) are available from the NCI Genomic Data Commons \(https://portal\.gdc\.cancer\.gov; Data Release 46\.0\)\. PAM50 labels are from the TCGA PanCancer Atlas via cBioPortal \(study brca\_tcga\_pan\_can\_atlas\_2018\)\. The code is available from the corresponding author upon reasonable request\.

## Declaration of Competing Interest

The authors declare no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper\.

## References

- \[1\]\(2009\)RNA\-Seq: a revolutionary tool for transcriptomics\.Nat\. Rev\. Genet\.10\(1\),pp\. 57–63\.External Links:[Document](https://dx.doi.org/10.1038/nrg2484)Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p1.1)\.
- \[2\]The Cancer Genome Atlas Research Network J\. N\. Weinsteinet al\.\(2013\)The Cancer Genome Atlas Pan\-Cancer analysis project\.Nat\. Genet\.45\(10\),pp\. 1113–1120\.External Links:[Document](https://dx.doi.org/10.1038/ng.2764)Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p1.1),[§3\.1](https://arxiv.org/html/2610.33307#S3.SS1.p1.1)\.
- \[3\]I\. Guyon and A\. Elisseeff\(2003\)An introduction to variable and feature selection\.J\. Mach\. Learn\. Res\.3,pp\. 1157–1182\.Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p1.1),[§2\.1](https://arxiv.org/html/2610.33307#S2.SS1.p1.1)\.
- \[4\]Y\. Saeys, I\. Inza, and P\. Larrañaga\(2007\)A review of feature selection techniques in bioinformatics\.Bioinformatics23\(19\),pp\. 2507–2517\.External Links:[Document](https://dx.doi.org/10.1093/bioinformatics/btm344)Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p1.1),[§2\.1](https://arxiv.org/html/2610.33307#S2.SS1.p1.1)\.
- \[5\]E\. Alhenawi, R\. Al\-Sayyed, A\. Hudaib, and S\. Mirjalili\(2022\)Feature selection methods on gene expression microarray data for cancer classification: a systematic review\.Comput\. Biol\. Med\.140,pp\. 105051\.External Links:[Document](https://dx.doi.org/10.1016/j.compbiomed.2021.105051)Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p1.1),[§2\.1](https://arxiv.org/html/2610.33307#S2.SS1.p1.1)\.
- \[6\]J\. S\. Parker, M\. Mullins, M\. C\. U\. Cheang,et al\.\(2009\)Supervised risk predictor of breast cancer based on intrinsic subtypes\.J\. Clin\. Oncol\.27\(8\),pp\. 1160–1167\.External Links:[Document](https://dx.doi.org/10.1200/JCO.2008.18.1370)Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p1.1),[§3\.3](https://arxiv.org/html/2610.33307#S3.SS3.p1.1)\.
- \[7\]Y\. Li, K\. Kang, J\. M\. Krahn,et al\.\(2017\)A comprehensive genomic pan\-cancer classification using The Cancer Genome Atlas gene expression data\.BMC Genomics18,pp\. 508\.External Links:[Document](https://dx.doi.org/10.1186/s12864-017-3906-0)Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p1.1),[§5\.3](https://arxiv.org/html/2610.33307#S5.SS3.p1.1)\.
- \[8\]T\. Khorshed, M\. N\. Moustafa, and A\. Rafea\(2020\)Deep learning for multi\-tissue cancer classification of gene expressions \(GeneXNet\)\.IEEE Access8,pp\. 90615–90629\.External Links:[Document](https://dx.doi.org/10.1109/ACCESS.2020.2992907)Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p1.1)\.
- \[9\]M\. Mostavi, Y\. Chiu, Y\. Huang, and Y\. Chen\(2020\)Convolutional neural network models for cancer type prediction based on gene expression\.BMC Med\. Genomics13\(Suppl\. 5\),pp\. 44\.External Links:[Document](https://dx.doi.org/10.1186/s12920-020-0677-2)Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p1.1),[§5\.3](https://arxiv.org/html/2610.33307#S5.SS3.p1.1)\.
- \[10\]M\. Mohammed, H\. Mwambi, I\. B\. Mboya, M\. K\. Elbashir, and B\. Omolo\(2021\)A stacking ensemble deep learning approach to cancer type classification based on TCGA data\.Sci\. Rep\.11,pp\. 15626\.External Links:[Document](https://dx.doi.org/10.1038/s41598-021-95128-x)Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p1.1)\.
- \[11\]M\. B\. Kursa and W\. R\. Rudnicki\(2010\)Feature selection with the Boruta package\.J\. Stat\. Softw\.36\(11\),pp\. 1–13\.External Links:[Document](https://dx.doi.org/10.18637/jss.v036.i11)Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p2.1),[§3\.5](https://arxiv.org/html/2610.33307#S3.SS5.p1.1)\.
- \[12\]L\. Breiman\(2001\)Random forests\.Mach\. Learn\.45\(1\),pp\. 5–32\.External Links:[Document](https://dx.doi.org/10.1023/A%3A1010933404324)Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p2.1),[§2\.2](https://arxiv.org/html/2610.33307#S2.SS2.p1.1),[§3\.11](https://arxiv.org/html/2610.33307#S3.SS11.p1.1)\.
- \[13\]R\. Díaz\-Uriarte and S\. Alvarez de Andrés\(2006\)Gene selection and classification of microarray data using random forest\.BMC Bioinformatics7,pp\. 3\.External Links:[Document](https://dx.doi.org/10.1186/1471-2105-7-3)Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p2.1)\.
- \[14\]M\. B\. Kursa\(2014\)Robustness of Random Forest\-based gene selection methods\.BMC Bioinformatics15,pp\. 8\.External Links:[Document](https://dx.doi.org/10.1186/1471-2105-15-8)Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p2.1),[§2\.2](https://arxiv.org/html/2610.33307#S2.SS2.p1.1),[§5\.3](https://arxiv.org/html/2610.33307#S5.SS3.p1.1)\.
- \[15\]F\. Degenhardt, S\. Seifert, and S\. Szymczak\(2019\)Evaluation of variable selection methods for random forests and omics data sets\.Brief\. Bioinform\.20\(2\),pp\. 492–503\.External Links:[Document](https://dx.doi.org/10.1093/bib/bbx124)Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p2.1),[§2\.2](https://arxiv.org/html/2610.33307#S2.SS2.p1.1),[§5\.3](https://arxiv.org/html/2610.33307#S5.SS3.p1.1)\.
- \[16\]D\. HomolaBorutaPy: Python implementation of the Boruta all\-relevant feature selection method\.Note:scikit\-learn\-contrib\. \[Online\]\. Available: https://github\.com/scikit\-learn\-contrib/boruta\_pyAccessed: Oct\. 17, 2026Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p2.1),[§3\.5](https://arxiv.org/html/2610.33307#S3.SS5.p1.1)\.
- \[17\]M\. N\. Wright, A\. Ziegler, and I\. R\. König\(2016\)Do little interactions get lost in dark random forests?\.BMC Bioinformatics17,pp\. 145\.External Links:[Document](https://dx.doi.org/10.1186/s12859-016-0995-8)Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p3.1),[§2\.2](https://arxiv.org/html/2610.33307#S2.SS2.p1.1)\.
- \[18\]P\. Probst, M\. N\. Wright, and A\. Boulesteix\(2019\)Hyperparameters and tuning strategies for random forest\.WIREs Data Min\. Knowl\. Discov\.9\(3\),pp\. e1301\.External Links:[Document](https://dx.doi.org/10.1002/widm.1301)Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p3.1),[§2\.2](https://arxiv.org/html/2610.33307#S2.SS2.p1.1)\.
- \[19\]J\. T\. Leek, R\. B\. Scharpf, H\. C\. Bravo,et al\.\(2010\)Tackling the widespread and critical impact of batch effects in high\-throughput data\.Nat\. Rev\. Genet\.11\(10\),pp\. 733–739\.External Links:[Document](https://dx.doi.org/10.1038/nrg2825)Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p3.1),[§2\.4](https://arxiv.org/html/2610.33307#S2.SS4.p1.1),[§3\.2](https://arxiv.org/html/2610.33307#S3.SS2.p2.1)\.
- \[20\]D\. Aran, M\. Sirota, and A\. J\. Butte\(2015\)Systematic pan\-cancer analysis of tumour purity\.Nat\. Commun\.6,pp\. 8971\.External Links:[Document](https://dx.doi.org/10.1038/ncomms9971)Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p3.1),[§2\.4](https://arxiv.org/html/2610.33307#S2.SS4.p1.1),[§5\.4](https://arxiv.org/html/2610.33307#S5.SS4.p1.1)\.
- \[21\]R\. Molania, M\. Foroutan, J\. A\. Gagnon\-Bartsch,et al\.\(2023\)Removing unwanted variation from large\-scale RNA sequencing data with PRPS\.Nat\. Biotechnol\.41\(1\),pp\. 82–95\.External Links:[Document](https://dx.doi.org/10.1038/s41587-022-01440-w)Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p3.1),[§2\.4](https://arxiv.org/html/2610.33307#S2.SS4.p1.1),[§5\.4](https://arxiv.org/html/2610.33307#S5.SS4.p1.1)\.
- \[22\]S\. C\. Hicks, F\. W\. Townes, M\. Teng, and R\. A\. Irizarry\(2018\)Missing data and technical variability in single\-cell RNA\-sequencing experiments\.Biostatistics19\(4\),pp\. 562–578\.External Links:[Document](https://dx.doi.org/10.1093/biostatistics/kxx053)Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p3.1),[§2\.4](https://arxiv.org/html/2610.33307#S2.SS4.p1.1)\.
- \[23\]S\. Kalyana\-Sundaram, C\. Kumar\-Sinha, S\. Shankar,et al\.\(2012\)Expressed pseudogenes in the transcriptional landscape of human cancers\.Cell149\(7\),pp\. 1622–1634\.External Links:[Document](https://dx.doi.org/10.1016/j.cell.2012.04.041)Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p3.1),[§2\.4](https://arxiv.org/html/2610.33307#S2.SS4.p1.1)\.
- \[24\]L\. Han, Y\. Yuan, S\. Zheng,et al\.\(2014\)The pan\-cancer analysis of pseudogene expression reveals biologically and clinically relevant tumour subtypes\.Nat\. Commun\.5,pp\. 3963\.External Links:[Document](https://dx.doi.org/10.1038/ncomms4963)Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p3.1),[§2\.4](https://arxiv.org/html/2610.33307#S2.SS4.p1.1),[§5\.4](https://arxiv.org/html/2610.33307#S5.SS4.p1.1)\.
- \[25\]X\. Yan, Z\. Hu, Y\. Feng,et al\.\(2015\)Comprehensive genomic characterization of long non\-coding RNAs across human cancers\.Cancer Cell28\(4\),pp\. 529–540\.External Links:[Document](https://dx.doi.org/10.1016/j.ccell.2015.09.006)Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p3.1),[§2\.4](https://arxiv.org/html/2610.33307#S2.SS4.p1.1)\.
- \[26\]C\. Ambroise and G\. J\. McLachlan\(2002\)Selection bias in gene extraction on the basis of microarray gene\-expression data\.Proc\. Natl\. Acad\. Sci\. USA99\(10\),pp\. 6562–6566\.External Links:[Document](https://dx.doi.org/10.1073/pnas.102102699)Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p4.1)\.
- \[27\]S\. Varma and R\. Simon\(2006\)Bias in error estimation when using cross\-validation for model selection\.BMC Bioinformatics7,pp\. 91\.External Links:[Document](https://dx.doi.org/10.1186/1471-2105-7-91)Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p4.1)\.
- \[28\]A\. Kalousis, J\. Prados, and M\. Hilario\(2007\)Stability of feature selection algorithms: a study on high\-dimensional spaces\.Knowl\. Inf\. Syst\.12\(1\),pp\. 95–116\.External Links:[Document](https://dx.doi.org/10.1007/s10115-006-0040-8)Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p4.1),[§2\.3](https://arxiv.org/html/2610.33307#S2.SS3.p1.1)\.
- \[29\]S\. Nogueira, K\. Sechidis, and G\. Brown\(2018\)On the stability of feature selection algorithms\.J\. Mach\. Learn\. Res\.18\(174\),pp\. 1–54\.Cited by:[§1](https://arxiv.org/html/2610.33307#S1.p4.1),[§2\.3](https://arxiv.org/html/2610.33307#S2.SS3.p1.1),[§3\.6](https://arxiv.org/html/2610.33307#S3.SS6.p1.1)\.
- \[30\]V\. Bolón\-Canedo, N\. Sánchez\-Maroño, A\. Alonso\-Betanzos, J\. M\. Benítez, and F\. Herrera\(2014\)A review of microarray datasets and applied feature selection methods\.Inf\. Sci\.282,pp\. 111–135\.External Links:[Document](https://dx.doi.org/10.1016/j.ins.2014.05.042)Cited by:[§2\.1](https://arxiv.org/html/2610.33307#S2.SS1.p1.1)\.
- \[31\]H\. Peng, F\. Long, and C\. Ding\(2005\)Feature selection based on mutual information: criteria of max\-dependency, max\-relevance, and min\-redundancy\.IEEE Trans\. Pattern Anal\. Mach\. Intell\.27\(8\),pp\. 1226–1238\.External Links:[Document](https://dx.doi.org/10.1109/TPAMI.2005.159)Cited by:[§2\.1](https://arxiv.org/html/2610.33307#S2.SS1.p1.1)\.
- \[32\]H\. Seo and D\. Cho\(2020\)Cancer\-related gene signature selection based on boosted regression for multilayer perceptron\.IEEE Access8,pp\. 64992–65004\.External Links:[Document](https://dx.doi.org/10.1109/ACCESS.2020.2985414)Cited by:[§2\.1](https://arxiv.org/html/2610.33307#S2.SS1.p1.1)\.
- \[33\]G\. Louppe, L\. Wehenkel, A\. Sutera, and P\. Geurts\(2013\)Understanding variable importances in forests of randomized trees\.InAdv\. Neural Inf\. Process\. Syst\. \(NeurIPS\),Vol\.26,pp\. 431–439\.Cited by:[§2\.2](https://arxiv.org/html/2610.33307#S2.SS2.p1.1)\.
- \[34\]C\. Strobl, A\. Boulesteix, A\. Zeileis, and T\. Hothorn\(2007\)Bias in random forest variable importance measures: illustrations, sources and a solution\.BMC Bioinformatics8,pp\. 25\.External Links:[Document](https://dx.doi.org/10.1186/1471-2105-8-25)Cited by:[§2\.2](https://arxiv.org/html/2610.33307#S2.SS2.p1.1)\.
- \[35\]A\. Altmann, L\. Toloşi, O\. Sander, and T\. Lengauer\(2010\)Permutation importance: a corrected feature importance measure\.Bioinformatics26\(10\),pp\. 1340–1347\.External Links:[Document](https://dx.doi.org/10.1093/bioinformatics/btq134)Cited by:[§2\.2](https://arxiv.org/html/2610.33307#S2.SS2.p1.1),[§3\.11](https://arxiv.org/html/2610.33307#S3.SS11.p1.1)\.
- \[36\]S\. Nembrini, I\. R\. König, and M\. N\. Wright\(2018\)The revival of the Gini importance?\.Bioinformatics34\(21\),pp\. 3711–3718\.External Links:[Document](https://dx.doi.org/10.1093/bioinformatics/bty373)Cited by:[§2\.2](https://arxiv.org/html/2610.33307#S2.SS2.p1.1)\.
- \[37\]S\. Janitza, E\. Celik, and A\. Boulesteix\(2018\)A computationally fast variable importance test for random forests for high\-dimensional data\.Adv\. Data Anal\. Classif\.12\(4\),pp\. 885–915\.External Links:[Document](https://dx.doi.org/10.1007/s11634-016-0276-4)Cited by:[§2\.2](https://arxiv.org/html/2610.33307#S2.SS2.p1.1)\.
- \[38\]L\. Ein\-Dor, I\. Kela, G\. Getz, D\. Givol, and E\. Domany\(2005\)Outcome signature genes in breast cancer: is there a unique set?\.Bioinformatics21\(2\),pp\. 171–178\.External Links:[Document](https://dx.doi.org/10.1093/bioinformatics/bth469)Cited by:[§2\.3](https://arxiv.org/html/2610.33307#S2.SS3.p1.1)\.
- \[39\]I\. Gallego Romero, A\. A\. Pai, J\. Tung, and Y\. Gilad\(2014\)RNA\-seq: impact of RNA degradation on transcript quantification\.BMC Biol\.12,pp\. 42\.External Links:[Document](https://dx.doi.org/10.1186/1741-7007-12-42)Cited by:[§2\.4](https://arxiv.org/html/2610.33307#S2.SS4.p1.1)\.
- \[40\]M\. K\. Iyer, Y\. S\. Niknafs, R\. Malik,et al\.\(2015\)The landscape of long noncoding RNAs in the human transcriptome\.Nat\. Genet\.47\(3\),pp\. 199–208\.External Links:[Document](https://dx.doi.org/10.1038/ng.3192)Cited by:[§2\.4](https://arxiv.org/html/2610.33307#S2.SS4.p1.1)\.
- \[41\]A\. Dobin, C\. A\. Davis, F\. Schlesinger,et al\.\(2013\)STAR: ultrafast universal RNA\-seq aligner\.Bioinformatics29\(1\),pp\. 15–21\.External Links:[Document](https://dx.doi.org/10.1093/bioinformatics/bts635)Cited by:[§3\.1](https://arxiv.org/html/2610.33307#S3.SS1.p1.1)\.
- \[42\]A\. Frankish, M\. Diekhans, I\. Jungreis,et al\.\(2021\)GENCODE 2021\.Nucleic Acids Res\.49\(D1\),pp\. D916–D923\.External Links:[Document](https://dx.doi.org/10.1093/nar/gkaa1087)Cited by:[§3\.1](https://arxiv.org/html/2610.33307#S3.SS1.p1.1)\.
- \[43\]R\. L\. Grossman, A\. P\. Heath, V\. Ferretti,et al\.\(2016\)Toward a shared vision for cancer genomic data\.N\. Engl\. J\. Med\.375\(12\),pp\. 1109–1112\.External Links:[Document](https://dx.doi.org/10.1056/NEJMp1607591)Cited by:[§3\.1](https://arxiv.org/html/2610.33307#S3.SS1.p1.1)\.
- \[44\]B\. Li and C\. N\. Dewey\(2011\)RSEM: accurate transcript quantification from RNA\-Seq data with or without a reference genome\.BMC Bioinformatics12,pp\. 323\.External Links:[Document](https://dx.doi.org/10.1186/1471-2105-12-323)Cited by:[§3\.1](https://arxiv.org/html/2610.33307#S3.SS1.p1.1)\.
- \[45\]P\. J\. Rousseeuw and C\. Croux\(1993\)Alternatives to the median absolute deviation\.J\. Am\. Stat\. Assoc\.88\(424\),pp\. 1273–1283\.External Links:[Document](https://dx.doi.org/10.1080/01621459.1993.10476408)Cited by:[§3\.2](https://arxiv.org/html/2610.33307#S3.SS2.p2.1)\.
- \[46\]K\. A\. Hoadley, C\. Yau, T\. Hinoue,et al\.\(2018\)Cell\-of\-origin patterns dominate the molecular classification of 10,000 tumors from 33 types of cancer\.Cell173\(2\),pp\. 291–304\.External Links:[Document](https://dx.doi.org/10.1016/j.cell.2018.03.022)Cited by:[§3\.3](https://arxiv.org/html/2610.33307#S3.SS3.p1.1)\.
- \[47\]E\. Cerami, J\. Gao, U\. Dogrusoz,et al\.\(2012\)The cBio cancer genomics portal: an open platform for exploring multidimensional cancer genomics data\.Cancer Discov\.2\(5\),pp\. 401–404\.External Links:[Document](https://dx.doi.org/10.1158/2159-8290.CD-12-0095)Cited by:[§3\.3](https://arxiv.org/html/2610.33307#S3.SS3.p1.1)\.
- \[48\]J\. Gao, B\. A\. Aksoy, U\. Dogrusoz,et al\.\(2013\)Integrative analysis of complex cancer genomics and clinical profiles using the cBioPortal\.Sci\. Signal\.6\(269\),pp\. pl1\.External Links:[Document](https://dx.doi.org/10.1126/scisignal.2004088)Cited by:[§3\.3](https://arxiv.org/html/2610.33307#S3.SS3.p1.1)\.
- \[49\]The Cancer Genome Atlas Network\(2012\)Comprehensive molecular portraits of human breast tumours\.Nature490\(7418\),pp\. 61–70\.External Links:[Document](https://dx.doi.org/10.1038/nature11412)Cited by:[§3\.3](https://arxiv.org/html/2610.33307#S3.SS3.p1.1)\.
- \[50\]Y\. Benjamini and Y\. Hochberg\(1995\)Controlling the false discovery rate: a practical and powerful approach to multiple testing\.J\. R\. Stat\. Soc\. B57\(1\),pp\. 289–300\.External Links:[Document](https://dx.doi.org/10.1111/j.2517-6161.1995.tb02031.x)Cited by:[§3\.5](https://arxiv.org/html/2610.33307#S3.SS5.p1.1)\.
- \[51\]P\. Jaccard\(1912\)The distribution of the flora in the alpine zone\.New Phytol\.11\(2\),pp\. 37–50\.External Links:[Document](https://dx.doi.org/10.1111/j.1469-8137.1912.tb05611.x)Cited by:[§3\.6](https://arxiv.org/html/2610.33307#S3.SS6.p1.1)\.
- \[52\]F\. Pedregosa, G\. Varoquaux, A\. Gramfort,et al\.\(2011\)Scikit\-learn: machine learning in Python\.J\. Mach\. Learn\. Res\.12,pp\. 2825–2830\.Cited by:[§3\.12](https://arxiv.org/html/2610.33307#S3.SS12.p1.1),[§3\.9](https://arxiv.org/html/2610.33307#S3.SS9.p1.1)\.
- \[53\]G\. Ke, Q\. Meng, T\. Finley,et al\.\(2017\)LightGBM: a highly efficient gradient boosting decision tree\.InAdv\. Neural Inf\. Process\. Syst\. \(NeurIPS\),Vol\.30,pp\. 3146–3154\.Cited by:[§3\.12](https://arxiv.org/html/2610.33307#S3.SS12.p1.1),[§3\.9](https://arxiv.org/html/2610.33307#S3.SS9.p1.1)\.
- \[54\]K\. H\. Brodersen, C\. S\. Ong, K\. E\. Stephan, and J\. M\. Buhmann\(2010\)The balanced accuracy and its posterior distribution\.InProc\. 20th Int\. Conf\. Pattern Recognit\. \(ICPR\),pp\. 3121–3124\.External Links:[Document](https://dx.doi.org/10.1109/ICPR.2010.764)Cited by:[§3\.9](https://arxiv.org/html/2610.33307#S3.SS9.p1.1)\.
- \[55\]T\. Hastie, R\. Tibshirani, and J\. Friedman\(2009\)The elements of statistical learning\.2nd edition,Springer,New York, NY, USA\.External Links:[Document](https://dx.doi.org/10.1007/978-0-387-84858-7)Cited by:[§3\.10](https://arxiv.org/html/2610.33307#S3.SS10.p1.1)\.
- \[56\]B\. Efron and R\. J\. Tibshirani\(1993\)An introduction to the bootstrap\.Chapman & Hall,New York, NY, USA\.External Links:[Document](https://dx.doi.org/10.1007/978-1-4899-4541-9)Cited by:[§3\.10](https://arxiv.org/html/2610.33307#S3.SS10.p1.1)\.
- \[57\]Q\. McNemar\(1947\)Note on the sampling error of the difference between correlated proportions or percentages\.Psychometrika12\(2\),pp\. 153–157\.External Links:[Document](https://dx.doi.org/10.1007/BF02295996)Cited by:[§3\.10](https://arxiv.org/html/2610.33307#S3.SS10.p1.1)\.
- \[58\]T\. G\. Dietterich\(1998\)Approximate statistical tests for comparing supervised classification learning algorithms\.Neural Comput\.10\(7\),pp\. 1895–1923\.External Links:[Document](https://dx.doi.org/10.1162/089976698300017197)Cited by:[§3\.10](https://arxiv.org/html/2610.33307#S3.SS10.p1.1)\.
- \[59\]C\. R\. Harris, K\. J\. Millman, S\. J\. van der Walt,et al\.\(2020\)Array programming with NumPy\.Nature585\(7825\),pp\. 357–362\.External Links:[Document](https://dx.doi.org/10.1038/s41586-020-2649-2)Cited by:[§3\.12](https://arxiv.org/html/2610.33307#S3.SS12.p1.1)\.
- \[60\]P\. Virtanen, R\. Gommers, T\. E\. Oliphant,et al\.\(2020\)SciPy 1\.0: fundamental algorithms for scientific computing in Python\.Nat\. Methods17\(3\),pp\. 261–272\.External Links:[Document](https://dx.doi.org/10.1038/s41592-019-0686-2)Cited by:[§3\.12](https://arxiv.org/html/2610.33307#S3.SS12.p1.1)\.
- \[61\]J\. D\. Hunter\(2007\)Matplotlib: a 2D graphics environment\.Comput\. Sci\. Eng\.9\(3\),pp\. 90–95\.External Links:[Document](https://dx.doi.org/10.1109/MCSE.2007.55)Cited by:[§3\.12](https://arxiv.org/html/2610.33307#S3.SS12.p1.1)\.

相似文章

基于多组学的乳腺癌预测机器学习模型基准测试

arXiv cs.LG

本文使用来自 TCGA-BRCA 的多组学数据,系统地基准测试了用于 ER 状态预测的经典机器学习模型(Random Forest、XGBoost 等),发现 RNA 表达提供了最强的预测信号,并且在整合的多组学设置中,Random Forest 达到了 90.3% 的平衡准确率。

TRACE:面向肿瘤学大语言模型的可部署树-关系结构增强方法

arXiv cs.CL

TRACE 提出了一种可部署的树-关系结构增强框架,用于肿瘤学大语言模型:将昂贵的离线结构学习与轻量在线推理分离,利用由语言模型损失推导出的证据来精炼医学概念树结构,并在推理时将其作为紧凑的提示证据进行检索,在十项肿瘤学分类任务以及 MedQuAD CancerGov 问答任务上超越了标准 RAG 与 GraphRAG。