CNV Segmentation

After a case sample has been normalized, the sample goes through a segmentation stage. DRAGEN implements multiple segmentation algorithms, including the following algorithms:

  • Circular Binary Segmentation (CBS)

  • Shifting Level Models (SLM)

The SLM algorithm has three variants, SLM, Heterogeneous SLM (HSLM), and Adaptive SLM (ASLM). HSLM is for use in exome analysis and handles target capture kits that are not equally spaced. ASLM includes additional sample-specific estimation of technical variability of depth of coverage, as opposed to changes in copy number. The estimations are based on the median variance within fixed windows or a preliminary set of segments based on b-allele ratios. The ASLM algorithm mitigates over segmentation due to noisy or wavy samples; this is the default mode for somatic GWGS analysis.

By default, SLM is the segmentation algorithm for germline whole genome processing, ASLM is the algorithm for somatic whole genome processing, and HSLM is the algorithm for whole exome processing.

If you have specific regions of interests, you can also run with a --cnv-segmentation-bed. The option pre-defines the segments to estimate copy numbers region of interest listed in the bed file. See Targeted Segmentation (Segment BED) for more information.

  • --cnv-segmentation-mode --- Specifies the segmentation algorithm to perform. The following values are available.

    • bed --- This option is not applicable to T/N and T/O of somatic WGS and somatic WES workflows

    • cbs

    • slm --- The default for germline WGS analysis.

    • aslm --- The default for somatic WGS analysis.

    • hslm --- The default for targeted/WES analysis.

  • --cnv-merge-distance --- Specifies the maximum number of base pairs between two segments that would allow them to be merged. The default value is 0 for germline WGS, which means the segments must be directly adjacent. For WES analysis, this parameter is disabled by default due to the spacing of targeted intervals.

  • --cnv-merge-threshold --- Specifies the maximum segment mean difference at which two adjacent segments should be merged. The segment mean is represented as a linear copy ratio value. The default is 0.2 for WGS and 0.4 for WES. To disable merging, set the value to 0.

Circular Binary Segmentation

Circular Binary Segmentation is implemented directly in DRAGEN and is based on A faster circular binary segmentation for the analysis of array CGH data¹ with enhancements to improve sensitivity for NGS data. The following options control Circular Binary Segmentation.

  • --cnv-cbs-alpha --- Specifies the significance level for the test to accept change points. The default is 0.01.

  • --cnv-cbs-eta --- Specifies the Type I error rate of the sequential boundary for early stopping when using the permutation method. The default is 0.05.

  • --cnv-cbs-kmax --- Specifies maximum width of smaller segment for permutation. The default is 25.

  • --cnv-cbs-min-width --- Specifies the minimum number of markers for a changed segment. The default is 2.

  • --cnv-cbs-nmin --- Specifies the minimum length of data for maximum statistic approximation. The default is 200.

  • --cnv-cbs-nperm --- Specifies the number of permutations used for p-value computation. The default is 10000.

  • --cnv-cbs-trim --- Specifies the proportion of data to be trimmed for variance calculations. The default is 0.025.

¹Venkatraman ES, Olshen AB. A faster circular binary segmentation algorithm for the analysis of array CGH data. Bioinformatics. 2007;23(6):657-663. doi:10.1093/bioinformatics/btl646

Shifting Level Models Segmentation

The Shifting Level Models (SLM) segmentation mode follows from the R implementation of SLMSuite: a suite of algorithms for segmenting genomic profiles².

  • --cnv-slm-eta --- Baseline probability that the mean process changes its value. The default is 4e-5.

  • --cnv-slm-fw --- Minimum number of data points for a CNV to be emitted. The default is 0, which means segments with one design probe could in effect be emitted.

  • --cnv-slm-omega --- Scaling parameter that modulates relative weight between experimental or biological variance. The default is 0.3.

  • --cnv-slm-stepeta --- Distance normalization parameter. The default is 10000. This option is only valid for HSLM.

Regardless of segmentation method, initial segments are split across large gaps where depth data is unavailable, such as across centromeres.

²Orlandini V, Provenzano A, Giglio S, Magi A. SLMSuite: a suite of algorithms for segmenting genomic profiles. BMC Bioinformatics. 2017;18(1). doi:10.1186/s12859-017-1734-5

User-Defined Segmentation (Segment BED)

DRAGEN CNV optionally accepts additional regions of interest by specifying a --cnv-segmentation-bed file. For example, the specified intervals might correspond to gene boundaries matched to the targeted assay. or might covers entire chromosome-arms. Intervals provided by --cnv-segmentation-bed will be appended to the CNV VCF with an INFO tag of SEGID provided by the name column of the input bed file.

The recommended format for the BED file includes four columns and a header. The four columns are contig, start, stop, and name. The name column represents the name of the region and must be unique within the BED file. The name is used in the output VCF and annotated as a segment identifier in the INFO/SEGID field. The following example file is in the recommended format with nominal use cases of gene level, arm level, and/or whole chromosome:

contig  start      stop       name
chr1    115245083  115261621  NRAS
chr1    204485504  204526342  MDM4
chr2    16075981   16090656   MYCN
chr2    29416087   30143527   ALK
chr3    12626010   12704516   RAF1
chr3    138374228  138478187  PIK3CB
chr3    178866307  178952154  PIK3CA
chr3    195776751  195806640  TFRC
chr16   29500000   30200000   16p11.2 // pathogenic arm-level CNV related to 16p11.2 Microdeletion Syndrome
chr17   15229779   15265326   PMP22   // pathogenic gene-level CNV related to Charcot-Marie-Tooth Disease Type 1A
chr21   1          46709983   chr21   // pathogenic whole chromosome CNV related to Down Syndrome

If --cnv-segmentation-mode=bed is specified, then if there are M entries in the --cnv-segmentation-bed file there will typically be M entries in the vcf. If --cnv-segmentation-mode is not set to bed, then the number of entries in the vcf will typically be M+N, where N is the number of entries that would be output in the absence of --cnv-segmentation-bed. Note that if there are entries in the segmentation bed file that are not covered by any target intervals (from --cnv-target-bed) or all potential overlapping target intervals are filtered out (e.g. kmer uniqueness failure), the segmentation bed may contribute fewer than M entries to the vcf.

If using a three-column BED file, then do not include a header or the name field values. Three-column BED files should only include the contig, start, and stop values. In this case, the segment identifier is autogenerated from the coordinate fields.

The table below shows CNV workflows supporting the cnv-segmentation-bed option:

Germline
Germline
Somatic
Somatic
Somatic

non ASCN

ASCN

non ASCN

ASCN T/N

ASCN T/O

WGS

Not available

WES

Not available

ASCN CNV requires cnv-segmentation-mode not equal to bed to calculate likelihood of purity/ploidy model from segments deriven by data. The table below shows CNV workflows supporting cnv-segmentation-mode=bed option:

Germline
Germline
Somatic
Somatic
Somatic

non ASCN

ASCN

non ASCN

ASCN T/N

ASCN T/O

WGS

Not available

WES

Not available

Not available indicates the workflow is not supported.

Last updated

Was this helpful?