|
540 | 540 | </span> |
541 | 541 | </a> |
542 | 542 |
|
543 | | - <nav class="md-nav" aria-label="Properties"> |
544 | | - <ul class="md-nav__list"> |
| 543 | +</li> |
545 | 544 |
|
546 | 545 | <li class="md-nav__item"> |
547 | | - <a href="#best_params_" class="md-nav__link"> |
| 546 | + <a href="#minimal-example" class="md-nav__link"> |
548 | 547 | <span class="md-ellipsis"> |
549 | | - best_params_ |
| 548 | + Minimal Example |
550 | 549 | </span> |
551 | 550 | </a> |
552 | 551 |
|
553 | | -</li> |
554 | | - |
555 | | - </ul> |
556 | | - </nav> |
557 | | - |
558 | 552 | </li> |
559 | 553 |
|
560 | 554 | <li class="md-nav__item"> |
|
2020 | 2014 | </span> |
2021 | 2015 | </a> |
2022 | 2016 |
|
2023 | | - <nav class="md-nav" aria-label="Properties"> |
2024 | | - <ul class="md-nav__list"> |
| 2017 | +</li> |
2025 | 2018 |
|
2026 | 2019 | <li class="md-nav__item"> |
2027 | | - <a href="#best_params_" class="md-nav__link"> |
| 2020 | + <a href="#minimal-example" class="md-nav__link"> |
2028 | 2021 | <span class="md-ellipsis"> |
2029 | | - best_params_ |
| 2022 | + Minimal Example |
2030 | 2023 | </span> |
2031 | 2024 | </a> |
2032 | 2025 |
|
2033 | | -</li> |
2034 | | - |
2035 | | - </ul> |
2036 | | - </nav> |
2037 | | - |
2038 | 2026 | </li> |
2039 | 2027 |
|
2040 | 2028 | <li class="md-nav__item"> |
@@ -2071,30 +2059,46 @@ <h1>Base Optimizer</h1> |
2071 | 2059 | <h2 id="baseoptimizer">BaseOptimizer</h2> |
2072 | 2060 | <p>The <code>BaseOptimizer</code> class is the foundation for all optimization algorithms in Hyperactive v5.</p> |
2073 | 2061 | <h3 id="class-signature">Class Signature</h3> |
| 2062 | +<div class="highlight"><pre><span></span><code><a id="__codelineno-0-1" name="__codelineno-0-1" href="#__codelineno-0-1"></a><span class="k">class</span> <span class="nc">BaseOptimizer</span><span class="p">(</span><span class="n">BaseObject</span><span class="p">):</span> |
| 2063 | +<a id="__codelineno-0-2" name="__codelineno-0-2" href="#__codelineno-0-2"></a> <span class="k">def</span> <span class="nf">get_search_config</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="nb">dict</span><span class="p">:</span> <span class="o">...</span> |
| 2064 | +<a id="__codelineno-0-3" name="__codelineno-0-3" href="#__codelineno-0-3"></a> <span class="k">def</span> <span class="nf">get_experiment</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="s2">"BaseExperiment"</span><span class="p">:</span> <span class="o">...</span> |
| 2065 | +<a id="__codelineno-0-4" name="__codelineno-0-4" href="#__codelineno-0-4"></a> <span class="k">def</span> <span class="nf">solve</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="nb">dict</span><span class="p">:</span> <span class="o">...</span> |
| 2066 | +<a id="__codelineno-0-5" name="__codelineno-0-5" href="#__codelineno-0-5"></a> <span class="k">def</span> <span class="nf">_solve</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">experiment</span><span class="p">,</span> <span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span> <span class="o">-></span> <span class="nb">dict</span><span class="p">:</span> <span class="o">...</span> <span class="c1"># to override</span> |
| 2067 | +</code></pre></div> |
2074 | 2068 | <h3 id="key-methods">Key Methods</h3> |
2075 | 2069 | <h4 id="solve"><code>solve()</code></h4> |
2076 | | -<p>Run the optimization search process to maximize the experiment's score.</p> |
| 2070 | +<p>Run the optimization to maximize the experiment’s score (higher-is-better convention). Sets <code>best_params_</code> and may set additional attributes depending on the optimizer.</p> |
2077 | 2071 | <p><strong>Returns:</strong> |
2078 | | -- <code>best_params</code> (dict): The best parameters found during optimization</p> |
2079 | | -<p><strong>Example:</strong></p> |
| 2072 | +- <code>dict</code>: Best parameters found</p> |
2080 | 2073 | <h4 id="get_search_config"><code>get_search_config()</code></h4> |
2081 | | -<p>Get the search configuration parameters for the optimizer.</p> |
| 2074 | +<p>Returns the optimizer’s configuration, excluding the experiment object (useful to introspect/store settings).</p> |
2082 | 2075 | <p><strong>Returns:</strong> |
2083 | | -- <code>dict</code>: Configuration dictionary with optimizer-specific parameters</p> |
| 2076 | +- <code>dict</code>: Optimizer-specific parameters</p> |
2084 | 2077 | <h4 id="get_experiment"><code>get_experiment()</code></h4> |
2085 | | -<p>Get the associated experiment object.</p> |
| 2078 | +<p>Returns the associated experiment. If a plain callable was provided, it is wrapped as a <code>FunctionExperiment</code> automatically.</p> |
2086 | 2079 | <p><strong>Returns:</strong> |
2087 | | -- <code>BaseExperiment</code>: The experiment to optimize parameters for</p> |
| 2080 | +- <code>BaseExperiment</code>: Experiment to optimize</p> |
2088 | 2081 | <h3 id="properties">Properties</h3> |
2089 | | -<h4 id="best_params_"><code>best_params_</code></h4> |
2090 | | -<p>The best parameters found after calling <code>solve()</code>.</p> |
2091 | | -<p><strong>Type:</strong> <code>dict</code></p> |
| 2082 | +<ul> |
| 2083 | +<li><code>best_params_</code> (<code>dict</code>): Best parameters found (set by <code>solve()</code>)</li> |
| 2084 | +<li><code>best_score_</code> (<code>float</code>, optional): Signed score per higher-is-better convention (set by some optimizers, e.g., <code>GridSearchSk</code>, <code>RandomSearchSk</code>)</li> |
| 2085 | +<li><code>best_index_</code> (<code>int</code>, optional): Index of the best candidate in the evaluated sequence (set by some optimizers)</li> |
| 2086 | +</ul> |
| 2087 | +<h3 id="minimal-example">Minimal Example</h3> |
| 2088 | +<div class="highlight"><pre><span></span><code><a id="__codelineno-1-1" name="__codelineno-1-1" href="#__codelineno-1-1"></a><span class="kn">from</span> <span class="nn">hyperactive.experiment.integrations</span> <span class="kn">import</span> <span class="n">SklearnCvExperiment</span> |
| 2089 | +<a id="__codelineno-1-2" name="__codelineno-1-2" href="#__codelineno-1-2"></a><span class="kn">from</span> <span class="nn">hyperactive.opt</span> <span class="kn">import</span> <span class="n">GridSearchSk</span> |
| 2090 | +<a id="__codelineno-1-3" name="__codelineno-1-3" href="#__codelineno-1-3"></a> |
| 2091 | +<a id="__codelineno-1-4" name="__codelineno-1-4" href="#__codelineno-1-4"></a><span class="n">exp</span> <span class="o">=</span> <span class="n">SklearnCvExperiment</span><span class="p">(</span><span class="o">...</span><span class="p">)</span> |
| 2092 | +<a id="__codelineno-1-5" name="__codelineno-1-5" href="#__codelineno-1-5"></a><span class="n">opt</span> <span class="o">=</span> <span class="n">GridSearchSk</span><span class="p">(</span><span class="n">param_grid</span><span class="o">=</span><span class="p">{</span><span class="s2">"C"</span><span class="p">:</span> <span class="p">[</span><span class="mf">0.1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">10</span><span class="p">]},</span> <span class="n">experiment</span><span class="o">=</span><span class="n">exp</span><span class="p">)</span> |
| 2093 | +<a id="__codelineno-1-6" name="__codelineno-1-6" href="#__codelineno-1-6"></a><span class="n">best</span> <span class="o">=</span> <span class="n">opt</span><span class="o">.</span><span class="n">solve</span><span class="p">()</span> |
| 2094 | +</code></pre></div> |
2092 | 2095 | <h3 id="tags-system">Tags System</h3> |
2093 | | -<p>BaseOptimizer uses a comprehensive tag system to provide metadata about algorithm properties:</p> |
2094 | | -<p><strong>Tag Meanings:</strong> |
2095 | | -- <strong>local_vs_global</strong>: Whether the algorithm focuses on local or global search |
2096 | | -- <strong>explore_vs_exploit</strong>: Balance between exploration and exploitation |
2097 | | -- <strong>compute</strong>: Computational cost category</p> |
| 2096 | +<p>BaseOptimizer uses tags to describe algorithm properties:</p> |
| 2097 | +<ul> |
| 2098 | +<li><code>info:local_vs_global</code>: local | mixed | global</li> |
| 2099 | +<li><code>info:explore_vs_exploit</code>: explore | exploit | mixed</li> |
| 2100 | +<li><code>info:compute</code>: low | middle | high</li> |
| 2101 | +</ul> |
2098 | 2102 |
|
2099 | 2103 |
|
2100 | 2104 |
|
|
0 commit comments