dodiscover.ci.kernel_utils.von_neumann_divergence#
- dodiscover.ci.kernel_utils.von_neumann_divergence(A, B)[source]#
Compute Von Neumann divergence between two PSD matrices.
- Parameters:
- Aarray_like of shape (n_features, n_features)
The first PSD matrix.
- Barray_like of shape (n_features, n_features)
The second PSD matrix.
- Returns:
- div
float
The divergence value.
- div
Notes
The Von Neumann divergence, or what is known as the Bregman divergence in [1] is computed as follows with \(D(A || B) = Tr(A (log(A) - log(B)) - A + B)\).