Реализация линейной регрессии общего вида
В MathCad 7 реализована возможность выполнения линейной регрессии общего вида. При ней заданная совокупность точек приближается функцией вида: F(x, K1, K1,..., KN)=K1*F1(x)+K2*F2(x)+...+KN*FN(x). Таким образом, функция регрессии является линейной комбинацией функций F1(x), F2(x)...FN(x), причем сами эти функции могут быть нелинейными, что резко расширяет возможности такой аппроксимации и распространяет ее на нелинейные функции. Для реализации линейной регрессии общего вида используется функция: linfit(VX, VY, F) - возвращает вектор коэффициентов линейной регрессии К, при котором среднеквадратичная погрешность приближения «облака» исходных точек, координаты которых хранятся в векторах VX и VY, оказывается минимальной. Вектор должен содержать функции F1(x), F2(x)...FN(x), записанные в символьном виде. Рис.71 поясняет проведение линейной регрессии общего вида с применением функции linfit. Рис.71. Пример проведения линейной регрессии общего вида Одномерная линейная аппроксимация При кусочно-линейной интерполяции вычисления дополнительных точек выполняются по линейной зависимости. Графически это означает просто соединение узловых точек отрезками прямых, для чего используется следующая функция: linterp(VX, VY, x ). Для заданных векторов VX и VY узловых точек и заданного аргумента х linterp(VX, VY, x ) возвращает значение функции при ее линейной аппроксимации. При экстраполяции используются отрезки прямых, проведенные через две крайние точки.
|