Аппроксимация кривой

редактировать
Аппроксимация зашумленной кривой с помощью модели асимметричного пика с итерационным процессом (алгоритм Гаусса – Ньютона с переменный коэффициент демпфирования α).. Вверху: необработанные данные и модель.. Внизу: эволюция нормализованной суммы квадратов ошибок.

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

Содержание

  • 1 Типы
    • 1.1 Подгонка функций к точкам данных
      • 1.1.1 Подгонка линий и полиномиальных функций к точкам данных
      • 1.1.2 Подгонка других функций к точкам данных
    • 1.2 Алгебраическая подгонка Сравнение с геометрической подгонкой для кривых
    • 1.3 Подгонка плоских кривых к точкам данных
      • 1.3.1 Подгонка круга геометрической подгонкой
      • 1.3.2 Подгонка эллипса геометрической подгонкой
    • 1.4 Применение к поверхностям
  • 2 Программное обеспечение
  • 3 См. Также
  • 4 Ссылки
  • 5 Дополнительная литература

Типы

Подбор функций к точкам данных

Чаще всего подходит функция вида y = f (x).

Подгонка линий и полиномиальных функций к точкам данных

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

Первая степень многочлен уравнение

y = ax + b {\ displaystyle y = ax + b \;}{\ displaystyle y = ax + b \;}

- это линия с наклоном a. Линия соединит любые две точки, поэтому полиномиальное уравнение первой степени точно соответствует любым двум точкам с различными координатами x.

Если порядок уравнения увеличен до полинома второй степени, будут получены следующие результаты:

y = a x 2 + b x + c. {\ displaystyle y = ax ^ {2} + bx + c \ ;.}y = ax ^ {2} + bx + c \ ;.

Это точно соответствует простой кривой по трем точкам.

Если порядок уравнения увеличивается до полинома третьей степени, получается следующее:

y = a x 3 + b x 2 + c x + d. {\ displaystyle y = ax ^ {3} + bx ^ {2} + cx + d \ ;.}y = ax ^ {3} + bx ^ {2} + cx + d \ ;.

Это точно соответствует четырем точкам.

Более общим утверждением было бы сказать, что он точно соответствует четырем ограничениям . Каждое ограничение может быть точкой, углом или кривизной (которая является обратной величиной радиуса соприкасающейся окружности ). Ограничения угла и кривизны чаще всего добавляются к концам кривой и в таких случаях называются конечными условиями . Идентичные конечные условия часто используются для обеспечения плавного перехода между полиномиальными кривыми, содержащимися в одном сплайне . Также могут быть добавлены ограничения более высокого порядка, такие как «изменение скорости кривизны». Это, например, было бы полезно при проектировании шоссе клеверного листа, чтобы понять скорость изменения сил, приложенных к машине (см. рывок ), когда она следует за клеверным листом, и соответственно установить разумные ограничения скорости.

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

Если имеется более n + 1 ограничений (n - степень полинома), полиномиальная кривая все еще может проходить через эти ограничения. Точное соответствие всем ограничениям неизвестно (но может произойти, например, в случае полинома первой степени, точно подходящего к трем коллинеарным точкам ). В общем, однако, для оценки каждого приближения необходим некоторый метод. Метод наименьших квадратов - это один из способов сравнения отклонений.

Существует несколько причин для получения приблизительного соответствия, когда можно просто увеличить степень полиномиального уравнения и получить точное совпадение.:

  • Даже если существует точное совпадение, оно не обязательно следует, что его легко обнаружить. В зависимости от используемого алгоритма могут быть разные случаи, когда невозможно вычислить точное соответствие, или на поиск решения может потребоваться слишком много компьютерного времени. Эта ситуация может потребовать приблизительного решения.
  • Может быть желательным эффект усреднения сомнительных точек данных в выборке, а не искажение кривой, чтобы она точно соответствовала им.
  • Феномен Рунге : высокий полиномы порядка могут быть сильно колеблющимися. Если кривая проходит через две точки A и B, можно ожидать, что кривая также будет проходить несколько ближе к середине точек A и B. Этого может не случиться с полиномиальными кривыми высокого порядка; они могут даже иметь очень большие положительные или отрицательные значения величины. С полиномами низкого порядка кривая с большей вероятностью упадет около средней точки (она даже гарантированно точно проходит через среднюю точку полинома первой степени).
  • Полиномы низкого порядка имеют тенденцию быть гладкими, а полиномы высокого порядка полиномиальные кривые имеют тенденцию быть «неровными». Чтобы определить это более точно, максимальное количество точек перегиба, возможное в полиномиальной кривой, равно n-2, где n - порядок полиномиального уравнения. Точка перегиба - это место на кривой, где она переключается с положительного радиуса на отрицательный. Мы также можем сказать, что именно здесь он переходит от «удержания воды» к «проливанию воды». Обратите внимание, что полиномы высокого порядка могут быть неуклюжими только «возможно»; они также могут быть гладкими, но это не гарантирует этого, в отличие от полиномиальных кривых низкого порядка. Многочлен пятнадцатой степени может иметь не более тринадцати точек перегиба, но также может иметь двенадцать, одиннадцать или любое число вплоть до нуля.

Степень полиномиальной кривой выше, чем требуется для точной подгонки, нежелательна для всех причины, перечисленные ранее для многочленов высокого порядка, но также приводит к случаю, когда существует бесконечное количество решений. Например, полином первой степени (линия), ограниченный только одной точкой вместо обычных двух, даст бесконечное количество решений. Это поднимает проблему, как сравнить и выбрать только одно решение, что может быть проблемой как для программного обеспечения, так и для людей. По этой причине обычно лучше выбирать как можно более низкую степень для точного соответствия по всем ограничениям и, возможно, даже более низкую степень, если приблизительное соответствие приемлемо.

Связь между урожаем пшеницы и засолением почвы

Подгонка других функций к точкам данных

Другие типы кривых, такие как тригонометрические функции (например, синус и косинус), также могут использоваться в определенных случаях.

В спектроскопии данные могут быть подогнаны с помощью функций Гаусса, Лоренца, Фойгта и связанных с ними функций.

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

Алгебраическая подгонка против геометрической подгонки для кривых

Для алгебраического анализа данных «подгонка» обычно означает попытку найти кривую, которая минимизирует вертикальное (ось Y) смещение точки от кривая (например, обычный метод наименьших квадратов ). Однако для графических приложений и приложений с изображениями геометрическая аппроксимация стремится обеспечить наилучшее визуальное соответствие; что обычно означает попытку минимизировать ортогональное расстояние до кривой (например, всего наименьших квадратов ) или иным образом включить обе оси смещения точки от кривой. Геометрические подгонки не популярны, потому что они обычно требуют нелинейных и / или итерационных вычислений, хотя они имеют преимущество более эстетичного и геометрически точного результата.

Подгонка плоских кривых к точкам данных

Если функция вида y = f (x) {\ displaystyle y = f (x)}y = f (x) не может быть постулирована, можно попытаться подобрать плоскую кривую .

Другие типы кривых, такие как конические сечения (круговые, эллиптические, параболические и гиперболические дуги) или тригонометрические функции (такие как синус и косинус), также могут использоваться в определенных случаи. Например, траектории объектов под действием силы тяжести следуют параболическому пути, когда сопротивление воздуха не учитывается. Следовательно, сопоставление точек данных траектории с параболической кривой имело бы смысл. Приливы следуют синусоидальным моделям, поэтому точки данных приливов должны быть сопоставлены с синусоидальной волной или суммой двух синусоидальных волн разных периодов, если учитываются эффекты Луны и Солнца.

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

Подгонка круга геометрической подгонкой

Подгонка круга методом Купа, точки, описывающие дугу окружности, центр (1; 1), радиус 4. различные модели подгонки эллипса подгонка эллипса, минимизирующая алгебраическое расстояние (метод Фитцгиббона).

Куп подходит к проблеме поиска наилучшего визуального соответствия круга, чтобы набор 2D точек данных. Этот метод элегантно преобразует обычно нелинейную задачу в линейную, которая может быть решена без использования итерационных численных методов, и, следовательно, намного быстрее, чем предыдущие методы.

Подгонка эллипса с помощью геометрической аппроксимации

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

Применение к поверхностям

Обратите внимание, что хотя это обсуждение касалось 2D-кривых, большая часть этой логики также распространяется на 3D-поверхности, каждый участок которых определяется сетью кривых, состоящих из двух параметрические направления, обычно называемые u и v . Поверхность может состоять из одного или нескольких участков поверхности в каждом направлении.

Программное обеспечение

Многие статистические пакеты, такие как R и числовое программное обеспечение, например gnuplot, Научная библиотека GNU, MLAB, Maple, MATLAB, Mathematica, GNU Octave и SciPy включают команды для подбора кривой в различных сценариях. Есть также программы, специально написанные для подбора кривой; их можно найти в списках программ статистического и численного анализа, а также в Категория: Программное обеспечение для регрессии и построения кривых.

См. также

Ссылки

Дополнительная литература

  • Н. Чернов (2010), Круговая и линейная регрессия: аппроксимация окружностей и линий методом наименьших квадратов, Chapman Hall / CRC, Монографии по статистике и прикладной вероятности, том 117 (256 стр.). [2]
Викискладе есть материалы, связанные с подгонкой кривой.
Последняя правка сделана 2021-05-16 11:58:18
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте