Skip to content

Commit

Permalink
Merge pull request automl#1292 from automl/development
Browse files Browse the repository at this point in the history
Development
  • Loading branch information
mfeurer authored Nov 8, 2021
2 parents e254567 + b4481e6 commit bab9005
Show file tree
Hide file tree
Showing 21 changed files with 769 additions and 169 deletions.
109 changes: 109 additions & 0 deletions CITATION.cff
Original file line number Diff line number Diff line change
@@ -0,0 +1,109 @@
---
cff-version: 1.2.0

message: "If you use auto-sklearn in a scientific publication, we would appreciate a reference to the following paper"

title: "auto-sklearn"
date-released: "2015-07-02"

url: "https://automl.github.io/auto-sklearn/master/"
repository-code: "https://github.com/automl/auto-sklearn"

version: "0.14.0"

type: "software"
keywords:
- "automated machine learning"
- "machine learning"

license: "BSD-3-Clause"

authors:
- family-names: "Feurer"
given-names: "Matthias"
orcid: "https://orcid.org/0000-0001-9611-8588"
affiliation: "University of Freiburg, Germany"

- family-names: "Eggensperger"
given-names: "Katharina"
orcid: "https://orcid.org/0000-0002-0309-401X"
affiliation: "University of Freiburg, Germany"

- family-name: "Bergman"
given-names: "Edward"
affiliation: "University of Freiburg, Germany"

- family-name: "Rivera Valverde"
given-names: "Francisco"
affiliation: "University of Freiburg, Germany"

- family-names: "Jost"
given-names: "Springenberg"
orcid: "https://orcid.org/0000-0002-9392-1006"
affiliation: "University of Freiburg, Germany"

- family-names: "Manuel"
given-names: "Blum"
affiliation: "University of Freiburg, Germany"

- family-names: "Hutter"
given-names: "Frank"
affiliation: "University of Freiburg, Germany"

preferred-citation:
type: "proceedings"
title: "Efficient and Robust Automated Machine Learning"
collection-title: "Advances in Nerual Infromation Processing Systems 28 (2015)"
year: 2015
pages: "2962--2970"
url: "https://papers.neurips.cc/paper/5872-efficient-and-robust-automated-machine-learning.pdf"

publisher:
name: "Curran Associates, Inc."

editors:

- family-names: "Cortes"
given-names: "C."

- family-names: "Lawrence"
given-names: "N."

- family-names: "Lee"
given-names: "D."

- family-names: "Sugiyama"
given-names: "M."

- family-names: "Garnett"
given-names: "R."

authors:

- family-names: "Feurer"
given-names: "Matthias"
orcid: "https://orcid.org/0000-0001-9611-8588"
affiliation: "University of Freiburg, Germany"

- family-names: "Klein"
given-names: "Aaron"
affiliation: "University of Freiburg, Germany"

- family-names: "Eggensperger"
given-names: "Katharina"
orcid: "https://orcid.org/0000-0002-0309-401X"
affiliation: "University of Freiburg, Germany"

- family-names: "Jost"
given-names: "Springenberg"
orcid: "https://orcid.org/0000-0002-9392-1006"
affiliation: "University of Freiburg, Germany"

- family-names: "Manuel"
given-names: "Blum"
affiliation: "University of Freiburg, Germany"

- family-names: "Hutter"
given-names: "Frank"
affiliation: "University of Freiburg, Germany"
...
415 changes: 415 additions & 0 deletions CONTRIBUTING.md

Large diffs are not rendered by default.

22 changes: 11 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,14 +30,14 @@ If you use auto-sklearn in scientific publications, we would appreciate citation
*Matthias Feurer, Aaron Klein, Katharina Eggensperger, Jost Springenberg, Manuel Blum and Frank Hutter*
Advances in Neural Information Processing Systems 28 (2015)

[Link](https://papers.nips.cc/paper/5872-efficient-and-robust-automated-machine-learning.pdf) to publication.
[Link](https://papers.neurips.cc/paper/5872-efficient-and-robust-automated-machine-learning.pdf) to publication.
```
@inproceedings{feurer-neurips15a,
title = {Efficient and Robust Automated Machine Learning},
author = {Matthias Feurer, Aaron Klein, Katharina Eggensperger, Jost Springenberg, Manuel Blum and Frank Hutter},
booktitle = {Advances in Neural Information Processing Systems 28 (2015)},
pages = {2962--2970},
year = {2015}
title = {Efficient and Robust Automated Machine Learning},
author = {Feurer, Matthias and Klein, Aaron and Eggensperger, Katharina Springenberg, Jost and Blum, Manuel and Hutter, Frank},
booktitle = {Advances in Neural Information Processing Systems 28 (2015)},
pages = {2962--2970},
year = {2015}
}
```

Expand All @@ -49,11 +49,11 @@ arXiv:2007.04074 [cs.LG], 2020

[Link](https://arxiv.org/abs/2007.04074) to publication.
```
@inproceedings{feurer-arxiv20a,
title = {Auto-Sklearn 2.0: The Next Generation},
author = {Matthias Feurer, Katharina Eggensperger, Stefan Falkner, Marius Lindauer and Frank Hutter},
booktitle = {arXiv:2007.04074 [cs.LG]},
year = {2020}
@article{feurer-arxiv20a,
title = {Auto-Sklearn 2.0: Hands-free AutoML via Meta-Learning},
author = {Feurer, Matthias and Eggensperger, Katharina and Falkner, Stefan and Lindauer, Marius and Hutter, Frank},
booktitle = {arXiv:2007.04074 [cs.LG]},
year = {2020}
}
```

Expand Down
2 changes: 1 addition & 1 deletion autosklearn/__version__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
"""Version information."""

# The following line *must* be the last in the module, exactly as formatted:
__version__ = "0.14.0"
__version__ = "0.14.1"
1 change: 1 addition & 0 deletions autosklearn/automl.py
Original file line number Diff line number Diff line change
Expand Up @@ -587,6 +587,7 @@ def fit(

# AutoSklearn does not handle sparse y for now
y = convert_if_sparse(y)
y_test = convert_if_sparse(y_test) if y_test is not None else None

# Get the task if it doesn't exist
if task is None:
Expand Down
7 changes: 4 additions & 3 deletions autosklearn/estimators.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
from typing import Optional, Dict, List, Tuple, Union, Iterable
from typing_extensions import Literal

from ConfigSpace.configuration_space import Configuration
from ConfigSpace.configuration_space import Configuration, ConfigurationSpace
import dask.distributed
import joblib
import numpy as np
Expand Down Expand Up @@ -186,7 +186,7 @@ def __init__(
smac_scenario_args : dict, optional (None)
Additional arguments inserted into the scenario of SMAC. See the
`SMAC documentation <https://automl.github.io/SMAC3/master/options.html?highlight=scenario#scenario>`_
`SMAC documentation <https://automl.github.io/SMAC3/master/pages/details/scenario.html>`_
for a list of available arguments.
get_smac_object_callback : callable
Expand Down Expand Up @@ -830,7 +830,7 @@ def get_configuration_space(
y_test: Optional[Union[SUPPORTED_TARGET_TYPES, spmatrix]] = None,
dataset_name: Optional[str] = None,
feat_type: Optional[List[str]] = None,
):
) -> ConfigurationSpace:
"""
Returns the Configuration Space object, from which Auto-Sklearn
will sample configurations and build pipelines.
Expand All @@ -851,6 +851,7 @@ def get_configuration_space(
"""
if self.automl_ is None:
self.automl_ = self.build_automl()

return self.automl_.fit(
X, y,
X_test=X_test, y_test=y_test,
Expand Down
4 changes: 1 addition & 3 deletions autosklearn/experimental/askl2.py
Original file line number Diff line number Diff line change
Expand Up @@ -279,9 +279,7 @@ def __init__(
smac_scenario_args : dict, optional (None)
Additional arguments inserted into the scenario of SMAC. See the
`SMAC documentation
<https://automl.github.io/SMAC3/master/options.html?highlight=scenario
#scenario>`_
`SMAC documentation <https://automl.github.io/SMAC3/master/pages/details/scenario.html>`_
for a list of available arguments.
logging_config : dict, optional (None)
Expand Down
3 changes: 2 additions & 1 deletion autosklearn/pipeline/components/classification/__init__.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
__author__ = 'feurerm'

from collections import OrderedDict
from typing import Type
import os

from ..base import AutoSklearnClassificationAlgorithm, find_components, \
Expand All @@ -15,7 +16,7 @@
_addons = ThirdPartyComponents(AutoSklearnClassificationAlgorithm)


def add_classifier(classifier):
def add_classifier(classifier: Type[AutoSklearnClassificationAlgorithm]) -> None:
_addons.add_component(classifier)


Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import os
from collections import OrderedDict
from typing import Dict, Optional
from typing import Dict, Optional, Type

from ConfigSpace.configuration_space import ConfigurationSpace
from ConfigSpace.hyperparameters import CategoricalHyperparameter
Expand All @@ -16,7 +16,7 @@
_addons = ThirdPartyComponents(AutoSklearnPreprocessingAlgorithm)


def add_preprocessor(preprocessor: AutoSklearnPreprocessingAlgorithm) -> None:
def add_preprocessor(preprocessor: Type[AutoSklearnPreprocessingAlgorithm]) -> None:
_addons.add_component(preprocessor)


Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
from collections import OrderedDict
import os
from collections import OrderedDict
from typing import Type

from ..base import AutoSklearnPreprocessingAlgorithm, find_components, \
ThirdPartyComponents, AutoSklearnChoice
Expand All @@ -13,7 +14,7 @@
_addons = ThirdPartyComponents(AutoSklearnPreprocessingAlgorithm)


def add_preprocessor(preprocessor):
def add_preprocessor(preprocessor: Type[AutoSklearnPreprocessingAlgorithm]) -> None:
_addons.add_component(preprocessor)


Expand Down
3 changes: 2 additions & 1 deletion autosklearn/pipeline/components/regression/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
from collections import OrderedDict
from typing import Type
import os

from ..base import AutoSklearnRegressionAlgorithm, find_components, \
Expand All @@ -13,7 +14,7 @@
_addons = ThirdPartyComponents(AutoSklearnRegressionAlgorithm)


def add_regressor(regressor):
def add_regressor(regressor: Type[AutoSklearnRegressionAlgorithm]) -> None:
_addons.add_component(regressor)


Expand Down
3 changes: 1 addition & 2 deletions doc/extending.rst
Original file line number Diff line number Diff line change
Expand Up @@ -48,8 +48,7 @@ the type of component:
get_hyperparameter_search_space()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Return an instance of ``HPOlibConfigSpace.configuration_space
.ConfigurationSpace``.
Return an instance of ``ConfigSpace.configuration_space.ConfigurationSpace``.

See also the abstract definitions:
:meth:`AutoSklearnClassificationAlgorithm.get_hyperparameter_search_space() <autosklearn.pipeline.components.base.AutoSklearnClassificationAlgorithm.get_hyperparameter_search_space>`
Expand Down
Loading

0 comments on commit bab9005

Please sign in to comment.