scipy.special.kl_div#
- scipy.special.kl_div(x, y, out=None) = <ufunc 'kl_div'>#
Elementweise Funktion zur Berechnung der Kullback-Leibler-Divergenz.
\[\begin{split}\mathrm{kl\_div}(x, y) = \begin{cases} x \log(x / y) - x + y & x > 0, y > 0 \\ y & x = 0, y \ge 0 \\ \infty & \text{sonst} \end{cases}\end{split}\]- Parameter:
- x, yarray_like
Reelle Argumente
- outndarray, optional
Optionales Ausgabe-Array für die Funktionsergebnisse
- Rückgabe:
- skalar oder ndarray
Werte der Kullback-Leibler-Divergenz.
Siehe auch
Hinweise
Hinzugefügt in Version 0.15.0.
Diese Funktion ist nicht negativ und in x und y gemeinsam konvex.
Der Ursprung dieser Funktion liegt in der konvexen Optimierung; siehe [1] für Details. Deshalb enthält die Funktion die zusätzlichen Terme \(-x + y\) im Vergleich zu dem, was man von der Kullback-Leibler-Divergenz erwarten würde. Eine Version der Funktion ohne die zusätzlichen Terme finden Sie unter
rel_entr.Referenzen
[1]Boyd, Stephen und Lieven Vandenberghe. *Convex optimization*. Cambridge University Press, 2004. DOI:https://doi.org/10.1017/CBO9780511804441