scipy.special.rel_entr#

scipy.special.rel_entr(x, y, out=None) = <ufunc 'rel_entr'>#

Elementweise Funktion zur Berechnung der relativen Entropie.

\[\begin{split}\mathrm{rel\_entr}(x, y) = \begin{cases} x \log(x / y) & x > 0, y > 0 \\ 0 & x = 0, y \ge 0 \\ \infty & \text{ansonsten} \end{cases}\end{split}\]
Parameter:
x, yarray_like

Eingabearrays

outndarray, optional

Optionales Ausgabe-Array für die Funktionsergebnisse

Rückgabe:
skalar oder ndarray

Relative Entropie der Eingaben

Hinweise

Hinzugefügt in Version 0.15.0.

Diese Funktion ist gemeinsam konvex in x und y.

Der Ursprung dieser Funktion liegt in der konvexen Programmierung; siehe [1]. Gegeben zwei diskrete Wahrscheinlichkeitsverteilungen \(p_1, \ldots, p_n\) und \(q_1, \ldots, q_n\), ist die Definition der relativen Entropie im Kontext der *Informationstheorie*

\[\sum_{i = 1}^n \mathrm{rel\_entr}(p_i, q_i).\]

Um die letztere Größe zu berechnen, verwenden Sie scipy.stats.entropy.

Siehe [2] für Details.

rel_entr hat experimentelle Unterstützung für Python Array API Standard-kompatible Backends zusätzlich zu NumPy. Bitte erwägen Sie, diese Funktionen zu testen, indem Sie eine Umgebungsvariable SCIPY_ARRAY_API=1 setzen und CuPy-, PyTorch-, JAX- oder Dask-Arrays als Array-Argumente bereitstellen. Die folgenden Kombinationen von Backend und Gerät (oder anderer Fähigkeit) werden unterstützt.

Bibliothek

CPU

GPU

NumPy

n/a

CuPy

n/a

PyTorch

JAX

Dask

n/a

Siehe Unterstützung für den Array API Standard für weitere Informationen.

Referenzen

[1]

Boyd, Stephen und Lieven Vandenberghe. *Convex optimization*. Cambridge University Press, 2004. DOI:https://doi.org/10.1017/CBO9780511804441