Other changes:
- Manually set compilation
target
inMakevars
of the R-package based on the environment variableTARGET
to simplify cross-compilation.
Other changes:
- Update the
extendr
architecture for the package build. Thanks @JosiahParry!
Other changes:
- Upgraded
extendr-api
andndarray
dependencies in R package.
Other changes:
- Upgraded
pyo3
dependency in Python package.
New features:
- New argument
forbidden_segments
(list or vector of 2-tuple) orNone
toControl
. If notNone
,changeforest
will not split on split points contained in segments(a, b]
inforbidden_segments
(rust and Python only). Thanks @enzbus!
Bug fixes:
- Python macos images are now again correctly built on GitHub runners.
First major release. There have been no changes since the last release. The manuscript is to be published in JMLR.
Bug fixes:
- Fixed bugs when plotting results created with
method="change_in_mean"
orsegmentation="sbs"
or"wbs"
(Python).
Bug fixes:
- Fixed a bug resulting in no tick-labels being shown on the x-axis when plotting a
BinarySegmentationResult
.
New features:
- New plotting methods
BinarySegmentationResult.plot
andOptimizerResult.plot
(Python). - New plotting methods
plot.binary_segmentation_result
andplot.binary_segmentation_result
(R). - Expanded documentation (R).
- The
changeforest
function now has default valuesmethod="random_forest"
andsegmentation="bs"
(R).
Bug fixes:
- Fixed a bug in the Python package when passing
random_forest_max_features='sqrt'
toControl
.
Breaking changes:
- The default value for
model_selection_n_permutations
is now 199. - The default value for
model_selection_alpha
is now 0.02. - The default value for
minimal_gain_to_split
, use in thechange_in_mean
setup, is nowlog(n) * (d + 1)
, motivated by the BIC and [1]. - The value for
minimal_gain_to_split
no longer gets automatically multiplied byn
.
[1] Yao, Y.-C. (1988). Estimating the number of change-points via Schwarz’ criterion. Statist. Probab. Lett. 6 181–189. MR0919373
Bug fixes:
- The pseudo-permutation-test now correctly skips the first and last
minimal_segment_length * n
observations when calculating the permuted maximal gains.
Other changes:
- The first three elements of the
result.optimizer_result.gain_results
returned by the two-step search are no longer sorted by their maximal gain.
Breaking changes:
- The parameters
random_forest_mtry
andrandom_forest_n_trees
ofControl
have been renamed torandom_forest_max_features
andrandom_forest_n_estimators
. - The default value for
random_forest_max_features
now isfloor(sqrt(d))
.
New features:
- The parameter
random_forest_max_features
now can be supplied with a fraction0 < f < 1
, an integeri>=1
,None
(Python, Rust) /NULL
(R) and"sqrt"
. Then, for each split, repsectivelyfloor(f d)
,i
,d
orfloor(sqrt(d))
features are considered.
Other changes:
- Bump
biosphere
dependency to 0.3.0
Other changes:
- Bump
biosphere
dependency to 0.2.2.
Other changes:
- The default value for
Control.minimal_gain_to_split
is nowlog(n_samples) * n_features / n_samples
, motivated by the Bayesian information criterion (BIC).
Other changes:
- The R-package now makes use of the latest version of
libR-sys
, enabling compilation for Apple silicon onconda-forge
(#86).
Bug fixes:
- Fixed a bug where passing
Control()
tochangeforest
in the Python package overwrote the default value forrandom_forest_max_depth
toNone
. Default values forControl
in the python package are now"default"
(#87).
Bug fixes:
- Upgrade
biosphere
to0.2.1
fixing a bug inRandomForest
(#84).
Other changes:
- New parameter
model_selection_n_permutations
(#85).
New features:
changeforest
now uses random forests frombiosphere
. This should be faster thansmartcore
used previously and supports parallelization (#82).
New features:
- Implemented trait
Display
forBinarySegmentationResult
. In Pythonstr(result)
now prints a pretty display (#77).
Other changes:
- The
TwoStepSearch
algorithm now only uses valid guesses fromsplit_candidates
(#76).
Bug fixes:
- (R only) The R6 class
Control
now gets correctly exported (#79).
Bug fixes:
- (Python only) Parameters will now be correctly passed to
changeforest
viaControl
even if they have an incorrect data type (#67). - Fixed a bug where SBS would panic in cases with very small minimal segments lengths due to rounding (#70).
- Fixed a bug in model selection that resulted in a higher type I error (#71).
New features:
-
The
TwoStepSearch
now uses three initial guesses, the 0.25, 0.5 and 0.75 quantiles of the segment, for the first step. The the best split corresponding to the highest maximal gain from the three guesses is used in the second step. The permutation test used for model selection has also been adjusted to be consistent (#65).This increases estimation performance for classifier-based methods, especially if used with standard binary segmentation, i.e. for
changeforst_bs
andchangeforest_knn
.
Other changes:
- Added license file for compatability with conda-forge.