Включая зависимость от времени в гауссовской смешанной модели/модели ожидания-максимизации?

Я работаю над набором данных временных рядов, и поэтому, подбирая функцию GaussianMixture() из пакета scikit-learn, мне нужно сделать каждую функцию (отметку времени) зависимой. Однако я не нашел параметр для настройки ковариационной матрицы после изучения исходного кода.

С моими ограниченными статистическими знаниями мне любопытно, как я могу изменить ковариационную матрицу во время E-этапа, чтобы включить зависимость от времени в модель GMM. Большое тебе спасибо.

Вот исходный код: изменение, которое я хочу внести, находится в функции Assessment_gaussian_parameters() https://github.com/scikit-learn/scikit-learn/blob/7389dba/sklearn/mixture/gaussian_mixture.py#L435


person Cocoa Wang    schedule 18.02.2019    source источник
comment
Я не уверен, следует ли вам напрямую изменять исходный код sklearn. Это то, чего вы пытаетесь достичь? stats.stackexchange.com/questions/152002/< /а>   -  person darksky    schedule 18.02.2019
comment
Проблема та же, что и у меня, но вместо того, чтобы вводить свойство авторегрессии, я хотел бы сделать его явным в ковариационной матрице, другими словами, ковариационная матрица не должна быть диагональной, но я не уверен, как   -  person Cocoa Wang    schedule 18.02.2019
comment
Согласно их документации, GaussianMixture() имеет параметр с именем covariance_type , который принимает значения 'full' (default), 'tied', 'diag', and 'spherical'. Пройдите по ссылке, чтобы узнать больше.   -  person darksky    schedule 19.02.2019


Ответы (1)


С помощью darksky я узнал, что функция встроена с опцией ковариационной матрицы. Параметр covariance_type имеет 4 варианта: "полный" (каждый компонент имеет свою общую ковариационную матрицу), «связанный» (все компоненты имеют одну и ту же общую ковариационную матрицу), «диаг» (каждый компонент имеет свою диагональную ковариационную матрицу), «сферический» (каждый компонент имеет свою единственную дисперсионную матрицу). ).

В моем понимании тогда «сферический» используется для одновариантного набора данных, «диаг» используется для наборов данных с многовариантными, но независимыми функциями. Следовательно, следует использовать либо «полный», либо «привязанный», если они хотят предсказывать многовариантные и зависимые функции.

person Cocoa Wang    schedule 19.02.2019