Skip to content

Commit

Permalink
Merge pull request optuna#5515 from virendrapatil24/fix-http-links-un…
Browse files Browse the repository at this point in the history
…derscore

fixed hyperlinks to use double trailing underscores
  • Loading branch information
y0z authored Jun 25, 2024
2 parents c75b6c2 + 46568e7 commit dd9df19
Show file tree
Hide file tree
Showing 40 changed files with 117 additions and 116 deletions.
48 changes: 24 additions & 24 deletions docs/source/reference/integration.rst

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion optuna/_hypervolume/hssp.py
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ def _solve_hssp(
paper:
- `Greedy Hypervolume Subset Selection in Low Dimensions
<https://doi.org/10.1162/EVCO_a_00188>`_
<https://doi.org/10.1162/EVCO_a_00188>`__
"""
if subset_size == rank_i_indices.size:
return rank_i_indices
Expand Down
2 changes: 1 addition & 1 deletion optuna/importance/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ def get_param_importances(
.. note::
:class:`~optuna.importance.FanovaImportanceEvaluator` takes over 1 minute
when given a study that contains 1000+ trials. We published
`optuna-fast-fanova <https://github.com/optuna/optuna-fast-fanova>`_ library,
`optuna-fast-fanova <https://github.com/optuna/optuna-fast-fanova>`__ library,
that is a Cython accelerated fANOVA implementation.
By using it, you can get hyperparameter importances within a few seconds.
If ``n_trials`` is more than 10000, the Cython implementation takes more than
Expand Down
6 changes: 3 additions & 3 deletions optuna/importance/_fanova/_evaluator.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ class FanovaImportanceEvaluator(BaseImportanceEvaluator):
Implements the fANOVA hyperparameter importance evaluation algorithm in
`An Efficient Approach for Assessing Hyperparameter Importance
<http://proceedings.mlr.press/v32/hutter14.html>`_.
<http://proceedings.mlr.press/v32/hutter14.html>`__.
fANOVA fits a random forest regression model that predicts the objective values
of :class:`~optuna.trial.TrialState.COMPLETE` trials given their parameter configurations.
Expand All @@ -33,13 +33,13 @@ class FanovaImportanceEvaluator(BaseImportanceEvaluator):
.. note::
This class takes over 1 minute when given a study that contains 1000+ trials.
We published `optuna-fast-fanova <https://github.com/optuna/optuna-fast-fanova>`_ library,
We published `optuna-fast-fanova <https://github.com/optuna/optuna-fast-fanova>`__ library,
that is a Cython accelerated fANOVA implementation. By using it, you can get hyperparameter
importances within a few seconds.
.. note::
Requires the `sklearn <https://github.com/scikit-learn/scikit-learn>`_ Python package.
Requires the `sklearn <https://github.com/scikit-learn/scikit-learn>`__ Python package.
.. note::
Expand Down
4 changes: 2 additions & 2 deletions optuna/importance/_mean_decrease_impurity.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,9 +31,9 @@ class MeanDecreaseImpurityImportanceEvaluator(BaseImportanceEvaluator):
.. note::
This evaluator requires the `sklearn <https://scikit-learn.org/stable/>`_ Python package
This evaluator requires the `sklearn <https://scikit-learn.org/stable/>`__ Python package
and is based on `sklearn.ensemble.RandomForestClassifier.feature_importances_
<https://scikit-learn.org/stable/modules/generated/sklearn.ensemble.RandomForestClassifier.html#sklearn.ensemble.RandomForestClassifier.feature_importances_>`_.
<https://scikit-learn.org/stable/modules/generated/sklearn.ensemble.RandomForestClassifier.html#sklearn.ensemble.RandomForestClassifier.feature_importances_>`__.
Args:
n_trees:
Expand Down
4 changes: 2 additions & 2 deletions optuna/importance/_ped_anova/evaluator.py
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ class PedAnovaImportanceEvaluator(BaseImportanceEvaluator):
For further information about PED-ANOVA algorithm, please refer to the following paper:
- `PED-ANOVA: Efficiently Quantifying Hyperparameter Importance in Arbitrary Subspaces
<https://arxiv.org/abs/2304.10255>`_
<https://arxiv.org/abs/2304.10255>`__
.. note::
Expand All @@ -81,7 +81,7 @@ class PedAnovaImportanceEvaluator(BaseImportanceEvaluator):
.. note::
Please refer to `the original work <https://github.com/nabenabe0928/local-anova>`_.
Please refer to `the original work <https://github.com/nabenabe0928/local-anova>`__.
Args:
baseline_quantile:
Expand Down
8 changes: 4 additions & 4 deletions optuna/pruners/_hyperband.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,15 +21,15 @@ class HyperbandPruner(BasePruner):
:math:`n` as its hyperparameter. For a given finite budget :math:`B`,
all the configurations have the resources of :math:`B \\over n` on average.
As you can see, there will be a trade-off of :math:`B` and :math:`B \\over n`.
`Hyperband <http://www.jmlr.org/papers/volume18/16-558/16-558.pdf>`_ attacks this trade-off
`Hyperband <http://www.jmlr.org/papers/volume18/16-558/16-558.pdf>`__ attacks this trade-off
by trying different :math:`n` values for a fixed budget.
.. note::
* In the Hyperband paper, the counterpart of :class:`~optuna.samplers.RandomSampler`
is used.
* Optuna uses :class:`~optuna.samplers.TPESampler` by default.
* `The benchmark result
<https://github.com/optuna/optuna/pull/828#issuecomment-575457360>`_
<https://github.com/optuna/optuna/pull/828#issuecomment-575457360>`__
shows that :class:`optuna.pruners.HyperbandPruner` supports both samplers.
.. note::
Expand Down Expand Up @@ -58,7 +58,7 @@ class HyperbandPruner(BasePruner):
(\\frac{\\texttt{max}\\_\\texttt{resource}}{\\texttt{min}\\_\\texttt{resource}})) + 1`.
Please set ``reduction_factor`` so that the number of brackets is not too large (about 4 –
6 in most use cases). Please see Section 3.6 of the `original paper
<http://www.jmlr.org/papers/volume18/16-558/16-558.pdf>`_ for the detail.
<http://www.jmlr.org/papers/volume18/16-558/16-558.pdf>`__ for the detail.
Example:
Expand Down Expand Up @@ -235,7 +235,7 @@ def _get_bracket_id(
"""Compute the index of bracket for a trial of ``trial_number``.
The index of a bracket is noted as :math:`s` in
`Hyperband paper <http://www.jmlr.org/papers/volume18/16-558/16-558.pdf>`_.
`Hyperband paper <http://www.jmlr.org/papers/volume18/16-558/16-558.pdf>`__.
"""

if len(self._pruners) == 0:
Expand Down
14 changes: 7 additions & 7 deletions optuna/pruners/_successive_halving.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,18 +11,18 @@
class SuccessiveHalvingPruner(BasePruner):
"""Pruner using Asynchronous Successive Halving Algorithm.
`Successive Halving <https://proceedings.mlr.press/v51/jamieson16.html>`_ is a bandit-based
`Successive Halving <https://proceedings.mlr.press/v51/jamieson16.html>`__ is a bandit-based
algorithm to identify the best one among multiple configurations. This class implements an
asynchronous version of Successive Halving. Please refer to the paper of
`Asynchronous Successive Halving <https://proceedings.mlsys.org/paper_files/paper/2020/file/
a06f20b349c6cf09a6b171c71b88bbfc-Paper.pdf>`_ for detailed descriptions.
a06f20b349c6cf09a6b171c71b88bbfc-Paper.pdf>`__ for detailed descriptions.
Note that, this class does not take care of the parameter for the maximum
resource, referred to as :math:`R` in the paper. The maximum resource allocated to a trial is
typically limited inside the objective function (e.g., ``step`` number in `simple_pruning.py
<https://github.com/optuna/optuna-examples/blob/main/simple_pruning.py>`_,
<https://github.com/optuna/optuna-examples/blob/main/simple_pruning.py>`__,
``EPOCH`` number in `chainer_integration.py
<https://github.com/optuna/optuna-examples/tree/main/chainer/chainer_integration.py#L73>`_).
<https://github.com/optuna/optuna-examples/tree/main/chainer/chainer_integration.py#L73>`__).
.. seealso::
Please refer to :meth:`~optuna.trial.Trial.report`.
Expand Down Expand Up @@ -71,7 +71,7 @@ def objective(trial):
min_resource:
A parameter for specifying the minimum resource allocated to a trial
(in the `paper <https://proceedings.mlsys.org/paper_files/paper/2020/file/
a06f20b349c6cf09a6b171c71b88bbfc-Paper.pdf>`_ this parameter is referred to as
a06f20b349c6cf09a6b171c71b88bbfc-Paper.pdf>`__ this parameter is referred to as
:math:`r`).
This parameter defaults to 'auto' where the value is determined based on a heuristic
that looks at the number of required steps for the first trial to complete.
Expand All @@ -98,14 +98,14 @@ def objective(trial):
reduction_factor:
A parameter for specifying reduction factor of promotable trials
(in the `paper <https://proceedings.mlsys.org/paper_files/paper/2020/file/
a06f20b349c6cf09a6b171c71b88bbfc-Paper.pdf>`_ this parameter is
a06f20b349c6cf09a6b171c71b88bbfc-Paper.pdf>`__ this parameter is
referred to as :math:`\\eta`). At the completion point of each rung,
about :math:`{1 \\over \\mathsf{reduction}\\_\\mathsf{factor}}`
trials will be promoted.
min_early_stopping_rate:
A parameter for specifying the minimum early-stopping rate
(in the `paper <https://proceedings.mlsys.org/paper_files/paper/2020/file/
a06f20b349c6cf09a6b171c71b88bbfc-Paper.pdf>`_ this parameter is
a06f20b349c6cf09a6b171c71b88bbfc-Paper.pdf>`__ this parameter is
referred to as :math:`s`).
bootstrap_count:
Minimum number of trials that need to complete a rung before any trial
Expand Down
2 changes: 1 addition & 1 deletion optuna/pruners/_wilcoxon.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@

@experimental_class("3.6.0")
class WilcoxonPruner(BasePruner):
"""Pruner based on the `Wilcoxon signed-rank test <https://en.wikipedia.org/w/index.php?title=Wilcoxon_signed-rank_test&oldid=1195011212>`_.
"""Pruner based on the `Wilcoxon signed-rank test <https://en.wikipedia.org/w/index.php?title=Wilcoxon_signed-rank_test&oldid=1195011212>`__.
This pruner performs the Wilcoxon signed-rank test between the current trial and the current best trial,
and stops whenever the pruner is sure up to a given p-value that the current trial is worse than the best one.
Expand Down
20 changes: 10 additions & 10 deletions optuna/samplers/_cmaes.py
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ class _CmaEsAttrKeys(NamedTuple):


class CmaEsSampler(BaseSampler):
"""A sampler using `cmaes <https://github.com/CyberAgentAILab/cmaes>`_ as the backend.
"""A sampler using `cmaes <https://github.com/CyberAgentAILab/cmaes>`__ as the backend.
Example:
Expand Down Expand Up @@ -95,27 +95,27 @@ def objective(trial):
For further information about CMA-ES algorithm, please refer to the following papers:
- `N. Hansen, The CMA Evolution Strategy: A Tutorial. arXiv:1604.00772, 2016.
<https://arxiv.org/abs/1604.00772>`_
<https://arxiv.org/abs/1604.00772>`__
- `A. Auger and N. Hansen. A restart CMA evolution strategy with increasing population
size. In Proceedings of the IEEE Congress on Evolutionary Computation (CEC 2005),
pages 1769–1776. IEEE Press, 2005. <https://doi.org/10.1109/CEC.2005.1554902>`_
pages 1769–1776. IEEE Press, 2005. <https://doi.org/10.1109/CEC.2005.1554902>`__
- `N. Hansen. Benchmarking a BI-Population CMA-ES on the BBOB-2009 Function Testbed.
GECCO Workshop, 2009. <https://doi.org/10.1145/1570256.1570333>`_
GECCO Workshop, 2009. <https://doi.org/10.1145/1570256.1570333>`__
- `Raymond Ros, Nikolaus Hansen. A Simple Modification in CMA-ES Achieving Linear Time and
Space Complexity. 10th International Conference on Parallel Problem Solving From Nature,
Sep 2008, Dortmund, Germany. inria-00287367. <https://doi.org/10.1007/978-3-540-87700-4_30>`_
Sep 2008, Dortmund, Germany. inria-00287367. <https://doi.org/10.1007/978-3-540-87700-4_30>`__
- `Masahiro Nomura, Shuhei Watanabe, Youhei Akimoto, Yoshihiko Ozaki, Masaki Onishi.
Warm Starting CMA-ES for Hyperparameter Optimization, AAAI. 2021.
<https://doi.org/10.1609/aaai.v35i10.17109>`_
<https://doi.org/10.1609/aaai.v35i10.17109>`__
- `R. Hamano, S. Saito, M. Nomura, S. Shirakawa. CMA-ES with Margin: Lower-Bounding Marginal
Probability for Mixed-Integer Black-Box Optimization, GECCO. 2022.
<https://doi.org/10.1145/3512290.3528827>`_
<https://doi.org/10.1145/3512290.3528827>`__
- `M. Nomura, Y. Akimoto, I. Ono. CMA-ES with Learning Rate Adaptation: Can CMA-ES with
Default Population Size Solve Multimodal and Noisy Problems?, GECCO. 2023.
<https://doi.org/10.1145/3583131.3590358>`_
<https://doi.org/10.1145/3583131.3590358>`__
.. seealso::
You can also use `optuna_integration.PyCmaSampler <https://optuna-integration.readthedocs.io/en/stable/reference/generated/optuna_integration.PyCmaSampler.html#optuna_integration.PyCmaSampler>`_ which is a sampler using cma
You can also use `optuna_integration.PyCmaSampler <https://optuna-integration.readthedocs.io/en/stable/reference/generated/optuna_integration.PyCmaSampler.html#optuna_integration.PyCmaSampler>`__ which is a sampler using cma
library as the backend.
Args:
Expand Down Expand Up @@ -196,7 +196,7 @@ def objective(trial):
:class:`~optuna.pruners.MedianPruner` is used. On the other hand, it is suggested
to set this flag :obj:`True` when the :class:`~optuna.pruners.HyperbandPruner` is
used. Please see `the benchmark result
<https://github.com/optuna/optuna/pull/1229>`_ for the details.
<https://github.com/optuna/optuna/pull/1229>`__ for the details.
use_separable_cma:
If this is :obj:`True`, the covariance matrix is constrained to be diagonal.
Expand Down
4 changes: 2 additions & 2 deletions optuna/samplers/_nsgaiii/_sampler.py
Original file line number Diff line number Diff line change
Expand Up @@ -47,11 +47,11 @@ class NSGAIIISampler(BaseSampler):
- `An Evolutionary Many-Objective Optimization Algorithm Using Reference-Point-Based
Nondominated Sorting Approach, Part I: Solving Problems With Box Constraints
<https://doi.org/10.1109/TEVC.2013.2281535>`_
<https://doi.org/10.1109/TEVC.2013.2281535>`__
- `An Evolutionary Many-Objective Optimization Algorithm Using Reference-Point-Based
Nondominated Sorting Approach, Part II: Handling Constraints and Extending to an Adaptive
Approach
<https://doi.org/10.1109/TEVC.2013.2281534>`_
<https://doi.org/10.1109/TEVC.2013.2281534>`__
Args:
reference_points:
Expand Down
4 changes: 2 additions & 2 deletions optuna/samplers/_qmc.py
Original file line number Diff line number Diff line change
Expand Up @@ -42,11 +42,11 @@ class QMCSampler(BaseSampler):
- `Bergstra, James, and Yoshua Bengio. Random search for hyper-parameter optimization.
Journal of machine learning research 13.2, 2012.
<https://jmlr.org/papers/v13/bergstra12a.html>`_
<https://jmlr.org/papers/v13/bergstra12a.html>`__
We use the QMC implementations in Scipy. For the details of the QMC algorithm,
see the Scipy API references on `scipy.stats.qmc
<https://scipy.github.io/devdocs/reference/stats.qmc.html>`_.
<https://scipy.github.io/devdocs/reference/stats.qmc.html>`__.
.. note:
If your search space contains categorical parameters, it samples the categorical
Expand Down
22 changes: 11 additions & 11 deletions optuna/samplers/_tpe/sampler.py
Original file line number Diff line number Diff line change
Expand Up @@ -73,17 +73,17 @@ class TPESampler(BaseSampler):
For further information about TPE algorithm, please refer to the following papers:
- `Algorithms for Hyper-Parameter Optimization
<https://papers.nips.cc/paper/4443-algorithms-for-hyper-parameter-optimization.pdf>`_
<https://papers.nips.cc/paper/4443-algorithms-for-hyper-parameter-optimization.pdf>`__
- `Making a Science of Model Search: Hyperparameter Optimization in Hundreds of
Dimensions for Vision Architectures <http://proceedings.mlr.press/v28/bergstra13.pdf>`_
Dimensions for Vision Architectures <http://proceedings.mlr.press/v28/bergstra13.pdf>`__
- `Tree-Structured Parzen Estimator: Understanding Its Algorithm Components and Their Roles for
Better Empirical Performance <https://arxiv.org/abs/2304.11127>`_
Better Empirical Performance <https://arxiv.org/abs/2304.11127>`__
For multi-objective TPE (MOTPE), please refer to the following papers:
- `Multiobjective Tree-Structured Parzen Estimator for Computationally Expensive Optimization
Problems <https://doi.org/10.1145/3377930.3389817>`_
- `Multiobjective Tree-Structured Parzen Estimator <https://doi.org/10.1613/jair.1.13188>`_
Problems <https://doi.org/10.1145/3377930.3389817>`__
- `Multiobjective Tree-Structured Parzen Estimator <https://doi.org/10.1613/jair.1.13188>`__
Example:
An example of a single-objective optimization is as follows:
Expand Down Expand Up @@ -154,23 +154,23 @@ def objective(trial):
weights:
A function that takes the number of finished trials and returns a weight for them.
See `Making a Science of Model Search: Hyperparameter Optimization in Hundreds of
Dimensions for Vision Architectures <http://proceedings.mlr.press/v28/bergstra13.pdf>`_
for more details.
Dimensions for Vision Architectures
<http://proceedings.mlr.press/v28/bergstra13.pdf>`__ for more details.
.. note::
In the multi-objective case, this argument is only used to compute the weights of
bad trials, i.e., trials to construct `g(x)` in the `paper
<https://papers.nips.cc/paper/4443-algorithms-for-hyper-parameter-optimization.pdf>`_
<https://papers.nips.cc/paper/4443-algorithms-for-hyper-parameter-optimization.pdf>`__
). The weights of good trials, i.e., trials to construct `l(x)`, are computed by a
rule based on the hypervolume contribution proposed in the `paper of MOTPE
<https://doi.org/10.1613/jair.1.13188>`_.
<https://doi.org/10.1613/jair.1.13188>`__.
seed:
Seed for random number generator.
multivariate:
If this is :obj:`True`, the multivariate TPE is used when suggesting parameters.
The multivariate TPE is reported to outperform the independent TPE. See `BOHB: Robust
and Efficient Hyperparameter Optimization at Scale
<http://proceedings.mlr.press/v80/falkner18a.html>`_ for more details.
<http://proceedings.mlr.press/v80/falkner18a.html>`__ for more details.
.. note::
Added in v2.2.0 as an experimental feature. The interface may change in newer
Expand Down Expand Up @@ -547,7 +547,7 @@ def hyperopt_parameters() -> dict[str, Any]:
Example:
Create a :class:`~optuna.samplers.TPESampler` instance with the default
parameters of `hyperopt <https://github.com/hyperopt/hyperopt/tree/0.1.2>`_.
parameters of `hyperopt <https://github.com/hyperopt/hyperopt/tree/0.1.2>`__.
.. testcode::
Expand Down
2 changes: 1 addition & 1 deletion optuna/samplers/nsgaii/_crossovers/_blxalpha.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ class BLXAlphaCrossover(BaseCrossover):
- `Eshelman, L. and J. D. Schaffer.
Real-Coded Genetic Algorithms and Interval-Schemata. FOGA (1992).
<https://doi.org/10.1016/B978-0-08-094832-4.50018-0>`_
<https://doi.org/10.1016/B978-0-08-094832-4.50018-0>`__
Args:
alpha:
Expand Down
2 changes: 1 addition & 1 deletion optuna/samplers/nsgaii/_crossovers/_sbx.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ class SBXCrossover(BaseCrossover):
- `Deb, K. and R. Agrawal.
“Simulated Binary Crossover for Continuous Search Space.”
Complex Syst. 9 (1995): n. pag.
<https://www.complex-systems.com/abstracts/v09_i02_a02/>`_
<https://www.complex-systems.com/abstracts/v09_i02_a02/>`__
Args:
eta:
Expand Down
2 changes: 1 addition & 1 deletion optuna/samplers/nsgaii/_crossovers/_spx.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ class SPXCrossover(BaseCrossover):
David E. Goldberg and Kumara Sastry and Kumara Sastry
Progress Toward Linkage Learning in Real-Coded GAs with Simplex Crossover.
IlliGAL Report. 2000.
<https://www.researchgate.net/publication/2388486_Progress_Toward_Linkage_Learning_in_Real-Coded_GAs_with_Simplex_Crossover>`_
<https://www.researchgate.net/publication/2388486_Progress_Toward_Linkage_Learning_in_Real-Coded_GAs_with_Simplex_Crossover>`__
Args:
epsilon:
Expand Down
2 changes: 1 addition & 1 deletion optuna/samplers/nsgaii/_crossovers/_undx.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ class UNDXCrossover(BaseCrossover):
for real-coded genetic algorithms,
Proceedings of the 1999 Congress on Evolutionary Computation-CEC99
(Cat. No. 99TH8406), 1999, pp. 1581-1588 Vol. 2
<https://doi.org/10.1109/CEC.1999.782672>`_
<https://doi.org/10.1109/CEC.1999.782672>`__
Args:
sigma_xi:
Expand Down
2 changes: 1 addition & 1 deletion optuna/samplers/nsgaii/_crossovers/_uniform.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ class UniformCrossover(BaseCrossover):
- `Gilbert Syswerda. 1989. Uniform Crossover in Genetic Algorithms.
In Proceedings of the 3rd International Conference on Genetic Algorithms.
Morgan Kaufmann Publishers Inc., San Francisco, CA, USA, 2-9.
<https://www.researchgate.net/publication/201976488_Uniform_Crossover_in_Genetic_Algorithms>`_
<https://www.researchgate.net/publication/201976488_Uniform_Crossover_in_Genetic_Algorithms>`__
Args:
swapping_prob:
Expand Down
Loading

0 comments on commit dd9df19

Please sign in to comment.