Ответ 1
Вот несколько ссылок, которые я представил как часть ответа здесь. Я думаю, что они решают проблему, которую вы пытаетесь решить:
- примечания для реализации в библиотеке Shogun
- Эрленд Ауне, Даниэль П. Симпсон: оценка параметров в высокоразмерных гауссовских распределениях, в частности раздел 2.1 (arxiv: 1105.5256)
- Ilse C.F. Ipsen, Dean J. Lee: Определяющие аппроксимации (arxiv: 1105.0437)
- Арнольд Реускен: Приближение детерминанта больших разреженных симметричных положительно определенных матриц (arxiv: hep-lat/0008007)
Цитата из примечаний по сёгуну:
Обычная методика вычисления логарифминантного члена в выражении правдоподобия опирается на факторизацию Cholesky матрицы, т.е. Σ = LLT, (L - нижний треугольный фактор Холецкого), а затем используя диагональные элементы фактора для вычисления журнал (Det (Σ)) = 2Σni = 1log (ЛИИ). Однако для разреженных матриц, как правило, являются ковариационные матрицы, факторы Холецкого часто страдают от феноменов заполнения - они оказываются не такими скудными. Поэтому для больших размеров эта техника становится невозможной из-за огромной потребности в памяти для хранения всех этих нерелевантных недиагональных коэффи- циентов фактора. В то время как были разработаны методы упорядочения, чтобы предварительно переставить строки и столбцы, чтобы уменьшить заполнение, например. ориентировочная минимальная степень (AMD), эти методы во многом зависят от шаблона разреженности и, следовательно, не гарантируют лучшего результата.
Недавние исследования показывают, что, используя ряд методов комплексного анализа, числовую линейную алгебру и жадную градиентную окраску, мы можем, однако, приблизить логарифмический определитель до произвольной точности [Aune et. al., 2012]. Основной трюк лежит в наблюдении, что мы можем написать log (det (Σ)) как след (log (Σ)), где log (Σ) - матричный логарифм.