{ "info": { "author": "Takuya Akiba", "author_email": "akiba@preferred.jp", "bugtrack_url": null, "classifiers": [], "description": "
\n\n# Optuna: A hyperparameter optimization framework\n\n[![pypi](https://img.shields.io/pypi/v/optuna.svg)](https://pypi.python.org/pypi/optuna)\n[![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/pfnet/optuna)\n[![CircleCI](https://circleci.com/gh/pfnet/optuna.svg?style=svg)](https://circleci.com/gh/pfnet/optuna)\n[![Read the Docs](https://readthedocs.org/projects/optuna/badge/?version=stable)](https://optuna.readthedocs.io/en/stable/)\n[![Codecov](https://codecov.io/gh/pfnet/optuna/branch/master/graph/badge.svg)](https://codecov.io/gh/pfnet/optuna/branch/master)\n\n[**Website**](https://optuna.org/)\n| [**Docs**](https://optuna.readthedocs.io/en/stable/)\n| [**Install Guide**](https://optuna.readthedocs.io/en/stable/installation.html)\n| [**Tutorial**](https://optuna.readthedocs.io/en/stable/tutorial/index.html)\n\n*Optuna* is an automatic hyperparameter optimization software framework, particularly designed\nfor machine learning. It features an imperative, *define-by-run* style user API. Thanks to our\n*define-by-run* API, the code written with Optuna enjoys high modularity, and the user of\nOptuna can dynamically construct the search spaces for the hyperparameters.\n\n\n## Key Features\n\nOptuna has modern functionalities as follows:\n\n- Parallel distributed optimization\n- Pruning of unpromising trials\n- Lightweight, versatile, and platform agnostic architecture\n\n\n## Basic Concepts\n\nWe use the terms *study* and *trial* as follows:\n\n- Study: optimization based on an objective function\n- Trial: a single execution of the objective function\n\nPlease refer to sample code below. The goal of a *study* is to find out the optimal set of\nhyperparameter values (e.g., `classifier` and `svm_c`) through multiple *trials* (e.g.,\n`n_trials=100`). Optuna is a framework designed for the automation and the acceleration of the\noptimization *studies*.\n\n\n```python\nimport ...\n\n# Define an objective function to be minimized.\ndef objective(trial):\n\n # Invoke suggest methods of a Trial object to generate hyperparameters.\n regressor_name = trial.suggest_categorical('classifier', ['SVR', 'RandomForest'])\n if regressor_name == 'SVR':\n svr_c = trial.suggest_loguniform('svr_c', 1e-10, 1e10)\n regressor_obj = sklearn.svm.SVR(C=svr_c)\n else:\n rf_max_depth = trial.suggest_int('rf_max_depth', 2, 32)\n regressor_obj = sklearn.ensemble.RandomForestRegressor(max_depth=rf_max_depth)\n\n X, y = sklearn.datasets.load_boston(return_X_y=True)\n X_train, X_val, y_train, y_val = sklearn.model_selection.train_test_split(X, y, random_state=0)\n\n regressor_obj.fit(X_train, y_train)\n y_pred = regressor_obj.predict(X_val)\n\n error = sklearn.metrics.mean_squared_error(y_val, y_pred)\n\n return error # A objective value linked with the Trial object.\n\nstudy = optuna.create_study() # Create a new study.\nstudy.optimize(objective, n_trials=100) # Invoke optimization of the objective function.\n```\n\n\n## Installation\n\nTo install Optuna, use `pip` as follows:\n\n```\n$ pip install optuna\n```\n\nOptuna supports Python 2.7 and Python 3.5 or newer.\n\n\n## Contribution\n\nAny contributions to Optuna are welcome! When you send a pull request, please follow the\n[contribution guide](./CONTRIBUTING.md).\n\n\n## License\n\nMIT License (see [LICENSE](./LICENSE)).\n\n\n## Reference\n\nTakuya Akiba, Shotaro Sano, Toshihiko Yanase, Takeru Ohta, and Masanori Koyama. 2019.\nOptuna: A Next-generation Hyperparameter Optimization Framework. In KDD ([arXiv](https://arxiv.org/abs/1907.10902)).", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://optuna.org/", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "optuna", "package_url": "https://pypi.org/project/optuna/", "platform": "", "project_url": "https://pypi.org/project/optuna/", "project_urls": { "Homepage": "https://optuna.org/" }, "release_url": "https://pypi.org/project/optuna/0.17.1/", "requires_dist": null, "requires_python": "", "summary": "A hyperparameter optimization framework", "version": "0.17.1" }, "last_serial": 5974438, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "b327b98a72e3424f4084adc2ce8705af", "sha256": "c34503eea6f67695703267931f70c574fc45fc3130892c45630e9dcb47074753" }, "downloads": -1, "filename": "optuna-0.0.1.tar.gz", "has_sig": false, "md5_digest": "b327b98a72e3424f4084adc2ce8705af", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 622, "upload_time": "2018-10-19T03:24:34", "url": "https://files.pythonhosted.org/packages/e4/1a/1d711aeadbe3742cb7924c955a3175f43389f3ba7b0cf8e8bbc690ae3bf3/optuna-0.0.1.tar.gz" } ], "0.10.0": [ { "comment_text": "", "digests": { "md5": "746fe94db75186373ebe495fe3134989", "sha256": "9a176e2d7d348f85d4f1a876017759ca232b762e822da6784ee29ce3512ca351" }, "downloads": -1, "filename": "optuna-0.10.0.tar.gz", "has_sig": false, "md5_digest": "746fe94db75186373ebe495fe3134989", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 72848, "upload_time": "2019-04-22T05:31:28", "url": "https://files.pythonhosted.org/packages/f4/4c/04fd099ffa103603fa778a8582ba514efb1f5457af66b9470f6974a14356/optuna-0.10.0.tar.gz" } ], "0.11.0": [ { "comment_text": "", "digests": { "md5": "45068eb4ca112902ddd51c1116a9baad", "sha256": "46609265828cc2e3abe485e00d8b3e98b30a6e7ec2f2564961d363849f428b2e" }, "downloads": -1, "filename": "optuna-0.11.0.tar.gz", "has_sig": false, "md5_digest": "45068eb4ca112902ddd51c1116a9baad", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 75496, "upload_time": "2019-05-23T02:03:57", "url": "https://files.pythonhosted.org/packages/74/83/21404130940427eed730cd61df9574e933c829e565627ddb0f374c014327/optuna-0.11.0.tar.gz" } ], "0.12.0": [ { "comment_text": "", "digests": { "md5": "1cd838b6dec315c459785561c87b6f7e", "sha256": "8b5b2e9889146b129174ef8125a966610875c0d1d65e80bedf53ff64ead8ac6d" }, "downloads": -1, "filename": "optuna-0.12.0.tar.gz", "has_sig": false, "md5_digest": "1cd838b6dec315c459785561c87b6f7e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 76376, "upload_time": "2019-06-06T01:45:23", "url": "https://files.pythonhosted.org/packages/bc/b9/4c4b32221c8c708b99c2005c3e80b72bffec7dbf07fea57ec8b46e127efe/optuna-0.12.0.tar.gz" } ], "0.13.0": [ { "comment_text": "", "digests": { "md5": "7aeb9b6a0046a4951a48e07b7f0abf5e", "sha256": "915b9d7b28f7f7cdf015d8617c689ca90eda7a5bbd59c5fc232c9eccc9a91585" }, "downloads": -1, "filename": "optuna-0.13.0.tar.gz", "has_sig": false, "md5_digest": "7aeb9b6a0046a4951a48e07b7f0abf5e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 85002, "upload_time": "2019-07-04T01:51:28", "url": "https://files.pythonhosted.org/packages/75/ae/925dc830b3c529d0e095fcd5a4e33adfc51d881e60c61857e6158a96d366/optuna-0.13.0.tar.gz" } ], "0.14.0": [ { "comment_text": "", "digests": { "md5": "f50d8873229fbf26276dba0bd4d6f1a7", "sha256": "53bdbcb68bde0494784b9739eca02d39ccba4463fedc504eb7ddc2f1d02246e5" }, "downloads": -1, "filename": "optuna-0.14.0.tar.gz", "has_sig": false, "md5_digest": "f50d8873229fbf26276dba0bd4d6f1a7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 91345, "upload_time": "2019-08-01T01:08:38", "url": "https://files.pythonhosted.org/packages/0c/dc/c10b179b9bbee133241049ee360cc3135b725e18380f1b7d5aced02f961e/optuna-0.14.0.tar.gz" } ], "0.15.0": [ { "comment_text": "", "digests": { "md5": "8f3408363650ab4ca084768a8e11731d", "sha256": "ff0e6ba8d773e4b3c6173173807c4b314cbdab2e39d245a5f3925e69bd21b87d" }, "downloads": -1, "filename": "optuna-0.15.0.tar.gz", "has_sig": false, "md5_digest": "8f3408363650ab4ca084768a8e11731d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 94299, "upload_time": "2019-08-29T01:15:33", "url": "https://files.pythonhosted.org/packages/92/94/966855f9edd4f22acce81407184e60b224dd58b27f2e8280134d826b5a0e/optuna-0.15.0.tar.gz" } ], "0.16.0": [ { "comment_text": "", "digests": { "md5": "6b752cd28ba99f349a17a32250ad94ca", "sha256": "392ae654d3b3b00d372288b599fe91f025dee897c34954e1815071aa56bdccb5" }, "downloads": -1, "filename": "optuna-0.16.0.tar.gz", "has_sig": false, "md5_digest": "6b752cd28ba99f349a17a32250ad94ca", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 94081, "upload_time": "2019-09-12T01:30:59", "url": "https://files.pythonhosted.org/packages/ce/db/70bac89dbfaae13c2a84ca0f39fb5fbdbb26fe58e13b15e64db279315d26/optuna-0.16.0.tar.gz" } ], "0.17.0": [ { "comment_text": "", "digests": { "md5": "cf1bd5c72c944887c3176868cf136a6b", "sha256": "5ac05483ffcfaaf8bf6ba5ffac26ecdacbed431c16e9e90ebef07e42d88ff52d" }, "downloads": -1, "filename": "optuna-0.17.0.tar.gz", "has_sig": false, "md5_digest": "cf1bd5c72c944887c3176868cf136a6b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 107545, "upload_time": "2019-10-11T02:12:06", "url": "https://files.pythonhosted.org/packages/ac/62/a5f9319ecd4df18fd11cc482bf6a4eef9fffd2f6ec1895be36e703328866/optuna-0.17.0.tar.gz" } ], "0.17.1": [ { "comment_text": "", "digests": { "md5": "584bfc6421d7e4b3b5fea1108f176380", "sha256": "3d1d3547340c47f34f3a416a2e0761a0ff887ae8ce06474e84ebcc8600afd438" }, "downloads": -1, "filename": "optuna-0.17.1.tar.gz", "has_sig": false, "md5_digest": "584bfc6421d7e4b3b5fea1108f176380", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 107459, "upload_time": "2019-10-15T02:30:19", "url": "https://files.pythonhosted.org/packages/81/4c/88314362b06b1bced025a2cb46b488849835f52170dc6ac8a4562654de39/optuna-0.17.1.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "41f265fcc8de8ab50626cff29a694437", "sha256": "f033bb2c75c8608ae78fa0b5e414bf37b98d171143defff708e18aee555d7b9b" }, "downloads": -1, "filename": "optuna-0.4.0.tar.gz", "has_sig": false, "md5_digest": "41f265fcc8de8ab50626cff29a694437", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 52157, "upload_time": "2018-12-03T04:32:53", "url": "https://files.pythonhosted.org/packages/10/12/1390bd79ae52f4145deb89a51d07a05443bf1a1368a9e3228d17486dff37/optuna-0.4.0.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "1eb41147568fbba096662cd398ca3577", "sha256": "ae31d793ffd86e541cd06d739ee5cead47521b61c49a4d261e35716c15731227" }, "downloads": -1, "filename": "optuna-0.5.0.tar.gz", "has_sig": false, "md5_digest": "1eb41147568fbba096662cd398ca3577", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 53754, "upload_time": "2018-12-14T01:53:19", "url": "https://files.pythonhosted.org/packages/3e/ad/ed7da267771ae0e1041d4b7072dbd99efff5bacb5ba2b79fd563669aac83/optuna-0.5.0.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "7b395321b2d2f7df72975e39dd2658ce", "sha256": "ed648e485ada1ab81ace77078d3e0a7d72933b2ee8a03cdbaf43c5b82a6d2374" }, "downloads": -1, "filename": "optuna-0.6.0.tar.gz", "has_sig": false, "md5_digest": "7b395321b2d2f7df72975e39dd2658ce", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 57897, "upload_time": "2019-01-10T01:32:11", "url": "https://files.pythonhosted.org/packages/23/eb/8c9ba158711b159889c2eee55dacb086c21191ad039d8530e1a6bdc8152a/optuna-0.6.0.tar.gz" } ], "0.7.0": [ { "comment_text": "", "digests": { "md5": "6d85ec7a127334edcc6fd43a6680398b", "sha256": "34a7bdf7b7e5d937bab2133c33d9d4e4831d216c0b866219a2e2e04875859e3e" }, "downloads": -1, "filename": "optuna-0.7.0.tar.gz", "has_sig": false, "md5_digest": "6d85ec7a127334edcc6fd43a6680398b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 60724, "upload_time": "2019-01-24T02:16:59", "url": "https://files.pythonhosted.org/packages/2e/2c/946b73a073761a0dc68235ef92829b47d82c6f807e8767e0f84b09c98c0f/optuna-0.7.0.tar.gz" } ], "0.8.0": [ { "comment_text": "", "digests": { "md5": "107de64e570e6e24d94b0466b3a6dd5e", "sha256": "54b069049567b681f2d7c5c464a81c816a5759e2edbbeddc00e04ca4908ac2e6" }, "downloads": -1, "filename": "optuna-0.8.0.tar.gz", "has_sig": false, "md5_digest": "107de64e570e6e24d94b0466b3a6dd5e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 61617, "upload_time": "2019-02-26T01:25:03", "url": "https://files.pythonhosted.org/packages/ca/ec/27bedf49badd013b9cd67f80abd0f9c71cf88acf8a3689a0f8ce04939e56/optuna-0.8.0.tar.gz" } ], "0.9.0": [ { "comment_text": "", "digests": { "md5": "47828999eb7a6a6e304ba474c17cb83c", "sha256": "12d6d13724b157b36572d551d2982b1eb9f5916abe5f05f4ce5f3ac86a034058" }, "downloads": -1, "filename": "optuna-0.9.0.tar.gz", "has_sig": false, "md5_digest": "47828999eb7a6a6e304ba474c17cb83c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 64975, "upload_time": "2019-03-19T07:41:38", "url": "https://files.pythonhosted.org/packages/10/8a/3d86da5e3c03aafc14e186d66998aa9fbc97d45a578045482888455eecd1/optuna-0.9.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "584bfc6421d7e4b3b5fea1108f176380", "sha256": "3d1d3547340c47f34f3a416a2e0761a0ff887ae8ce06474e84ebcc8600afd438" }, "downloads": -1, "filename": "optuna-0.17.1.tar.gz", "has_sig": false, "md5_digest": "584bfc6421d7e4b3b5fea1108f176380", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 107459, "upload_time": "2019-10-15T02:30:19", "url": "https://files.pythonhosted.org/packages/81/4c/88314362b06b1bced025a2cb46b488849835f52170dc6ac8a4562654de39/optuna-0.17.1.tar.gz" } ] }