Skip to content

Commit

Permalink
Deployed 4a07c980c8 to dev with MkDocs 1.6.0 and mike 2.1.1
Browse files Browse the repository at this point in the history
  • Loading branch information
github-actions committed Aug 1, 2024
1 parent 5612b4a commit b571d1c
Show file tree
Hide file tree
Showing 9 changed files with 597 additions and 600 deletions.
68 changes: 20 additions & 48 deletions dev/api/cluster/ODAC/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -3845,49 +3845,9 @@

<h1 id="odac">ODAC<a class="headerlink" href="#odac" title="Permanent link">&para;</a></h1>
<p>The Online Divisive-Agglomerative Clustering (ODAC)<sup id="fnref:1"><a class="footnote-ref" href="#fn:1">1</a></sup> aims at continuously maintaining a hierarchical cluster structure from evolving time series data streams.</p>
<p>ODAC continuosly monitors the evolution of clusters' diameters and split or merge them by gathering more data or reacting to concept drift. Such changes are supported by a confidence level that comes from the Hoeffding bound. ODAC relies on keeping the linear correlation between series to evaluate whether or not the time series hierarchy has changed. </p>
<p>The distance between time-series a and b is given by <code>rnomc(a, b) = sqrt((1 - corr(a, b)) / 2)</code>, where <code>corr(a, b)</code> is the Pearson Correlation coefficient. </p>
<p>In the following topics, ε stands for the Hoeffding bound and considers clusters cj with descendants ck and cs. </p>
<p><strong>The Merge Operator</strong> </p>
<p>The Splitting Criteria guarantees that cluster's diameters monotonically decrease. </p>
<ul>
<li>
<p>If diameter (ck) - diameter (cj) &gt; ε OR diameter (cs) - diameter (cj ) &gt; ε:</p>
<ul>
<li>There is a change in the correlation structure, so merge clusters ck and cs into cj. </li>
</ul>
</li>
</ul>
<p><strong>Splitting Criteria</strong> </p>
<p>Consider: </p>
<ul>
<li>
<p>d0: the minimum distance;</p>
</li>
<li>
<p>d1: the farthest distance;</p>
</li>
<li>
<p>d_avg: the average distance;</p>
</li>
<li>
<p>d2: the second farthest distance.</p>
</li>
</ul>
<p>Then: </p>
<ul>
<li>
<p>if d1 - d2 &gt; εk or t &gt; εk then</p>
<ul>
<li>
<p>if (d1 - d0)|(d1 - d_avg) - (d_avg - d0) &gt; εk then</p>
<ul>
<li>Split the cluster</li>
</ul>
</li>
</ul>
</li>
</ul>
<p>The distance between time-series a and b is given by <code>rnomc(a, b) = sqrt((1 - corr(a, b)) / 2)</code>, where <code>corr(a, b)</code> is the Pearson Correlation coefficient. If the cluster has only one time-series, the diameter is given by the time-series variance. The cluster's diameter is given by the largest distance between the cluster's time-series. </p>
<p>ODAC continuously monitors the evolution of diameters, only of the leaves, and splits or merges them by gathering more data or reacting to concept drift - a confidence level from the Hoeffding bound supports such changes. </p>
<p>So, the split operator, where the Hoeffding bound is applied, occurs when the difference between the largest distance (diameter) and the second largest difference is greater than a constant. Furthermore, the merge operator checks if one of the cluster's children has a diameter bigger than their parent - applying the Hoeffding bound again.</p>
<h2 id="parameters">Parameters<a class="headerlink" href="#parameters" title="Permanent link">&para;</a></h2>
<ul>
<li>
Expand Down Expand Up @@ -3934,16 +3894,16 @@ <h2 id="examples">Examples<a class="headerlink" href="#examples" title="Permanen
Structure changed at observation 200
Structure changed at observation 300
</code></pre></div></p>
<p><div class="language-python highlight"><pre><span></span><code><span class="nb">print</span><span class="p">(</span><span class="n">model</span><span class="o">.</span><span class="n">draw</span><span class="p">(</span><span class="n">n_decimal_places</span><span class="o">=</span><span class="mi">2</span><span class="p">))</span>
<p><div class="language-python highlight"><pre><span></span><code><span class="nb">print</span><span class="p">(</span><span class="n">model</span><span class="o">.</span><span class="n">render_ascii</span><span class="p">())</span>
</code></pre></div>
<div class="language-text highlight"><pre><span></span><code>ROOT d1=0.79 d2=0.76 [NOT ACTIVE]
├── CH1_LVL_1 d1=0.74 d2=0.72 [NOT ACTIVE]
│ ├── CH1_LVL_2 d1=&lt;Not calculated&gt; [3]
│ ├── CH1_LVL_2 d1=0.08 [3]
│ └── CH2_LVL_2 d1=0.73 [2, 4]
└── CH2_LVL_1 d1=0.81 d2=0.78 [NOT ACTIVE]
├── CH1_LVL_2 d1=0.73 d2=0.67 [NOT ACTIVE]
│ ├── CH1_LVL_3 d1=0.72 [0, 9]
│ └── CH2_LVL_3 d1=&lt;Not calculated&gt; [1]
│ └── CH2_LVL_3 d1=0.08 [1]
└── CH2_LVL_2 d1=0.74 d2=0.73 [NOT ACTIVE]
├── CH1_LVL_3 d1=0.71 [5, 6]
└── CH2_LVL_3 d1=0.71 [7, 8]
Expand All @@ -3969,9 +3929,11 @@ <h2 id="examples">Examples<a class="headerlink" href="#examples" title="Permanen
<h2 id="methods">Methods<a class="headerlink" href="#methods" title="Permanent link">&para;</a></h2>
<details class="- abstract">
<summary>draw</summary>
<p>Method to draw the hierarchical cluster's structure.</p>
<p>Method to draw the hierarchical cluster's structure as a Graphviz graph.</p>
<p><strong>Parameters</strong></p>
<ul>
<li><strong>max_depth</strong><em>'int | None'</em> — defaults to <code>None</code> </li>
<li><strong>show_clusters_info</strong><em>'list[typing.Hashable]'</em> — defaults to <code>['timeseries_names', 'd1', 'd2', 'e']</code> </li>
<li><strong>n_decimal_places</strong><em>'int'</em> — defaults to <code>2</code> </li>
</ul>
</details>
Expand All @@ -3994,11 +3956,21 @@ <h2 id="methods">Methods<a class="headerlink" href="#methods" title="Permanent l
</ul>
</details>
<p><span /></p>
<details class="- abstract">
<summary>render_ascii</summary>
<p>Method to render the hierarchical cluster's structure in text format.</p>
<p><strong>Parameters</strong></p>
<ul>
<li><strong>n_decimal_places</strong><em>'int'</em> — defaults to <code>2</code> </li>
</ul>
</details>
<p><span /></p>
<div class="footnote">
<hr />
<ol>
<li id="fn:1">
<p><a href="http://doi.org/10.1109/TKDE.2007.190727">Hierarchical clustering of time-series data streams.</a>&#160;<a class="footnote-backref" href="#fnref:1" title="Jump back to footnote 1 in the text">&#8617;</a></p>
<p>P. P. Rodrigues, J. Gama and J. Pedroso, "Hierarchical Clustering of Time-Series Data Streams" in IEEE Transactions
on Knowledge and Data Engineering, vol. 20, no. 5, pp. 615-627, May 2008, doi: 10.1109/TKDE.2007.190727.&#160;<a class="footnote-backref" href="#fnref:1" title="Jump back to footnote 1 in the text">&#8617;</a></p>
</li>
</ol>
</div>
Expand Down
2 changes: 1 addition & 1 deletion dev/benchmarks/Binary classification/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -39667,7 +39667,7 @@ <h2 id="environment">Environment<a class="headerlink" href="#environment" title=

Compiler : GCC 11.4.0
OS : Linux
Release : 6.5.0-1024-azure
Release : 6.5.0-1025-azure
Machine : x86_64
Processor : x86_64
CPU cores : 4
Expand Down
2 changes: 1 addition & 1 deletion dev/benchmarks/Multiclass classification/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -26472,7 +26472,7 @@ <h2 id="environment">Environment<a class="headerlink" href="#environment" title=

Compiler : GCC 11.4.0
OS : Linux
Release : 6.5.0-1024-azure
Release : 6.5.0-1025-azure
Machine : x86_64
Processor : x86_64
CPU cores : 4
Expand Down
2 changes: 1 addition & 1 deletion dev/benchmarks/Regression/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -22156,7 +22156,7 @@ <h2 id="environment">Environment<a class="headerlink" href="#environment" title=

Compiler : GCC 11.4.0
OS : Linux
Release : 6.5.0-1024-azure
Release : 6.5.0-1025-azure
Machine : x86_64
Processor : x86_64
CPU cores : 4
Expand Down
Binary file modified dev/parse/__pycache__/__main__.cpython-312.pyc
Binary file not shown.
25 changes: 25 additions & 0 deletions dev/releases/unreleased/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -964,6 +964,15 @@
</label>
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>

<li class="md-nav__item">
<a href="#cluster" class="md-nav__link">
<span class="md-ellipsis">
cluster
</span>
</a>

</li>

<li class="md-nav__item">
<a href="#tree" class="md-nav__link">
<span class="md-ellipsis">
Expand Down Expand Up @@ -1830,6 +1839,15 @@
</label>
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>

<li class="md-nav__item">
<a href="#cluster" class="md-nav__link">
<span class="md-ellipsis">
cluster
</span>
</a>

</li>

<li class="md-nav__item">
<a href="#tree" class="md-nav__link">
<span class="md-ellipsis">
Expand Down Expand Up @@ -1858,6 +1876,13 @@ <h1 id="unreleased">Unreleased<a class="headerlink" href="#unreleased" title="Pe
<ul>
<li>The units used in River have been corrected to be based on powers of 2 (KiB, MiB). This only changes the display, the behaviour is unchanged.</li>
</ul>
<h2 id="cluster">cluster<a class="headerlink" href="#cluster" title="Permanent link">&para;</a></h2>
<ul>
<li>Update the description of <a href="../../api/cluster/ODAC"><code>cluster.ODAC</code></a>.</li>
<li>Change <code>draw</code> in <a href="../../api/cluster/ODAC"><code>cluster.ODAC</code></a> to draw the hierarchical cluster's structure as a Graphviz graph.</li>
<li>Add <code>render_ascii</code> in <a href="../../api/cluster/ODAC"><code>cluster.ODAC</code></a> to render the hierarchical cluster's structure in text format.</li>
<li>Work with <a href="../../api/stats/Var"><code>stats.Var</code></a> in <a href="../../api/cluster/ODAC"><code>cluster.ODAC</code></a> when cluster has only one time series.</li>
</ul>
<h2 id="tree">tree<a class="headerlink" href="#tree" title="Permanent link">&para;</a></h2>
<ul>
<li>Instead of letting trees grow indefinitely, setting the <code>max_depth</code> parameter to <code>None</code> will stop the trees from growing when they reach the system recursion limit.</li>
Expand Down
2 changes: 1 addition & 1 deletion dev/search/search_index.json

Large diffs are not rendered by default.

Loading

0 comments on commit b571d1c

Please sign in to comment.