DDSE {capushe}R Documentation

Model selection by Data-Driven Slope Estimation


DDSE is a model selection function based on the slope heuristics.


DDSE(data, pct = 0.15, point = 0, psi.rlm = psi.bisquare, scoef = 2)



data is a matrix or a data.frame with four columns of the same length and each line corresponds to a model:

  1. The first column contains the model names.

  2. The second column contains the penalty shape values.

  3. The third column contains the model complexity values.

  4. The fourth column contains the minimum contrast value for each model.


Minimum percentage of points for the plateau selection. It must be between 0 and 1. Default value is 0.15.


Minimum number of point for the plateau selection. If point is different from 0, pct is obsolete.


Weight function used by rlm. psi.rlm="lm" for non robust linear regression.


Ratio parameter. Default value is 2.


Let M be the model collection and P=\{pen_{shape}(m),m\in M\}. The DDSE algorithm proceeds in four steps:

  1. If several models in the collection have the same penalty shape value (column 2), only the model having the smallest contrast value \gamma_n(\hat{s}_m) (column 4) is considered.

  2. For any p\in P, the slope \hat{\kappa}(p) (argument @kappa) of the linear regression (argument psi.rlm) on the couples of points \{(pen_{shape}(m),-\gamma_n (\hat{s}_m)); pen_{shape}(m)\geq p\} is computed.

  3. For any p\in P, the model fulfilling the following condition is selected:

    \hat{m}(p)= argmin \gamma_n (\hat{s}_m)+scoef\times \hat{\kappa}(p)\times pen_{shape}(m).

    This gives an increasing sequence of change-points (p_i)_{1\leq i\leq I+1} (output @ModelHat$point_breaking). Let (N_i)_{1\leq i\leq I} (output @ModelHat$number_plateau) be the lengths of each "plateau".

  4. If point is different from 0, let \hat{i}= max \{1\leq i\leq I; N_i\geq point\} else let \hat{i}= max \{1\leq i\leq I; N_i\geq pct\sum_{l=1}^IN_l\} (output @ModelHat$imax). The model \hat{m}(p_{\hat{i}}) (output @model) is finally returned.

The "slope interval" is the interval [a,b] where a=inf\{\hat{\kappa}(p),p\in[p_{\hat{i}},p_{\hat{i}+1}[\cap P\} and b=sup\{\hat{\kappa}(p),p\in[p_{\hat{i}},p_{\hat{i}+1}[\cap P\}.



The model selected by the DDSE algorithm.


The vector of the successive slope values.


A list describing the algorithm.


The vector of preselected models \hat{m}(p).


The vector of the breaking points (p_i)_{1\leq i\leq I+1}.


The vector of the lengths (N_i)_{1\leq i\leq I}.


The rank \hat{i} of the selected plateau.


A list about the "slope interval".


The slope interval.


The proportion N_{\hat{i}}/\sum_{l=1}^IN_l.


A list computed for the plot method.


Vincent Brault


Article: Baudry, J.-P., Maugis, C. and Michel, B. (2011) Slope heuristics: overview and implementation. Statistics and Computing, to appear. doi: 10.1007/ s11222-011-9236-1

See Also

capushe for a model selection function including AIC, BIC, the DDSE algorithm and the Djump algorithm. plot for graphical dsiplays of the DDSE algorithm and the Djump algorithm.


## DDSE with "lm" for the regression

[Package capushe version 1.1.2 Index]