Векторизованный код для ковариационной матрицы кросковариаций - PullRequest
0 голосов
/ 19 марта 2020

Введение

Я пытаюсь вычислить асимптотическую c ковариационную матрицу выборочных автоковариаций многомерных временных рядов. Выводы были показаны Р. Роем в Biometrika Vol 76 Nº 4 (1989).

Постановка задачи

На практике в вычислениях используется последовательность K + 1 * Матрицы 1009 * d по d (автоковариация), собранные в трехмерном тензоре G . Учитывая G (:,:, u) мы можем определить G (:,:, - u) = транспонировать ( G ( :,:, и)).

Я хочу построить (Sd ^ 2) с помощью (Sd ^ 2) матрицы W для некоторого заданного целого числа S. (i + j) (q + 1) -я строка и (l + m) (p + 1) -й элемент столбца W задается суммой

G (i, l, u) * G (j, m, u + qp) + G (j, l, u) * G (i, m, u + q + p) ,

более u = -N: N. N таково, что доступен третий индекс каждого вышеприведенного термина.

Обратите внимание, что существует более 6 индексов для l oop: p и q (каждый идет от 0 до S); i, j, l, m (каждый идет от 1 до d).

Мой вопрос таков: какой эффективный способ вычислить W в Matlab или Python. Могу ли я использовать что-то вроде Numpy einsum?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...