快速计算行列式对数#
- sklearn.utils.extmath.fast_logdet(A)[source]#
计算方阵的行列式对数。
如果 det(A) 非负且定义良好,则返回方阵行列式的(自然)对数。如果行列式为零或负数,则返回 -Inf。
等效于:np.log(np.det(A)),但更健壮。
- 参数:
- Ashape 为 (n, n) 的 array_like
方阵。
- 返回:
- 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)