From 3fa001b6541e8c9cfd1dd36804e7d2787a62a4a0 Mon Sep 17 00:00:00 2001 From: Matthias Feurer Date: Thu, 27 Apr 2017 14:47:50 +0200 Subject: [PATCH 1/5] Check for python3.6 --- .travis.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index c63fb9f5f..408175577 100644 --- a/.travis.yml +++ b/.travis.yml @@ -17,7 +17,9 @@ env: matrix: - DISTRIB="conda" PYTHON_VERSION="2.7" NUMPY_VERSION="1.11" SCIPY_VERSION="0.17.0" CYTHON_VERSION="0.21" SKLEARN_VERSION="0.18" - DISTRIB="conda" PYTHON_VERSION="3.4" NUMPY_VERSION="1.11" SCIPY_VERSION="0.17.0" CYTHON_VERSION="0.23.4" SKLEARN_VERSION="0.18" - - DISTRIB="conda" PYTHON_VERSION="3.5" COVERAGE="true" NUMPY_VERSION="1.11" SCIPY_VERSION="0.17.0" CYTHON_VERSION="0.23.4" SKLEARN_VERSION="0.18" + - DISTRIB="conda" PYTHON_VERSION="3.5" CNUMPY_VERSION="1.11" SCIPY_VERSION="0.17.0" CYTHON_VERSION="0.23.4" SKLEARN_VERSION="0.18" + - DISTRIB="conda" PYTHON_VERSION="3.6" COVERAGE="true" NUMPY_VERSION="1.11" SCIPY_VERSION="0.17.0" CYTHON_VERSION="0.23.4" SKLEARN_VERSION="0.18" + install: source ci_scripts/install.sh script: bash ci_scripts/test.sh after_success: source ci_scripts/success.sh From 58e7b077bdfd36bdf80228a6e4384cd8d5767659 Mon Sep 17 00:00:00 2001 From: Matthias Feurer Date: Thu, 27 Apr 2017 14:56:32 +0200 Subject: [PATCH 2/5] update cython version --- .travis.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 408175577..b15f245bc 100644 --- a/.travis.yml +++ b/.travis.yml @@ -17,8 +17,8 @@ env: matrix: - DISTRIB="conda" PYTHON_VERSION="2.7" NUMPY_VERSION="1.11" SCIPY_VERSION="0.17.0" CYTHON_VERSION="0.21" SKLEARN_VERSION="0.18" - DISTRIB="conda" PYTHON_VERSION="3.4" NUMPY_VERSION="1.11" SCIPY_VERSION="0.17.0" CYTHON_VERSION="0.23.4" SKLEARN_VERSION="0.18" - - DISTRIB="conda" PYTHON_VERSION="3.5" CNUMPY_VERSION="1.11" SCIPY_VERSION="0.17.0" CYTHON_VERSION="0.23.4" SKLEARN_VERSION="0.18" - - DISTRIB="conda" PYTHON_VERSION="3.6" COVERAGE="true" NUMPY_VERSION="1.11" SCIPY_VERSION="0.17.0" CYTHON_VERSION="0.23.4" SKLEARN_VERSION="0.18" + - DISTRIB="conda" PYTHON_VERSION="3.5" NUMPY_VERSION="1.11" SCIPY_VERSION="0.17.0" CYTHON_VERSION="0.23.4" SKLEARN_VERSION="0.18" + - DISTRIB="conda" PYTHON_VERSION="3.6" COVERAGE="true" NUMPY_VERSION="1.11" SCIPY_VERSION="0.17.0" CYTHON_VERSION="0.25.2" SKLEARN_VERSION="0.18" install: source ci_scripts/install.sh script: bash ci_scripts/test.sh From 2ef707e37a1630aacb1117cee2d11610cf8221e8 Mon Sep 17 00:00:00 2001 From: Matthias Feurer Date: Thu, 27 Apr 2017 15:00:48 +0200 Subject: [PATCH 3/5] yet another update to .travis.yml --- .travis.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.travis.yml b/.travis.yml index b15f245bc..b73a3ea15 100644 --- a/.travis.yml +++ b/.travis.yml @@ -15,10 +15,10 @@ env: - TEST_DIR=/tmp/test_dir/ - MODULE=openml matrix: - - DISTRIB="conda" PYTHON_VERSION="2.7" NUMPY_VERSION="1.11" SCIPY_VERSION="0.17.0" CYTHON_VERSION="0.21" SKLEARN_VERSION="0.18" - - DISTRIB="conda" PYTHON_VERSION="3.4" NUMPY_VERSION="1.11" SCIPY_VERSION="0.17.0" CYTHON_VERSION="0.23.4" SKLEARN_VERSION="0.18" - - DISTRIB="conda" PYTHON_VERSION="3.5" NUMPY_VERSION="1.11" SCIPY_VERSION="0.17.0" CYTHON_VERSION="0.23.4" SKLEARN_VERSION="0.18" - - DISTRIB="conda" PYTHON_VERSION="3.6" COVERAGE="true" NUMPY_VERSION="1.11" SCIPY_VERSION="0.17.0" CYTHON_VERSION="0.25.2" SKLEARN_VERSION="0.18" + - DISTRIB="conda" PYTHON_VERSION="2.7" NUMPY_VERSION="1.11" SCIPY_VERSION="0.17.0" CYTHON_VERSION="0.21" SKLEARN_VERSION="0.18.1" + - DISTRIB="conda" PYTHON_VERSION="3.4" NUMPY_VERSION="1.11" SCIPY_VERSION="0.17.0" CYTHON_VERSION="0.23.4" SKLEARN_VERSION="0.18.1" + - DISTRIB="conda" PYTHON_VERSION="3.5" NUMPY_VERSION="1.11" SCIPY_VERSION="0.17.0" CYTHON_VERSION="0.23.4" SKLEARN_VERSION="0.18.1" + - DISTRIB="conda" PYTHON_VERSION="3.6" COVERAGE="true" NUMPY_VERSION="1.12.1" SCIPY_VERSION="0.19.0" CYTHON_VERSION="0.25.2" SKLEARN_VERSION="0.18.1" install: source ci_scripts/install.sh script: bash ci_scripts/test.sh From 54547c593313b5c88aec8912765220976cfa74a4 Mon Sep 17 00:00:00 2001 From: Matthias Feurer Date: Thu, 27 Apr 2017 15:40:38 +0200 Subject: [PATCH 4/5] FIX issue #220, sort dictionaries in flows --- openml/flows/sklearn_converter.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/openml/flows/sklearn_converter.py b/openml/flows/sklearn_converter.py index 8e6187756..74c12a8cd 100644 --- a/openml/flows/sklearn_converter.py +++ b/openml/flows/sklearn_converter.py @@ -49,6 +49,9 @@ def sklearn_to_flow(o, parent_model=None): rval = o elif isinstance(o, dict): # TODO: explain what type of parameter is here + if not isinstance(o, OrderedDict): + o = OrderedDict([(key, value) for key, value in sorted(o.items())]) + rval = OrderedDict() for key, value in o.items(): if not isinstance(key, six.string_types): @@ -133,7 +136,7 @@ def flow_to_sklearn(o, **kwargs): else: rval = OrderedDict((flow_to_sklearn(key, **kwargs), flow_to_sklearn(value, **kwargs)) - for key, value in o.items()) + for key, value in sorted(o.items())) elif isinstance(o, (list, tuple)): rval = [flow_to_sklearn(element, **kwargs) for element in o] if isinstance(o, tuple): From 716c36ba6ff5a24f06a0448683d0949a9f8a7bc0 Mon Sep 17 00:00:00 2001 From: Matthias Feurer Date: Thu, 27 Apr 2017 16:11:34 +0200 Subject: [PATCH 5/5] ignore unknown categories in OHE in unittest --- tests/test_flows/test_flow.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/test_flows/test_flow.py b/tests/test_flows/test_flow.py index 1b86dbbdf..b9496858c 100644 --- a/tests/test_flows/test_flow.py +++ b/tests/test_flows/test_flow.py @@ -209,7 +209,8 @@ def test_sklearn_to_upload_to_flow(self): y = iris.target # Test a more complicated flow - ohe = sklearn.preprocessing.OneHotEncoder(categorical_features=[1]) + ohe = sklearn.preprocessing.OneHotEncoder(categorical_features=[1], + handle_unknown='ignore') scaler = sklearn.preprocessing.StandardScaler(with_mean=False) pca = sklearn.decomposition.TruncatedSVD() fs = sklearn.feature_selection.SelectPercentile(