fast_logdet#

sklearn.utils.extmath.fast_logdet(A)[source]#

计算方阵行列式的对数。

如果方阵 A 的行列式 det(A) 非负且定义良好,则返回其(自然)对数。如果行列式为零或负数,则返回 -Inf。

等效于:np.log(np.det(A)) 但更鲁棒。

参数:
A形状为 (n, n) 的类数组

方阵。

返回:
logdet浮点数

当 det(A) 严格为正时,返回 log(det(A))。当 det(A) 非正或未定义时,返回 -inf。

另请参阅

numpy.linalg.slogdet

计算数组行列式的符号和(自然)对数。

示例

>>> import numpy as np
>>> from sklearn.utils.extmath import fast_logdet
>>> a = np.array([[5, 1], [2, 8]])
>>> fast_logdet(a)
np.float64(3.6375861597263857)