Для больших массивов при использовании numpy.linalg.det
может произойти переполнение / переполнение, или вы можете получить inf
или -inf
в качестве ответа.
Во многих из этих случаев вы можете использовать numpy.linalg.slogdet
( см. Документацию ), которая возвращает:
(sign, logdet)
, где sign
- знак, а logdet
- логарифм определителя, так что вы можете вычислить определитель det
, выполнив:
det = np.exp(logdet)