Metadata-Version: 2.1
Name: optuna
Version: 0.19.0
Summary: A hyperparameter optimization framework
Home-page: https://optuna.org/
Author: Takuya Akiba
Author-email: akiba@preferred.jp
License: UNKNOWN
Description: <div align="center"><img src="https://raw.githubusercontent.com/optuna/optuna/master/docs/image/optuna-logo.png" width="800"/></div>
        
        # Optuna: A hyperparameter optimization framework
        
        [![pypi](https://img.shields.io/pypi/v/optuna.svg)](https://pypi.python.org/pypi/optuna)
        [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/optuna/optuna)
        [![CircleCI](https://circleci.com/gh/optuna/optuna.svg?style=svg)](https://circleci.com/gh/optuna/optuna)
        [![Read the Docs](https://readthedocs.org/projects/optuna/badge/?version=stable)](https://optuna.readthedocs.io/en/stable/)
        [![Codecov](https://codecov.io/gh/optuna/optuna/branch/master/graph/badge.svg)](https://codecov.io/gh/optuna/optuna/branch/master)
        
        [**Website**](https://optuna.org/)
        | [**Docs**](https://optuna.readthedocs.io/en/stable/)
        | [**Install Guide**](https://optuna.readthedocs.io/en/stable/installation.html)
        | [**Tutorial**](https://optuna.readthedocs.io/en/stable/tutorial/index.html)
        
        *Optuna* is an automatic hyperparameter optimization software framework, particularly designed
        for machine learning. It features an imperative, *define-by-run* style user API. Thanks to our
        *define-by-run* API, the code written with Optuna enjoys high modularity, and the user of
        Optuna can dynamically construct the search spaces for the hyperparameters.
        
        
        ## Key Features
        
        Optuna has modern functionalities as follows:
        
        - Parallel distributed optimization
        - Pruning of unpromising trials
        - Lightweight, versatile, and platform agnostic architecture
        
        
        ## Basic Concepts
        
        We use the terms *study* and *trial* as follows:
        
        - Study: optimization based on an objective function
        - Trial: a single execution of the objective function
        
        Please refer to sample code below. The goal of a *study* is to find out the optimal set of
        hyperparameter values (e.g., `classifier` and `svm_c`) through multiple *trials* (e.g.,
        `n_trials=100`). Optuna is a framework designed for the automation and the acceleration of the
        optimization *studies*.
        
        
        ```python
        import ...
        
        # Define an objective function to be minimized.
        def objective(trial):
        
            # Invoke suggest methods of a Trial object to generate hyperparameters.
            regressor_name = trial.suggest_categorical('classifier', ['SVR', 'RandomForest'])
            if regressor_name == 'SVR':
                svr_c = trial.suggest_loguniform('svr_c', 1e-10, 1e10)
                regressor_obj = sklearn.svm.SVR(C=svr_c)
            else:
                rf_max_depth = trial.suggest_int('rf_max_depth', 2, 32)
                regressor_obj = sklearn.ensemble.RandomForestRegressor(max_depth=rf_max_depth)
        
            X, y = sklearn.datasets.load_boston(return_X_y=True)
            X_train, X_val, y_train, y_val = sklearn.model_selection.train_test_split(X, y, random_state=0)
        
            regressor_obj.fit(X_train, y_train)
            y_pred = regressor_obj.predict(X_val)
        
            error = sklearn.metrics.mean_squared_error(y_val, y_pred)
        
            return error  # A objective value linked with the Trial object.
        
        study = optuna.create_study()  # Create a new study.
        study.optimize(objective, n_trials=100)  # Invoke optimization of the objective function.
        ```
        
        
        ## Installation
        
        To install Optuna, use `pip` as follows:
        
        ```
        $ pip install optuna
        ```
        
        Optuna supports Python 2.7 and Python 3.5 or newer.
        
        
        ## Contribution
        
        Any contributions to Optuna are welcome! When you send a pull request, please follow the
        [contribution guide](./CONTRIBUTING.md).
        
        
        ## License
        
        MIT License (see [LICENSE](./LICENSE)).
        
        
        ## Reference
        
        Takuya Akiba, Shotaro Sano, Toshihiko Yanase, Takeru Ohta, and Masanori Koyama. 2019.
        Optuna: A Next-generation Hyperparameter Optimization Framework. In KDD ([arXiv](https://arxiv.org/abs/1907.10902)).
Platform: UNKNOWN
Description-Content-Type: text/markdown
Provides-Extra: checking
Provides-Extra: example
Provides-Extra: codecov
Provides-Extra: testing
Provides-Extra: document
