Releases: jolars/SLOPE
Releases · jolars/SLOPE
SLOPE 0.5.1
SLOPE 0.5.0
Major changes
plot.SLOPE()
,plot.trainSLOPE()
andplotDiagnostics()
have been
reimplemented in ggplot2.
Deprecated Functions
caretSLOPE()
has been deprecated and will be made defunct in version
0.6.0.
SLOPE 0.4.1
Bug Fixes
- The C++ standard library memory was added to a source file to fix
compilation errors on some systems.
SLOPE 0.4.0
New Functions
sortedL1Prox()
is a new function that computes the proximal operator for the
sorted L1 norm (the penalty term in SLOPE).regularizationWeights()
is a new function that returns the penalty weights
(lambda sequence) for SLOPE or OSCAR.
Major changes
- The parametrization for OSCAR models have been corrected and changed. As a
result,SLOPE()
gains two arguments:theta1
andtheta2
to control the
behavior using the parametrization from L. W. Zhong and J. T. Kwok, “Efficient
sparse modeling with automatic feature grouping,” IEEE Transactions on Neural
Networks and Learning Systems, vol. 23, no. 9, pp. 1436–1447, Sep. 2012, doi:
10.1109/TNNLS.2012.2200262.q
is no longer used with OSCAR models. Thanks,
Nuno Eusebio. SLOPE()
has gained a new argument,prox_method
, which allows the user to
select prox algorithm to use. There is no an additional algorithm in the
package, based on the PAVA algorithm used in isotonic regression, that
can be used. Note that this addition is mostly of academic interest and
does not need to be changed by the user.
Minor Changes
- The
q
parameter is no longer allowed to be smaller than1e-6
to avoid
constructions of regularization paths with infinitelambda
values. - The
lambda
argument inSLOPE()
now also allowed the input"lasso"
to
obtain the standard lasso. - The performance of
trainSLOPE()
Vignettes
- A new vignette has been added to compare algorithms for the proximal
operator.
Bug Fixes
- For very small numbers of observations (10 or so), the regularization weights
forlambda = "gaussian"
were incorrectly computed, increasing and then
decreasing. This is now fixed and regularization weights in this case are now
always non-increasing. - Misclassification error was previously computed incorrectly in
trainSLOPE()
for multinomial models (thanks @jakubkala and @KrystynaGrzesiak) - Performance of
trainSLOPE()
was previously hampered by erroneous
refitting of the models, which has been fixed now (thanks @jakubkala and
@KrystynaGrzesiak)
Deprecated and Defunct
yvar
argument inplotDiagnostics()
that was previously deprecated is
now defunct.- Using
missclass
for themeasure
argument intrainSLOPE()
has been
deprecated in favor ofmisclass
.
SLOPE 0.3.3
Bug fixes
- Fixed first coefficient missing from plot if no intercept was used in
the call toSLOPE()
. - Fixed incorrect results when
intercept = FALSE
andfamily = "gaussian"
(#13, thanks, Patrick Tardivel).
SLOPE 0.3.2
Minor changes
- Added
tol_rel_coef_change
argument toSLOPE()
as a convergence
criterion for the FISTA solver that sets a tolerance for the relative
change in coefficients across iterations.
Bug fixes
- Fixed premature stopping of the solver for the first step of the
regularization path (the null model). - Actually fix UBSAN/ASAN sanitizer warnings by modifying code for
FISTA solver.
SLOPE 0.3.1
Bug fixes
- Fixed package build breaking on solaris because of missing STL namespace
specifier forstd::sqrt()
insrc/SLOPE.cpp
. - Fixed erroneous scaling of absolute tolerance in stopping criteria for
the ADMM solvers. Thanks, @straw-boy. - Fixed sanitizer warning from CRAN checks.
SLOPE 0.3.0
Major changes
- Scaling of
alpha
(previouslysigma
) is now invariant to the
number of observations, which is achieved by scaling
the penalty part of the objective by the square root of the number of
observations ifscale = "l2"
and the number of observations if
scale = "sd"
or"none"
. No scaling is applied whenscale = "l1"
. - The
sigma
argument is deprecated in favor ofalpha
inSLOPE()
,
coef.SLOPE()
, andpredict.SLOPE()
. - The
n_sigma
argument is deprecated in favor ofpath_length
inSLOPE()
- The
lambda_min_ratio
argument is deprecated in favor ofalpha_min_ratio
in
SLOPE()
- The default for argument
lambda
inSLOPE()
has changed from"gaussian"
to"bh"
. - Functions and arguments deprecated in 0.2.0 are now defunct and have
been removed from the package. scale = "sd"
now scales with the population standard deviation rather
than the sample standard deviation, i.e. the scaling factor now used
is the number of observations (and not the number of observations minus one
as before).
Minor changes
- Default
path_length
has changed from 100 to 20. plot.SLOPE()
has gained an argumentx_variable
that controls what is
plotted on the x axis.- A warning is now thrown if the maximum number of passes was reached
anywhere along the path (and prints where as well). - If the
max_variables
criterion is hit, the solution path returned
will now include also the last solution (which was not the case
before). Thanks, @straw-boy.
Bug fixes
- Plotting models that are completely sparse no longer throws an error.
rho
instead of1
is now used in the factorization part for
the ADMM solver.
SLOPE 0.2.1
Minor changes
- A few examples in
deviance()
andSLOPE()
that were taking
too long to execute have been removed or modified.