2014 dxdy logo

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

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


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


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



Начать новую тему Ответить на тему На страницу 1, 2  След.
 
 интерполяция функции
Сообщение10.05.2016, 21:18 


10/05/16
7
Есть 500.000 (полмиллиона ) точек, нужно построить функцию. Интерполировать функцию использовав полином Лагранжа не проблема, однако представте себе какой большой полином полчится. Естественно ищу другой способ/метод интерполировать функцию. Заранее спасибо.

 Профиль  
                  
 
 Re: интерполяция функции
Сообщение10.05.2016, 21:27 


07/03/11
690
Ridge regression, LOWESS

 Профиль  
                  
 
 Re: интерполяция функции
Сообщение10.05.2016, 22:00 
Заслуженный участник


05/08/14
1564
Kernel regression

 Профиль  
                  
 
 Re: интерполяция функции
Сообщение10.05.2016, 22:02 
Заслуженный участник
Аватара пользователя


01/03/06
13626
Москва
zayc в сообщении #1122627 писал(а):
Интерполировать функцию использовав полином Лагранжа не проблема

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

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


23/07/08
10908
Crna Gora
Brukvalub в сообщении #1122646 писал(а):
попробовать угадать общий характер зависимости
Brukvalub, это, наверное, история курсов валют со всеми микроколебаниями за несколько лет наблюдений. Чую.

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


09/05/12
25179
zayc в сообщении #1122627 писал(а):
Есть 500.000 (полмиллиона ) точек, нужно построить функцию. Интерполировать функцию использовав полином Лагранжа не проблема, однако представте себе какой большой полином полчится. Естественно ищу другой способ/метод интерполировать функцию. Заранее спасибо.
Уже несколько вариантов предложили, для очистки совести тоже предложу - интерполяционный сплайн, при решении системы прогонкой это будет довольно быстро, но... в какой задаче может понадобиться такое? Вам не хватает полумиллиона точек и нужно получить еще пару десятков миллионов между имеющимися?

 Профиль  
                  
 
 Re: интерполяция функции
Сообщение11.05.2016, 02:12 
Аватара пользователя


11/06/12
10390
стихия.вздох.мюсли
zayc, чем вас не устраивают готовые решения, имеющиеся в матпакетах?

 Профиль  
                  
 
 Re: интерполяция функции
Сообщение11.05.2016, 14:15 


10/05/16
7
данная задача расматривается как часть криптографической задачи.

vlad_light в сообщении #1122633 писал(а):
Ridge regression, LOWESS


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

dsge в сообщении #1122645 писал(а):
Kernel regression


Kernel regression - если првильно понял это один из вариантов Ridge regression, что как было написанно ранее может вызвать колизии при большом отклонении от точек.

@Brukvalub
Да строить полином лагранжа по 0,5 милиона точек безумие, что в общем то и вызвал данный вопрос. Однако, угадывание функции по графику как в небо пальцем тыкать.

@svv нет вы не правы зача по криптографии

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

@Aritaborian что за готовые решения? и если мат пакеты могу составить функцию по 0,5 милионам точек то что за математический способ за этим стоит.

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


09/05/12
25179
zayc в сообщении #1122799 писал(а):
нет, точек впринципе достаточно и их у меня жесткое количесво, все что требуется, это составить функцию по точкам с наименьшим возможным отклонением от них, во избежании колиизий.

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

 Профиль  
                  
 
 Re: интерполяция функции
Сообщение11.05.2016, 17:26 
Аватара пользователя


11/06/12
10390
стихия.вздох.мюсли
zayc в сообщении #1122799 писал(а):
что за готовые решения?
Интерполяция данных в Wolfram Language.

 Профиль  
                  
 
 Re: интерполяция функции
Сообщение11.05.2016, 19:28 
Заслуженный участник


05/08/14
1564
zayc в сообщении #1122799 писал(а):
Kernel regression - если првильно понял это один из вариантов Ridge regression, что как было написанно ранее может вызвать колизии при большом отклонении от точек.

Нет, это совсем разные регрессии (подходы к регрессионному анализу).

 Профиль  
                  
 
 Re: интерполяция функции
Сообщение12.05.2016, 23:45 


10/05/16
7
Цитата:
Так. Давайте-ка сначала: что Вам нужно получить? Интерполяция - это когда функция проходит через точки (и отклонение, соответственно, нулевое - меньше некуда). Или речь идет об ограничениях на производные?


Ок, есть N-ое количество точек (x,y). нужно получить функцию этих точек. Интерполяция - это нахождение промежуточных точек функции, мне болше точек не нужно, мне нужна сама функция. Отлонения - это не к этому случаю относится, оговорился. Обычно в таких случаях я использовал полином Лагранжа, но при N = 0.5 миллиона, это безумие. Так что нужны еще способы составления функции по набору точек.

Цитата:
Интерполяция данных в Wolfram Language.

Насчет готовых решений. Использование мат пакетов не подходит так как у них есть свои ограничения, к примеру MathcaD на отрез отказывается работать с 32-ух разрядными чслами, т.е. он их переводит в вещественный тип, где потом округляет их.

 Профиль  
                  
 
 Re: интерполяция функции
Сообщение12.05.2016, 23:51 
Аватара пользователя


11/06/12
10390
стихия.вздох.мюсли
zayc в сообщении #1123232 писал(а):
к примеру MathcaD
Ясно. Я с вами больше не разговариваю.

 Профиль  
                  
 
 Re: интерполяция функции
Сообщение13.05.2016, 00:09 
Заслуженный участник


09/05/12
25179
zayc в сообщении #1123232 писал(а):
Ок, есть N-ое количество точек (x,y). нужно получить функцию этих точек.
В каком смысле функцию? Нечто представимое в элементарных функциях или с имеющейся возможностью посчитать значение в любой точке? Для второго подойдут те же сплайны, для первого, боюсь, в общем случае ничего, кроме интерполяционного полинома, не получится.
zayc в сообщении #1123232 писал(а):
к примеру MathcaD на отрез отказывается работать с 32-ух разрядными чслами
Пример неудачен - это самый дохлый матпакет из более-менее распространенных.

 Профиль  
                  
 
 Re: интерполяция функции
Сообщение13.05.2016, 08:40 
Заслуженный участник
Аватара пользователя


01/03/06
13626
Москва
Pphantom в сообщении #1123247 писал(а):
В каком смысле функцию?

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

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

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



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

Сейчас этот форум просматривают: eugensk


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

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