4. Полиномиальная регрессия
Полиномиальная регрессия означает приближение данных (xi, yi) полиномом k-й степени А(х)=а+bх+сх2+dх3+.. .+hxk. При k=1 полином является прямой линией, при k=2 — параболой, при k=3 — кубической параболой и т. д. Как правило, на практике применяются k<5.
Для построения регрессии полиномом k-й степени необходимо наличие по крайней мере (k+1) точек данных.
В Mathcad полиномиальная регрессия осуществляется комбинацией встроенной функции regress и полиномиальной интерполяции.
regress(x,y,k) — вектор коэффициентов для построения полиномиальной регрессии данных;
interp(s,x,y, t) — результат полиномиальной регрессии;
s=regress(x,y,k);
х — вектор действительных данных аргумента, элементы которого расположены в порядке возрастания;
у — вектор действительных данных значений того же размера;
k — степень полинома регрессии (целое положительное число);
t — значение аргумента полинома регрессии.
Для построения полиномиальной регрессии после функции regress Вы обязаны использовать функцию interp.
5. Экспоненциальная регрессия
В рассмотренных, в Mathcad встроено еще несколько видов трехпара-метрической регрессии. Их реализация несколько отличается от приведенных выше вариантов регрессии тем, что для них, помимо массива данных, требуется задать некоторые начальные значения коэффициентов а,b,с. Используйте соответствующий вид регрессии, если хорошо представляете себе, какой зависимостью описывается Ваш массив данных. Когда тип регрессии плохо отражает последовательность данных, то ее результат часто бывает неудовлетворительным и даже сильно различающимся в зависимости от выбора начальных значений. Каждая из функций выдает вектор уточненных параметров а,b,с.
expfit(x,y,g) —регрессия экспонентой f(x)=aebx+c;
lgsfit(x,y,g) —регрессия логистической функцией f (x)=a/ (1+bесх);
sinf it (x,y,g) —регрессия синусоидой f(x) =asin (х+b)+с;
pwfit(x,y,g) — регрессия степенной функцией f(x)=axb+c;
iogfit(x,y,g) — рефессия логарифмической функцией f(x) =aln(х+b)+с;
lnfit(x,y) — регрессия двухпараметрической логарифмической функцией f(x)=aln(x)+b;
х — вектор действительных данных аргумента;
у — вектор действительных значений того же размера;
g — вектор из трех элементов, задающий начальные значения а,b,с.
Правильность выбора начальных значений можно оценить по результату регрессии — если функция, выданная Mat head, хорошо приближает зависимость у (х), значит они были подобраны удачно.
Пример расчета одного из видов трехпараметрической регрессии (экспоненциальной) приведен в листинге 15.13 и на рис. 15.17. В предпоследней строке листинга выведены в виде вектора вычисленные коэффициенты а,ь,с, а в последней строке через эти коэффициенты определена искомая функция f (х).
Многие задачи регрессии данных различными двухпараметрическими зависимостями у (х) можно свести к более надежной, с вычислительной точки зрения, линейной регрессии. Делается это с помощью соответствующей замены переменных.
Рис. Экспоненциальная регрессия
