2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки


Правила форума


Посмотреть правила форума



Начать новую тему Ответить на тему
 
 Преобразование нормального распределения
Сообщение25.03.2017, 16:53 
Аватара пользователя


05/06/08
470
Есть векторная случайная величина ${{\bf{v}}_1}$ с заданными параметрами нормального распределения ${{\bf{m}}_1},{\Sigma _1}$ .
Преобразовать эту величину к к другой с параметрами нормального распределения:$ {{\bf{v}}_2},{{\bf{m}}_2},{\Sigma _2}$.
По памяти пишу формулу, хотя и не уверен на 100%, что она верна:
${{\bf{v}}_{1 \to 2}} = {\Sigma _2}\Sigma _1^{ - 1}\left( {{{\bf{v}}_1} - {{\bf{m}}_1}} \right) + {{\bf{m}}_2}$
Вопрос, верна ли формула, нельзя ли упростить матрицу: $ {\Sigma _2}\Sigma _1^{ - 1}$ и нет ли ссылки на какую нибудь программку на С.
____________________
Матрица ${\Sigma _1}$ судя по всему корреляционная а не ковариационная?

 Профиль  
                  
 
 Re: Преобразование нормального распределения
Сообщение25.03.2017, 18:32 
Заслуженный участник
Аватара пользователя


23/11/06
4171
Если это у Вас матрицы ковариаций, корни из обеих добавьте.

 Профиль  
                  
 
 Re: Преобразование нормального распределения
Сообщение25.03.2017, 19:21 
Аватара пользователя


05/06/08
470
--mS-- в сообщении #1203451 писал(а):
Если это у Вас матрицы ковариаций, корни из обеих добавьте.

Спасибо, понятно. Просто крень, естесвенно. Так как у корреляционной матрицы диагональ единичная. Что вообще не уместно.

 Профиль  
                  
 
 Re: Преобразование нормального распределения
Сообщение25.03.2017, 21:50 
Заслуженный участник
Аватара пользователя


23/11/06
4171
Я имела в виду, вдруг это уже корни из матриц ковариаций, тогда не надо.

 Профиль  
                  
 
 Re: Преобразование нормального распределения
Сообщение26.03.2017, 00:37 
Аватара пользователя


05/06/08
470
--mS-- в сообщении #1203492 писал(а):
Я имела в виду, вдруг это уже корни из матриц ковариаций, тогда не надо.

Спасибо. Я действительно не сразу понял, как связать одномерное преобразование с многомерным.
С одноменрым я хорошо знаком. И там естественно брать корень а не квадрат уклонения.
А так как в матрице ковариации могут быть и отрицательные значения, то корень не так очевиден.
Формула то хоть точная?

 Профиль  
                  
 
 Re: Преобразование нормального распределения
Сообщение26.03.2017, 03:41 
Заслуженный участник
Аватара пользователя


23/11/06
4171
Формула верная. Только матрицы можно сначала перемножить, а уж потом корень извлекать. Корень существует, поскольку матрица ковариаций положительно определена и симметрична.

(Оффтоп)

Разумеется, корень из матрицы не есть матрица из корней :)

 Профиль  
                  
 
 Re: Преобразование нормального распределения
Сообщение27.03.2017, 15:08 
Аватара пользователя


05/06/08
470
--mS-- в сообщении #1203553 писал(а):
Формула верная. Только матрицы можно сначала перемножить, а уж потом корень извлекать. Корень существует, поскольку матрица ковариаций положительно определена и симметрична.

(Оффтоп)

Разумеется, корень из матрицы не есть матрица из корней :)

Вот! :) Так как полиожительная определённость не означает что любой элемент положительный.
В моём представлении, интуитивно, корень квадратный из матрицы - это корень из абсолютного значения каждого элемента с сохраниением знака.
Или я что-то упустил из курса ЛА?
В любом случае спасибо!

 Профиль  
                  
 
 Re: Преобразование нормального распределения
Сообщение27.03.2017, 15:17 
Заслуженный участник


09/05/13
8904
MGM в сообщении #1203927 писал(а):
моём представлении, интуитивно, корень квадратный из матрицы - это корень из абсолютного значения каждого элемента с сохраниением знака.

Правильная интуиция интуитивно должна была сообщить, что корень квадратный из матрицы - по аналогии с корнем из числа - это такая матрица, квадрат которой равен исходной.

 Профиль  
                  
 
 Re: Преобразование нормального распределения
Сообщение27.03.2017, 15:18 
Аватара пользователя


05/06/08
470
Otta в сообщении #1203930 писал(а):
MGM в сообщении #1203927 писал(а):
моём представлении, интуитивно, корень квадратный из матрицы - это корень из абсолютного значения каждого элемента с сохраниением знака.

Правильная интуиция интуитивно должна была сообщить, что корень квадратный из матрицы - по аналогии с корнем из числа - это такая матрица, квадрат которой равен исходной.

Понял. :)
Значит подвела интуиция.

 Профиль  
                  
 
 Re: Преобразование нормального распределения
Сообщение27.03.2017, 15:19 
Заслуженный участник
Аватара пользователя


23/07/08
10652
Crna Gora

(Оффтоп)

Если при этом, интуитивно, квадрат матрицы получается возведением в квадрат каждого её элемента, то всё в порядке. :D

 Профиль  
                  
 
 Re: Преобразование нормального распределения
Сообщение27.03.2017, 16:43 
Аватара пользователя


05/06/08
470
Вспомнил, как это делается. Увы, без Матлаба сложно это вычислить.
Может зайти к программистам и спросить код на С, но не уверен, что это кто-то делал.
Может есть в библиотеке С?

 Профиль  
                  
 
 Re: Преобразование нормального распределения
Сообщение28.03.2017, 14:21 


28/05/08
284
Трантор
Да куча библиотек есть, LAPACK, к примеру. Приводите к диагональному виду, заменяете каждое собственное значение на корень из него, и обратно. Матрицу перехода и собственные значения выдаст библиотека, руками совсем немного надо написать. Или вообще octave (который задумывался именно как free Matlab) --- уж корень из матрицы там есть наверняка, и с C возиться не надо.

 Профиль  
                  
 
 Re: Преобразование нормального распределения
Сообщение03.04.2017, 18:20 
Аватара пользователя


05/06/08
470
Narn в сообщении #1204324 писал(а):
Да куча библиотек есть, LAPACK, к примеру. Приводите к диагональному виду, заменяете каждое собственное значение на корень из него, и обратно. Матрицу перехода и собственные значения выдаст библиотека, руками совсем немного надо написать. Или вообще octave (который задумывался именно как free Matlab) --- уж корень из матрицы там есть наверняка, и с C возиться не надо.

Спасибо за помощь.
Однако мне нужно было вставить код именно в С проект. Хорошо, что матрица всего 3х3 и симметричная. Коекакие блоки нашёл в сети.
Однако результат оказался те таким, как задумывался. Как это ни странно, в моём случае приведение одного расспределения к нужному через ковариацию даже чуток хуже, чем независимое одномерное выравнивание по каждому измерению независимо. Как-то так.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 13 ] 

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group