2014 dxdy logo

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

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




Начать новую тему Ответить на тему На страницу 1, 2  След.
 
 Поиск аппроксимирующей функции
Сообщение22.08.2019, 16:33 


10/05/09
78
Здравствуйте!

Есть несколько наборов данных, нужно подобрать общий вид аппроксимирующей функции для всех наборов. Т.е. аппроксимирующая функция одна на всех, а коэффициенты для каждой кривой подбираются индивидуально.

Вопрос: как искать аппроксимирующую функцию? Чем можно воспользоватся для поиска? Один ув.п. упоминал пакет Bonmin, но как этой штукой пользоваться, особенно вне языков моделирования, непонятно. Может существуют более распространенные решения?

Изображение

(Оффтоп)

Вот ссылка на исходные данные, если у кого возникнет желание поковыряться.

 Профиль  
                  
 
 Re: Поиск аппроксимирующей функции
Сообщение22.08.2019, 16:39 
Заслуженный участник


09/05/12
25179
Так вам нужен вид аппроксимирующей функции или параметры для функции уже известного вида?

 Профиль  
                  
 
 Re: Поиск аппроксимирующей функции
Сообщение22.08.2019, 16:57 


10/05/09
78
Pphantom в сообщении #1411623 писал(а):
Так вам нужен вид аппроксимирующей функции или параметры для функции уже известного вида?

Нужна функция. Её параметры, при знании функции, можно найти.

 Профиль  
                  
 
 Re: Поиск аппроксимирующей функции
Сообщение22.08.2019, 17:01 
Заслуженный участник
Аватара пользователя


15/10/08
12519
Вряд ли здесь возможны какие-то рекомендации.

 Профиль  
                  
 
 Re: Поиск аппроксимирующей функции
Сообщение22.08.2019, 17:10 
Заслуженный участник


09/05/12
25179
Adventor в сообщении #1411625 писал(а):
Нужна функция. Её параметры, при знании функции, можно найти.
Тогда нужна физика задачи. Я вроде помню, чем примерно вы занимаетесь, но все равно нужны уточнения, так тут слишком много вариантов.

 Профиль  
                  
 
 Re: Поиск аппроксимирующей функции
Сообщение22.08.2019, 17:15 
Заслуженный участник


27/04/09
28128
Угу. Если ничего не известно, то можно просто подобрать какой-нибудь сплайн от балды и всё. Но и гарантий того, что он чему-то правильно соответствует, не будет. И для каждого отдельного случая свой. Если предполагается, что функция зависит от параметра и надо знать и эту зависимость (а не вид парочки функций для конкретных значений параметра), то и при таком подходе можно было бы что-то сделать (взять побольше значений параметра для начала, три — совсем никуда): допустим, тот сплайн задаётся $n$ числами, можно интерполировать зависимость каждого числа от параметра — и это тоже будет совершенно без гарантий.

 Профиль  
                  
 
 Re: Поиск аппроксимирующей функции
Сообщение22.08.2019, 17:30 


05/09/16
12064
Синяя линия, сверху и до $y=0,5$ -- вылитый арк(ко)тангенс (наложен сверху зелёным цветом):
Изображение

 Профиль  
                  
 
 Re: Поиск аппроксимирующей функции
Сообщение22.08.2019, 17:31 


27/08/16
10218
Забейте в таблицу все измеренные точки, интерполируйте между ними линейно. У вас $x$ - один на всех.
Или вы о чём-то не договариваете? Например, о необходимости минимизировать количество параметров?

Натягивать на данные можно только какую-то модель - аппроксимирующую функцию из некоторого заданного пространства функций. Имея под рукой критерий качества этого натягивания.

 Профиль  
                  
 
 Re: Поиск аппроксимирующей функции
Сообщение22.08.2019, 17:49 
Аватара пользователя


07/03/16

3167
Adventor в сообщении #1411621 писал(а):
Может существуют более распространенные решения?

https://lumpics.ru/approximation-in-excel/

 Профиль  
                  
 
 Re: Поиск аппроксимирующей функции
Сообщение22.08.2019, 20:24 


10/05/09
78
Ну, физику натягивать не очень хочется. Но вообще говоря, тут половинка от свертки в виде центрального сечения Солнца с диаграммой направленности телескопа. Т.е. условно свертка круга (с неравномерным распределением интенсивности по его поверхности) с диаграммой направленности, где последнюю очень примерно можно аппроксимировать двумерной гауссианой, сильно вытянутой по одной стороне. Сказанное, скорее всего малопонятно, но вдаваться в смысл особо не стоит, потому что физику здесь никакой простой моделью не описать. И идея состоит не в этом.

Идею хочется представить в том, что, допустим, есть любой произвольный набор данных, хочется его описать некой кривой, которая не имеет никакого физического смысла, но кривая достаточно гладкая и параметризуется малым числом параметров и неплохо описывает набор данных. Т.е. в итоге хочется получить некую функцию и небольшой набор параметров.

Интерполяцией описывать не очень удобно. Потому для каждого набора из $N$ точек получаем набор состоящий из $2N$ параметров для линейной интерполяции, $4N$ для кубического сплайна. Гладкость может быть под вопросом. И интерполяция будет описывать дефекты эмпирического набора данных, это вопрос сглаживания последнего, но всё же.

Если вариантов нет, то придется интерполировать.

-- Чт авг 22, 2019 20:29:32 --

wrest в сообщении #1411631 писал(а):
Синяя линия, сверху и до $y=0,5$ -- вылитый арк(ко)тангенс (наложен сверху зелёным цветом):

Получается $y(x) = p_1 + p_2 x + p_3 \arctg (p_4 x) $

 Профиль  
                  
 
 Re: Поиск аппроксимирующей функции
Сообщение22.08.2019, 20:33 
Заслуженный участник


09/05/12
25179
Adventor в сообщении #1411663 писал(а):
Но вообще говоря, тут половинка от свертки в виде центрального сечения Солнца с диаграммой направленности телескопа.
Ну да, один из предполагавшихся вариантов таким и был. :-)

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

 Профиль  
                  
 
 Re: Поиск аппроксимирующей функции
Сообщение22.08.2019, 20:38 


27/08/16
10218
Adventor в сообщении #1411663 писал(а):
Т.е. условно свертка круга (с неравномерным распределением интенсивности по его поверхности) с диаграммой направленности, где последнюю очень примерно можно аппроксимировать двумерной гауссианой, сильно вытянутой по одной стороне.
А откуда в нуле подъём? Его тоже нужно аппроксимировать, или это какая-то измерительная погрешность?

 Профиль  
                  
 
 Re: Поиск аппроксимирующей функции
Сообщение22.08.2019, 20:40 


10/05/09
78
realeugene в сообщении #1411667 писал(а):
А откуда в нуле подъём? Его тоже нужно аппроксимировать, или это какая-то измерительная погрешность?

Это погрешность, её аппроксимировать не надо.

-- Чт авг 22, 2019 20:47:44 --

Pphantom в сообщении #1411666 писал(а):
Тогда напрашивающаяся идея состоит в том, чтобы таки взять простую модель потемнения диска к краю и свернуть ее с гауссианой, тем самым получив требуемую функцию. Полуширину диаграммы направленности вы и так знаете, так что ее можно параметром не делать, в итоге свободными останутся параметры модели потемнения. Визуально кажется, что хватит двупараметрической модели, тогда два свободных параметра у аппроксимации и получатся.

Не не не, тут всё неочевидно. Не хочется сочинять модели. Подзадача описать распределение яркости по радиусу примерно такая же как вся эта задача.

 Профиль  
                  
 
 Re: Поиск аппроксимирующей функции
Сообщение22.08.2019, 20:59 
Заслуженный участник
Аватара пользователя


15/10/08
12519
Adventor в сообщении #1411663 писал(а):
допустим, есть любой произвольный набор данных, хочется его описать некой кривой, которая не имеет никакого физического смысла, но кривая достаточно гладкая и параметризуется малым числом параметров и неплохо описывает набор данных. Т.е. в итоге хочется получить некую функцию и небольшой набор параметров.
Иногда это удаётся сделать и тогда, как правило, найденной аппроксимации присваивает имя её автора.

 Профиль  
                  
 
 Re: Поиск аппроксимирующей функции
Сообщение22.08.2019, 21:01 
Заслуженный участник


27/04/09
28128
Adventor в сообщении #1411663 писал(а):
Идею хочется представить в том, что, допустим, есть любой произвольный набор данных, хочется его описать некой кривой, которая не имеет никакого физического смысла, но кривая достаточно гладкая и параметризуется малым числом параметров и неплохо описывает набор данных.
Ну тогда теми же сплайнами. Если брать мало кусков и малые степени, будет мало параметров. Можно будет уменьшить это число, если у вас будет много таких наборов, и они лягут на какое-то хорошее многообразие в пространстве параметров. Правда, могут и на плохое, и надо будет выпрямлять его и т. п. и мы грозимся выйти в machine learning.

Уж лучше составьте модель, раз есть связь с реальностью. Неужели это так затратно?

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 29 ]  На страницу 1, 2  След.

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



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

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


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

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