Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

For a 0.20.7 release #1138

Merged
merged 11 commits into from
Jul 18, 2024
6 changes: 3 additions & 3 deletions Project.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name = "MLJ"
uuid = "add582a8-e3ab-11e8-2d5e-e98b27df1bc7"
authors = ["Anthony D. Blaom <[email protected]>"]
version = "0.20.6"
version = "0.20.7"

[deps]
CategoricalArrays = "324d7699-5711-5eae-9e2f-1d82baa6b597"
Expand Down Expand Up @@ -32,9 +32,9 @@ Tables = "bd369af6-aec1-5ad0-b16a-f7cc5008161c"
CategoricalArrays = "0.8,0.9, 0.10"
ComputationalResources = "0.3"
Distributions = "0.21,0.22,0.23, 0.24, 0.25"
FeatureSelection = "0.1.1"
FeatureSelection = "0.2"
MLJBalancing = "0.1"
MLJBase = "1"
MLJBase = "1.5"
MLJEnsembles = "0.4"
MLJFlow = "0.5"
MLJIteration = "0.6"
Expand Down
1 change: 1 addition & 0 deletions docs/ModelDescriptors.toml
Original file line number Diff line number Diff line change
Expand Up @@ -154,6 +154,7 @@ MultitargetNeuralNetworkRegressor_BetaML = ["regression", "neural_networks"]
MultitargetNeuralNetworkRegressor_MLJFlux = ["regression", "iterative_models", "neural_networks"]
MultitargetRidgeRegressor_MultivariateStats = ["regression"]
MultitargetSRRegressor_SymbolicRegression = ["regression"]
NeuralNetworkBinaryClassifier_MLJFlux = ["classification", "neural_networks"]
NeuralNetworkClassifier_BetaML = ["classification", "neural_networks"]
NeuralNetworkClassifier_MLJFlux = ["classification", "iterative_models", "neural_networks"]
NeuralNetworkRegressor_BetaML = ["regression", "neural_networks"]
Expand Down
3 changes: 2 additions & 1 deletion docs/make.jl
Original file line number Diff line number Diff line change
Expand Up @@ -67,10 +67,11 @@ pages = [
"Generating Synthetic Data" => "generating_synthetic_data.md",
"OpenML Integration" => "openml_integration.md",
],
"Model Basics" => [
"Models" => [
"Model Search" => "model_search.md",
"Loading Model Code" => "loading_model_code.md",
"Transformers and Other Unsupervised models" => "transformers.md",
"Feature Selection" => "feature_selection.md",
"List of Supported Models" => "list_of_supported_models.md",
],
"Meta-algorithms" => [
Expand Down
13 changes: 13 additions & 0 deletions docs/src/feature_selection.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Feature Selection

For more on feature selection tools, refer to the [FeatureSelection.jl](https://juliaai.github.io/FeatureSelection.jl/dev/) documentation.

- [`FeatureSelector`](@ref)
- [`RecursiveFeatureElimination`](@ref)

## Reference

```@docs
FeatureSelector
RecursiveFeatureElimination
```
11 changes: 5 additions & 6 deletions docs/src/model_search.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,10 @@
# [Model Search](@id model_search)

MLJ has a model registry, allowing the user to search models and their
properties, without loading all the packages containing model code. In
turn, this allows one to efficiently find all models solving a given
machine learning task. The task itself is specified with the help of
the `matching` method, and the search executed with the `models`
methods, as detailed below.
In addition to perusing the [Model Browser](@ref), one can programatically search MLJ's
Model Registry, without actually loading all the packages providing model code. This
allows you to efficiently find all models solving a given machine learning task. The task
itself is specified with the help of the `matching` method, and the search executed with
the `models` methods, as detailed below.

For commonly encountered problems with model search, see also
[Preparing Data](@ref).
Expand Down
36 changes: 24 additions & 12 deletions docs/src/transformers.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,18 +24,16 @@ that learn a probability distribution](@ref) for an example.

## Built-in transformers

```@docs
MLJModels.Standardizer
MLJModels.OneHotEncoder
MLJModels.ContinuousEncoder
MLJModels.FillImputer
MLJModels.UnivariateFillImputer
FeatureSelection.FeatureSelector
MLJModels.UnivariateBoxCoxTransformer
MLJModels.UnivariateDiscretizer
MLJModels.UnivariateTimeTypeToContinuous
```

- [`Standardizer`](@ref)
- [`OneHotEncoder`](@ref)
- [`ContinuousEncoder`](@ref)
- [`FillImputer`](@ref)
- [`UnivariateFillImputer`](@ref)
- [`UnivariateBoxCoxTransformer`](@ref)
- [`InteractionTransformer`](@ref)
- [`UnivariateDiscretizer`](@ref)
- [`UnivariateTimeTypeToContinuous`](@ref)
- [`FeatureSelector`](@ref).

## Static transformers

Expand Down Expand Up @@ -231,3 +229,17 @@ compare[51:58]
```@example predtrans
compare[101:108]
```

## Reference

```@docs
MLJModels.Standardizer
MLJModels.OneHotEncoder
MLJModels.ContinuousEncoder
MLJModels.FillImputer
MLJModels.UnivariateFillImputer
MLJModels.UnivariateBoxCoxTransformer
MLJModels.InteractionTransformer
MLJModels.UnivariateDiscretizer
MLJModels.UnivariateTimeTypeToContinuous
```
6 changes: 6 additions & 0 deletions docs/src/working_with_categorical_data.md
Original file line number Diff line number Diff line change
Expand Up @@ -345,3 +345,9 @@ d_vec = UnivariateFinite(["no", "yes"], yes_probs, augment=true, pool=v)
```

For more options, see [`UnivariateFinite`](@ref).

## Reference

```@docs
UnivariateFinite
```
2 changes: 1 addition & 1 deletion src/MLJ.jl
Original file line number Diff line number Diff line change
Expand Up @@ -146,7 +146,7 @@ export nrows, color_off, color_on,
@pipeline, Stack, Pipeline, TransformedTargetModel,
ResamplingStrategy, Holdout, CV, TimeSeriesCV,
StratifiedCV, evaluate!, Resampler, iterator, PerformanceEvaluation,
default_resource, pretty,
default_resource, default_logger, pretty,
make_blobs, make_moons, make_circles, make_regression,
fit_only!, return!, int, decoder,
default_scitype_check_level,
Expand Down
6 changes: 5 additions & 1 deletion test/integration.jl
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,11 @@ PATHOLOGIES = filter(MODELS) do model
# too slow to train!
(model.name == "LOCIDetector" && model.package_name == "OutlierDetectionPython") ||
# TO REDUCE TESTING TIME
model.package_name == "MLJScikitLearnInterface"
model.package_name == "MLJScikitLearnInterface" ||
# can be removed after resolution of
# https://github.com/JuliaAI/FeatureSelection.jl/issues/15
# and a Model Registry update
model.name == "RecursiveFeatureElimination"
end

WITHOUT_DATASETS = vcat(WITHOUT_DATASETS, PATHOLOGIES)
Expand Down
Loading