Как натянуть Гаусс на значения ?
От: biohumanoid  
Дата: 15.10.10 03:41
Оценка:
Есть (например) 5 значений (x,y).
Надо натянуть на них функцию распределения Гаусса.
Т.е. http://ru.wikipedia.org/wiki/%D0%9D%D0%BE%D1%80%D0%BC%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5_%D1%80%D0%B0%D1%81%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5

Вопросы:
1. Можно ли это сделать в лоб(за 5 итераций), или только перебором и оценкой ошибки для каждой Гауссианы ?
2. Есть ссылки на библиотеки/примеры на C,C++,Java.
На самом деле на любой язык, эти предпочтительнее.
гаусс
Re: Как натянуть Гаусс на значения ?
От: morm Россия  
Дата: 15.10.10 04:40
Оценка:
Здравствуйте, biohumanoid, Вы писали:

B>Есть (например) 5 значений (x,y).

B>Надо натянуть на них функцию распределения Гаусса.
B>Т.е. http://ru.wikipedia.org/wiki/%D0%9D%D0%BE%D1%80%D0%BC%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5_%D1%80%D0%B0%D1%81%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5

B>Вопросы:

B>1. Можно ли это сделать в лоб(за 5 итераций), или только перебором и оценкой ошибки для каждой Гауссианы ?
B>2. Есть ссылки на библиотеки/примеры на C,C++,Java.
B>На самом деле на любой язык, эти предпочтительнее.


Не понял, что значит "натянуть", но получают распределение случайных величин так:

Делим ось координат на отрезки, получаем распределение величин по отрезкам (частоты) — дальше читаем учебник
Re: Как натянуть Гаусс на значения ?
От: denisko http://sdeniskos.blogspot.com/
Дата: 15.10.10 05:42
Оценка:
Здравствуйте, biohumanoid, Вы писали:

B>Есть (например) 5 значений (x,y).

B>Надо натянуть на них функцию распределения Гаусса.
B>Т.е. http://ru.wikipedia.org/wiki/%D0%9D%D0%BE%D1%80%D0%BC%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5_%D1%80%D0%B0%D1%81%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5
Что такое натянуть? Аппроксимировать, подобрать параметры наиболее вероятного распределения при заданных величинах или что?
B>Вопросы:
B>1. Можно ли это сделать в лоб(за 5 итераций), или только перебором и оценкой ошибки для каждой Гауссианы ?
Можно сделать по МНК и ему подобным методам. Отуда взялась цифра в 5 интераций.
B>2. Есть ссылки на библиотеки/примеры на C,C++,Java.
DLIB.
B>На самом деле на любой язык, эти предпочтительнее.
<Подпись удалена модератором>
Re[2]: Как натянуть Гаусс на значения ?
От: biohumanoid  
Дата: 15.10.10 05:59
Оценка:
B>>Есть (например) 5 значений (x,y).
B>>Надо натянуть на них функцию распределения Гаусса.
B>>Т.е. http://ru.wikipedia.org/wiki/%D0%9D%D0%BE%D1%80%D0%BC%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5_%D1%80%D0%B0%D1%81%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5
D>Что такое натянуть? Аппроксимировать, подобрать параметры наиболее вероятного распределения при заданных величинах или что?
подобрать параметры наиболее вероятного распределения при заданных величинах

B>>Вопросы:

B>>2. Есть ссылки на библиотеки/примеры на C,C++,Java.
D>DLIB.
Пофтыкаю.
Билиотек много, навскидку CERN ROOT. Не осилил, многовато...
Re[3]: Как натянуть Гаусс на значения ?
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 15.10.10 06:09
Оценка:
Здравствуйте, biohumanoid, Вы писали:

D>>Что такое натянуть? Аппроксимировать, подобрать параметры наиболее вероятного распределения при заданных величинах или что?

B>подобрать параметры наиболее вероятного распределения при заданных величинах

Среднее выборочное — оценка мат. ожидания, квадрат среднеквадратичного отклонения — дисперсии. Вот и всё. Для проверки, действительно ли выборка удовлетворяет нормальному закону применяется, как правило, критерий Пирсона. Но там нужна выборка побольше.
Re: Как натянуть Гаусс на значения ?
От: vadimcher  
Дата: 15.10.10 06:29
Оценка:
Здравствуйте, biohumanoid, Вы писали:

B>Есть (например) 5 значений (x,y).

B>Надо натянуть на них функцию распределения Гаусса.
B>Т.е. http://ru.wikipedia.org/wiki/%D0%9D%D0%BE%D1%80%D0%BC%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5_%D1%80%D0%B0%D1%81%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5

B>Вопросы:

B>1. Можно ли это сделать в лоб(за 5 итераций), или только перебором и оценкой ошибки для каждой Гауссианы ?
B>2. Есть ссылки на библиотеки/примеры на C,C++,Java.
B>На самом деле на любой язык, эти предпочтительнее.

Что у тебя (x,y)? x -- это значение величины, y -- плотность в этой точке, или это двумерная нормальная величина? Если первое, то критерий близости функции распределения к точкам? Если МНК, то стандартно. Минимизируешь
sum[i=1,n](1/sqrt(2pis)*exp(-(xi-m)^2/(2s^2))-yi)^2
Скорее всего будет что-то вроде:
m = sum(xi*yi)/sum(yi)
s = sqrt(sum((xi-m)^2*yi)/sum(yi))

А вот зайца кому, зайца-выбегайца?!
Re[2]: Как натянуть Гаусс на значения ?
От: marat321  
Дата: 15.10.10 10:06
Оценка: +1
Здравствуйте, vadimcher, Вы писали:

V>sum[i=1,n](1/sqrt(2pis)*exp(-(xi-m)^2/(2s^2))-yi)^2


\sigma надо за знак корня вынести в первом множителе
Re[3]: Как натянуть Гаусс на значения ?
От: vadimcher  
Дата: 15.10.10 19:21
Оценка:
Здравствуйте, marat321, Вы писали:

M>Здравствуйте, vadimcher, Вы писали:


V>>sum[i=1,n](1/sqrt(2pis)*exp(-(xi-m)^2/(2s^2))-yi)^2


M>\sigma надо за знак корня вынести в первом множителе


Да, точно. Спасибо.

А вот зайца кому, зайца-выбегайца?!
Re[2]: Как натянуть Гаусс на значения ?
От: biohumanoid  
Дата: 16.10.10 00:20
Оценка:
V>Что у тебя (x,y)? x -- это значение величины, y -- плотность в этой точке, или это двумерная нормальная величина?
Первое. Я знаю плотность в определенной точке X. Известных точек/плотностей 5шт.

>Если первое, то критерий близости функции распределения к точкам? Если МНК, то стандартно. Минимизируешь

V>sum[i=1,n](1/sqrt(2pis)*exp(-(xi-m)^2/(2s^2))-yi)^2
V>Скорее всего будет что-то вроде:
V>m = sum(xi*yi)/sum(yi)
V>s = sqrt(sum((xi-m)^2*yi)/sum(yi))

Можно чуть подробнее ?
Плотность распределения — http://upload.wikimedia.org/math/7/6/f/76f2a2c45e5619aef2717d523ff7f037.png
Из физического эксперимента, я получаю (ошибся с числом) 9 плотностей вероятности.
По ним мне надо получить дисперсию и мат. ожидание.
Потом надо определить ошибку (похожесть).

Можно ли получить значение явно (не перебором) ?

Или перебирать дисперсию по 5-й вершине, потом перебирать мат. ожидание.
И повторить этот шаг, приближаясь к заданным точкам ?
Re[3]: Как натянуть Гаусс на значения ?
От: vadimcher  
Дата: 16.10.10 05:05
Оценка:
Здравствуйте, biohumanoid, Вы писали:

B>Плотность распределения — http://upload.wikimedia.org/math/7/6/f/76f2a2c45e5619aef2717d523ff7f037.png

B>Из физического эксперимента, я получаю (ошибся с числом) 9 плотностей вероятности.
B>По ним мне надо получить дисперсию и мат. ожидание.
B>Потом надо определить ошибку (похожесть).

B>Можно ли получить значение явно (не перебором) ?


B>Или перебирать дисперсию по 5-й вершине, потом перебирать мат. ожидание.

B>И повторить этот шаг, приближаясь к заданным точкам ?

Ничего не понял. Какие 9 плотностей? Как это -- подбор дисперсии по 5-й вершине?

Если у тебя есть функция от двух параметров и набор точек (x,y), то попробуй расписать, как я в начале, сумму квадратичных отклонений и производные по неизвестным параметрам.

А вот зайца кому, зайца-выбегайца?!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.