Про алгоритм максимального подобия

3 сообщения / 0 новых
Последнее сообщение
Про алгоритм максимального подобия

Прочитал вашу работу о модели прогнозирования временных рядов. Статья меня очень заинтересовала, я стал разбирать всё приведённые формулы и алгоритм в подробностях. Всё оказалось относительно понятно, пока не дошло до формулы вычисления линейных коэффициентов (матрицы А) на основании известных векторов Х [от Т-М+1 длиной М] и X [от i max длиной M]. Там используются транспонированные матрицы X [от i max длиной M], произведение матриц в степени -1. Вот тут я не понял, каким образом возводится матрица в степень  "-1"? В результате не разобрался, как всю эту формулу привести к виду, пригодному для практических вычислений. Буду вам признателен за разъяснения.

Добрый день!

Добрый день!

Мне очень приятно, что есть люди, которые не только заинтересовались моей моделью, но и взялись ее реализовывать. Не могу припомнить, но, по-моему, что-то аналогичное у меня уже спрашивали. Постараюсь ответить подробно.

Матрица в степени «-1» — это есть обратная матрица. В Matlab она считается по функции inv(X), также есть встроенная функция поиска обратной матрицы в Экселе, например, но я пользуюсь Матлабом, так что про Эксель только слышала.

В идеале у нас есть уравнение: Y = A * X – это есть матричное уравнение, где нужно найти А

И решение будет таким: Y * X(-1) = A * X * X(-1), где X*X(-1) = I (то есть единичная матрица), то есть A = Y * X(-1).

Однако такое работает только с квадратными матрицами, так как мы можем найти X(-1), то есть обратную матрицу, только для квадратных матриц. А у нас она вовсе не квадратная… Тогда и применяется транспонирование, и у нас не Х, а Х*Х(T), где Х(T) – транспонированная матрица. Итого имеем: Y * X(T) = A * X * X(T) -> Y’ = A * X’ -> A = Y’ * X’(-1)

А дальше решаем как в предыдущем случае: A = Y’*X’(-1) = Y *X(T) * (X * X(T))’

Итак, если у нас имеются размерности Y[1xM] = A[1x2] * X[2xM], в матрице Х действительно один столбец заполнен единицами, то A = (Y[1xM] *X(T)[Mx2])’ * (X[2xM] * X(T) [Mx2]) = [1xM]*[Mx2]* ([2xM] *[Mx2])-1
[1xM]*[Mx2] = 1х2
([2xM] *[Mx2])-1 = 2х2
A = [1х2] * [2х2] = 1x2 – вот такая наша выходная матрица.

Вышло немного путано, однако если вы будете внимательны, то разберетесь. Если же у вас возникнут еще вопросы, то пишите опять же сюда, в форум, я постараюсь вам подсказать.

----------------------
Ирина Чучуева,
команда Математического бюро

Ирина спасибо, у меня

Ирина спасибо, у меня получилось. буду работать дальше.

2010 - 2018 © Математическое бюро

Все права защищены в соответствии с законодательством РФ

При полном или частичном использовании материалов ссылка на сайт обязательна