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

Update dependency optuna to v3.6.1 #126

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

renovate-bot
Copy link
Contributor

@renovate-bot renovate-bot commented May 24, 2024

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
optuna 3.2.0 -> 3.6.1 age adoption passing confidence

Release Notes

optuna/optuna (optuna)

v3.6.1

Compare Source

This is the release note of v3.6.1.

Bug Fixes
  • [Backport] Fix Wilcoxon pruner bug when best_trial has no intermediate value #​5370
  • [Backport] Address issue#5358 (#​5371)
  • [Backport] Fix average_is_best implementation in WilcoxonPruner (#​5373)
Other
  • Bump up version number to v3.6.1 (#​5372)
Thanks to All the Contributors!

This release was made possible by the authors and the people who participated in the reviews and discussions.

@​HideakiImamura, @​eukaryo, @​nabenabe0928

v3.6.0

Compare Source

This is the release note of v3.6.0.

Highlights

Optuna 3.6 newly supports the following new features. See our release blog for more detailed information.

  • Wilcoxon Pruner: New Pruner Based on Wilcoxon Signed-Rank Test
  • Lightweight Gaussian Process (GP)-Based Sampler
  • Speeding up Importance Evaluation with PED-ANOVA
  • Stricter Verification Logic for FrozenTrial
  • Refactoring the Optuna Dashboard
  • Migration to Optuna Integration
Breaking Changes
  • Implement optuna.terminator using optuna._gp (#​5241)

These migration-related PRs do not break the backward compatibility as long as optuna-integration v3.6.0 or later is installed in your environment.

New Features
  • Backport the change of the timeline plot in Optuna Dashboard (#​5168)
  • Wilcoxon pruner (#​5181)
  • Add GPSampler (#​5185)
  • Add a super quick f-ANOVA algorithm named PED-ANOVA (#​5212)
Enhancements
Bug Fixes
Documentation
  • Remove study optimize from CLI tutorial page (#​5152)
  • Clarify the GridSampler with ask-and-tell interface (#​5153)
  • Clean-up faq.rst (#​5170)
  • Make Methods section hidden from Artifact Docs (#​5188)
  • Enhance README (#​5189)
  • Add a new section explaing how to customize figures (#​5194)
  • Replace legacy plotly.graph_objs with plotly.graph_objects (#​5223)
  • Add a note section to explain that reseed affects reproducibility (#​5233)
  • Update links to papers (#​5235)
  • adding link for module's example to documetation for the optuna.terminator module (#​5243, thanks @​HarshitNagpal29!)
  • Replace the old example directory (#​5244)
  • Add Optuna Dashboard section to docs (#​5250, thanks @​porink0424!)
  • Add a safety guard to Wilcoxon pruner, and modify the docstring (#​5256)
  • Replace LightGBM with PyTorch-based example to remove lightgbm dependency in visualization tutorial (#​5257)
  • Remove unnecessary comment in Specify Hyperparameters Manually tutorial page (#​5258)
  • Add a tutorial of Wilcoxon pruner (#​5266)
  • Clarify that pruners module does not support multi-objective optimization (#​5270)
  • Minor fixes (#​5275)
  • Add a guide to PED-ANOVA for n_trials>10000 (#​5310)
  • Minor fixes of docs and code comments for PedAnovaImportanceEvaluator (#​5312)
  • Fix doc for WilcoxonPruner (#​5313)
  • Fix doc example in WilcoxonPruner (#​5315)
Examples
Tests
  • Unify the implementation of _create_frozen_trial() under testing module (#​5157)
  • Remove the Python version constraint for PyTorch (#​5278)
Code Fixes
Continuous Integration
Other
Thanks to All the Contributors!

This release was made possible by the authors and the people who participated in the reviews and discussions.

@​Alnusjaponica, @​DanielAvdar, @​HarshitNagpal29, @​HideakiImamura, @​SimonPop, @​adjeiv, @​buruzaemon, @​c-bata, @​contramundum53, @​dheemantha-bhat, @​eukaryo, @​gen740, @​hrntsm, @​knshnb, @​nabenabe0928, @​not522, @​nzw0301, @​porink0424, @​ryota717, @​shahpratham, @​toshihikoyanase, @​y0z

v3.5.0

Compare Source

This is the release note of v3.5.0.

Highlights

This is a maintenance release with various bug fixes and improvements to the documentation and more.

Breaking Changes
New Features
Enhancements
  • Support constant_liar in multi-objective TPESampler (#​5021)
  • Make positional args to kwargs in suggest_int (#​5044)
  • Ensure n_below is never negative in TPESampler (#​5074, thanks @​p1kit!)
  • Improve visibility of infeasible trials in plot_contour (#​5107)
Bug Fixes
  • Fix random number generator of NSGAIIChildGenerationStrategy (#​5003)
  • Return trials for above in MO split when n_below=0 (#​5079)
  • Enable loading of read-only files (#​5103, thanks @​Guillaume227!)
  • Fix logpdf for scaled truncnorm (#​5110)
  • Fix the bug of matplotlib's plot_rank function (#​5133)
Documentation
  • Add the table of dependencies in each integration module (#​5005)
  • Enhance the documentation of LightGBM tuner and separate train() from __init__.py (#​5010)
  • Update link to reference (#​5064)
  • Update the FAQ on reproducible optimization results to remove note on HyperbandPruner (#​5075, thanks @​felix-cw!)
  • Remove MOTPESampler from index.rst file (#​5084, thanks @​Ashhar-24!)
  • Add a note about the deprecation of MOTPESampler to the doc (#​5086)
  • Add the TPE tutorial paper to the doc-string (#​5096)
  • Update README.md to fix the installation and integration (#​5126)
  • Clarify that Recommended budgets include n_startup_trials (#​5137)
Examples
Tests
Code Fixes
Continuous Integration
Other
Thanks to All the Contributors!

This release was made possible by the authors and the people who participated in the reviews and discussions.

@​Alnusjaponica, @​Ashhar-24, @​Guillaume227, @​HideakiImamura, @​JustinGoheen, @​Vaibhav101203, @​aanghelidi, @​adjeiv, @​c-bata, @​contramundum53, @​eukaryo, @​felix-cw, @​gen740, @​jot-s-bindra, @​keisuke-umezawa, @​knshnb, @​nabenabe0928, @​not522, @​nzw0301, @​p1kit, @​sousu4, @​toshihikoyanase, @​y-kamiya

v3.4.0

Compare Source

This is the release note of v3.4.0.

Highlights

Optuna 3.4 newly supports the following new features. See our release blog for more detailed information.

  • Preferential Optimization (Optuna Dashboard)
  • Optuna Artifact
  • Jupyter Lab Extension
  • VS Code Extension
  • User-defined Distance for Categorical Parameters in TPE
  • Constrained Optimization Support for Visualization Functions
  • User-Defined Plotly’s Figure Support (Optuna Dashboard)
  • 3D Model Viewer Support (Optuna Dashboard)
Breaking Changes
  • Remove deprecated arguments with regard to LightGBM>=4.0 (#​4844)
  • Deprecate SkoptSampler (#​4913)
New Features
  • Support constraints for intermediate values plot (#​4851, thanks @​adjeiv!)
  • Display all objectives on hyperparameter importances plot (#​4871)
  • Implement get_all_study_names() (#​4898)
  • Support constraints plot_rank (#​4899, thanks @​ryota717!)
  • Support Study Artifacts (#​4905)
  • Support specifying distance between categorical choices in TPESampler (#​4926)
  • Add metric_names getter to study (#​4930)
  • Add artifact middleware for exponential backoff retries (#​4956)
  • Add GCSArtifactStore (#​4967, thanks @​semiexp!)
  • Add BestValueStagnationEvaluator (#​4974, thanks @​smygw72!)
  • Allow user-defined objective names in hyperparameter importance plots (#​4986)
Enhancements
Bug Fixes
Documentation
  • Fix typo in _filesystem.py (#​4909)
  • Mention a pruner instance is not stored in a storage in resuming tutorial (#​4927)
  • Add introduction of optuna-fast-fanova in documents (#​4943)
  • Add artifact tutorial (#​4954)
  • Fix an example code in Boto3ArtifactStore's docstring (#​4957)
  • Add tutorial for JournalStorage (#​4980, thanks @​semiexp!)
  • Fix document regarding ArtifactNotFound (#​4982, thanks @​smygw72!)
  • Add the workaround for duplicated samples to FAQ (#​5006)
Examples
Tests
  • Reduce n_trials in test_combination_of_different_distributions_objective (#​4950)
  • Replaces California housing dataset with iris dataset (#​4953)
  • Fix numpy duplication warning (#​4978, thanks @​torotoki!)
  • Make test order deterministic for pytest-xdist (#​4999)
Code Fixes
Continuous Integration
Other
Thanks to All the Contributors!

This release was made possible by the authors and the people who participated in the reviews and discussions.

@​Alnusjaponica, @​HideakiImamura, @​RuTiO2le, @​YuigaWada, @​adjeiv, @​c-bata, @​ciffelia, @​contramundum53, @​cross32768, @​eukaryo, @​g-tamaki, @​g-votte, @​gen740, @​hamster-86, @​hrntsm, @​hvy, @​keisuke-umezawa, @​knshnb, @​lucasmrdt, @​louis-she, @​moririn2528, @​nabenabe0928, @​not522, @​nzw0301, @​ryota717, @​semiexp, @​shu65, @​smygw72, @​sousu4, @​torotoki, @​toshihikoyanase, @​xadrianzetx

v3.3.0

Compare Source

This is the release note of v3.3.0.

Highlights
CMA-ES with Learning Rate Adaptation

A new variant of CMA-ES has been added. By setting the lr_adapt argument to True in CmaEsSampler, you can utilize it. For multimodal and/or noisy problems, adapting the learning rate can help avoid getting trapped in local optima. For more details, please refer to #​4817. We want to thank @​nomuramasahir0, one of the authors of LRA-CMA-ES, for his great work and the development of cmaes library.

256118903-6796d0c4-3278-4d99-bdb2-00b6fe0fa13b
Hypervolume History Plot for Multiobjective Optimization

In multiobjective optimization, the history of hypervolume is commonly used as an indicator of performance. Optuna now supports this feature in the visualization module. Thanks to @​y0z for your great work!

246094447-f17d5961-216a-44b3-b9ce-715c105445a7

Constrained Optimization Support for Visualization Functions
Plotly matplotlib
constrained-optimization-history-plot (1) 254270811-e85c3c5e-44e5-4a04-ba8a-f6ea2c53611f (1)

Some samplers support constrained optimization, however, many other features cannot handle it. We are continuously enhancing support for constraints. In this release, plot_optimization_history starts to consider constraint violations. Thanks to @​hrntsm for your great work!

import optuna

def objective(trial):
    x = trial.suggest_float("x", -15, 30)
    y = trial.suggest_float("y", -15, 30)
    v0 = 4 * x**2 + 4 * y**2
    trial.set_user_attr("constraint", [1000 - v0])
    return v0

def constraints_func(trial):
    return trial.user_attrs["constraint"]

sampler = optuna.samplers.TPESampler(constraints_func=constraints_func)
study = optuna.create_study(sampler=sampler)
study.optimize(objective, n_trials=100)
fig = optuna.visualization.plot_optimization_history(study)
fig.show()
Streamlit Integration for Human-in-the-loop Optimization
streamlit_integration

Optuna Dashboard v0.11.0 provides the tight integration with Streamlit framework. By using this feature, you can create your own application for human-in-the-loop optimization. Please check out the documentation and the example for details.

Breaking Changes
New Features
  • Add logei_candidate_func and make it default when available (#​4667)
  • Support JournalFileStorage and JournalRedisStorage on CLI (#​4696)
  • Implement hypervolume history plot for matplotlib backend (#​4748, thanks @​y0z!)
  • Add cv_results_ to OptunaSearchCV (#​4751, thanks @​jckkvs!)
  • Add optuna.integration.botorch.qnei_candidates_func (#​4753, thanks @​kstoneriv3!)
  • Add hypervolume history plot for plotly backend (#​4757, thanks @​y0z!)
  • Add FileSystemArtifactStore (#​4763)
  • Sort params on fetch (#​4775)
  • Add constraints support to _optimization_history_plot (#​4793, thanks @​hrntsm!)
  • Bump up LightGBM version to v4.0.0 (#​4810)
  • Add constraints support to matplotlib._optimization_history_plot (#​4816, thanks @​hrntsm!)
  • Introduce CMA-ES with Learning Rate Adaptation (#​4817)
  • Add upload_artifact api (#​4823)
  • Add before_trial (#​4825)
  • Add Boto3ArtifactStore (#​4840)
  • Display best objective value in contour plot for a given param pair, not the value from the most recent trial (#​4848)
Enhancements
Bug Fixes
Installation
Documentation

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate-bot renovate-bot changed the title Update dependency optuna to v3.6.1 fix(deps): update dependency optuna to v3.6.1 Oct 25, 2024
@renovate-bot renovate-bot changed the title fix(deps): update dependency optuna to v3.6.1 Update dependency optuna to v3.6.1 Nov 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant