Skip to content

Commit f80a66e

Browse files
Deployed 1e0b451 with MkDocs version: 1.6.0
1 parent 02a0e50 commit f80a66e

6 files changed

Lines changed: 317 additions & 274 deletions

File tree

objects.inv

22 Bytes
Binary file not shown.

reference/spotpython/light/trainmodel/index.html

Lines changed: 31 additions & 127 deletions
Large diffs are not rendered by default.

reference/spotpython/utils/metrics/index.html

Lines changed: 139 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4666,6 +4666,15 @@
46664666
</span>
46674667
</a>
46684668

4669+
</li>
4670+
4671+
<li class="md-nav__item">
4672+
<a href="#spotpython.utils.metrics.calculate_xai_consistency" class="md-nav__link">
4673+
<span class="md-ellipsis">
4674+
calculate_xai_consistency
4675+
</span>
4676+
</a>
4677+
46694678
</li>
46704679

46714680
<li class="md-nav__item">
@@ -5192,6 +5201,15 @@
51925201
</span>
51935202
</a>
51945203

5204+
</li>
5205+
5206+
<li class="md-nav__item">
5207+
<a href="#spotpython.utils.metrics.calculate_xai_consistency" class="md-nav__link">
5208+
<span class="md-ellipsis">
5209+
calculate_xai_consistency
5210+
</span>
5211+
</a>
5212+
51955213
</li>
51965214

51975215
<li class="md-nav__item">
@@ -5432,6 +5450,127 @@ <h2 id="spotpython.utils.metrics.apk" class="doc doc-heading">
54325450
<div class="doc doc-object doc-function">
54335451

54345452

5453+
<h2 id="spotpython.utils.metrics.calculate_xai_consistency" class="doc doc-heading">
5454+
<code class="highlight language-python"><span class="n">calculate_xai_consistency</span><span class="p">(</span><span class="n">attributions</span><span class="p">)</span></code>
5455+
5456+
<a href="#spotpython.utils.metrics.calculate_xai_consistency" class="headerlink" title="Permanent link">&para;</a></h2>
5457+
5458+
5459+
<div class="doc doc-contents ">
5460+
5461+
<p>Calculates the consistency of XAI methods by computing the mean of the upper triangle
5462+
of the correlation matrix of the provided attributions.</p>
5463+
5464+
5465+
<p><span class="doc-section-title">Parameters:</span></p>
5466+
<table>
5467+
<thead>
5468+
<tr>
5469+
<th>Name</th>
5470+
<th>Type</th>
5471+
<th>Description</th>
5472+
<th>Default</th>
5473+
</tr>
5474+
</thead>
5475+
<tbody>
5476+
<tr class="doc-section-item">
5477+
<td><code>attributions</code></td>
5478+
<td>
5479+
<code><span title="numpy.ndarray">ndarray</span></code>
5480+
</td>
5481+
<td>
5482+
<div class="doc-md-description">
5483+
<p>Array of shape (n_methods, n_features) containing
5484+
the attributions from different XAI methods.</p>
5485+
</div>
5486+
</td>
5487+
<td>
5488+
<em>required</em>
5489+
</td>
5490+
</tr>
5491+
</tbody>
5492+
</table>
5493+
5494+
5495+
<p><span class="doc-section-title">Returns:</span></p>
5496+
<table>
5497+
<thead>
5498+
<tr>
5499+
<th>Name</th> <th>Type</th>
5500+
<th>Description</th>
5501+
</tr>
5502+
</thead>
5503+
<tbody>
5504+
<tr class="doc-section-item">
5505+
<td><code>float</code></td> <td>
5506+
</td>
5507+
<td>
5508+
<div class="doc-md-description">
5509+
<p>Mean value of the upper triangle of the correlation matrix.</p>
5510+
</div>
5511+
</td>
5512+
</tr>
5513+
</tbody>
5514+
</table>
5515+
5516+
<details class="quote">
5517+
<summary>Source code in <code>spotpython/utils/metrics.py</code></summary>
5518+
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">202</span>
5519+
<span class="normal">203</span>
5520+
<span class="normal">204</span>
5521+
<span class="normal">205</span>
5522+
<span class="normal">206</span>
5523+
<span class="normal">207</span>
5524+
<span class="normal">208</span>
5525+
<span class="normal">209</span>
5526+
<span class="normal">210</span>
5527+
<span class="normal">211</span>
5528+
<span class="normal">212</span>
5529+
<span class="normal">213</span>
5530+
<span class="normal">214</span>
5531+
<span class="normal">215</span>
5532+
<span class="normal">216</span>
5533+
<span class="normal">217</span>
5534+
<span class="normal">218</span>
5535+
<span class="normal">219</span>
5536+
<span class="normal">220</span>
5537+
<span class="normal">221</span>
5538+
<span class="normal">222</span>
5539+
<span class="normal">223</span>
5540+
<span class="normal">224</span>
5541+
<span class="normal">225</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">def</span> <span class="nf">calculate_xai_consistency</span><span class="p">(</span><span class="n">attributions</span><span class="p">):</span>
5542+
<span class="w"> </span><span class="sd">&quot;&quot;&quot;</span>
5543+
<span class="sd"> Calculates the consistency of XAI methods by computing the mean of the upper triangle</span>
5544+
<span class="sd"> of the correlation matrix of the provided attributions.</span>
5545+
5546+
<span class="sd"> Args:</span>
5547+
<span class="sd"> attributions (np.ndarray): Array of shape (n_methods, n_features) containing </span>
5548+
<span class="sd"> the attributions from different XAI methods.</span>
5549+
5550+
<span class="sd"> Returns:</span>
5551+
<span class="sd"> float: Mean value of the upper triangle of the correlation matrix.</span>
5552+
<span class="sd"> &quot;&quot;&quot;</span>
5553+
<span class="n">global_attr_np</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">array</span><span class="p">(</span><span class="n">attributions</span><span class="p">)</span>
5554+
<span class="n">corr_matrix</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">corrcoef</span><span class="p">(</span><span class="n">global_attr_np</span><span class="p">)</span>
5555+
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;Attribution Correlation Matrix:&quot;</span><span class="p">)</span>
5556+
<span class="nb">print</span><span class="p">(</span><span class="n">corr_matrix</span><span class="p">)</span>
5557+
5558+
<span class="c1"># Calculate the mean of the upper triangle of the correlation matrix</span>
5559+
<span class="n">upper_triangle_indices</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">triu_indices_from</span><span class="p">(</span><span class="n">corr_matrix</span><span class="p">,</span> <span class="n">k</span><span class="o">=</span><span class="mi">1</span><span class="p">)</span>
5560+
<span class="n">upper_triangle_values</span> <span class="o">=</span> <span class="n">corr_matrix</span><span class="p">[</span><span class="n">upper_triangle_indices</span><span class="p">]</span>
5561+
<span class="n">result_xai</span> <span class="o">=</span> <span class="n">upper_triangle_values</span><span class="o">.</span><span class="n">mean</span><span class="p">()</span>
5562+
<span class="nb">print</span><span class="p">(</span><span class="s2">&quot;XAI Consistency (mean of upper triangle of correlation matrix):&quot;</span><span class="p">)</span>
5563+
<span class="nb">print</span><span class="p">(</span><span class="n">result_xai</span><span class="p">)</span>
5564+
<span class="k">return</span> <span class="n">result_xai</span>
5565+
</code></pre></div></td></tr></table></div>
5566+
</details>
5567+
</div>
5568+
5569+
</div>
5570+
5571+
<div class="doc doc-object doc-function">
5572+
5573+
54355574
<h2 id="spotpython.utils.metrics.get_metric_sign" class="doc doc-heading">
54365575
<code class="highlight language-python"><span class="n">get_metric_sign</span><span class="p">(</span><span class="n">metric_name</span><span class="p">)</span></code>
54375576

search/search_index.json

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)