
- •4.1. Метод наименьших квадратов
- •4.2. Простая линейная регрессия
- •4.3. Простая нелинейная регрессия
- •4.4. Регрессия, нелинейная относительно параметров
- •4.5. Примеры решения задач
- •5. Временные ряды
- •5.1. Определения
- •5.2. Постановка задач сглаживания и прогноза
- •5.3. Решение задач сглаживания и прогноза методом наименьших квадратов
- •Пример выполнения задания 1
- •Программа
- •Результаты работы программы
- •Пример выполнения задания 2
- •Пример выполнения задания 1
- •Результаты работы программы
- •Пример выполнения задания 2
- •Результаты работы программы
- •Обработка экспериментальных данных на эвм Учебное пособие
- •Редакционно-издательский отдел гоувпо «Комсомольский-
- •681013, Комсомольск-на-Амуре, пр. Ленина, 27.
- •681013, Комсомольск-на-Амуре, пр. Ленина, 27.
4.4. Регрессия, нелинейная относительно параметров
Если регрессионная функция g(c1, c2,…, ck, x) является нелинейной функцией относительно c1, c2,…, ck, x, то сначала нужно применить линеаризующие преобразования, а затем уже использовать метод наименьших квадратов.
Пример. Рассмотрим задачу нахождения регрессионной функции g = g(c, d, x) = = c exp(dx), описывающей связь между собой двух переменных x = (x0, x1,…, xn) и y = (y0, y1,…, yn).
Сначала применим
линеаризующее преобразование F(z)
= ln(z).
Получим: g1
= = ln g
= ln с
+ dx.
Вводим новый параметр k
= ln c
и получаем функцию g1,
линейную относительно параметров k
и d:
g1
= ln g
= k
+ dx.
Вместо функции
получаем функцию
.
Таким образом, от
исходной задачи мы переходим к задаче
нахождения параметров k
и d
таких, что функция
достигает
минимума. Рассматривая функцию U1
как функцию переменных k
и d
и используя необходимые условия
экстремума функции нескольких переменных,
получаем нормальную
систему:
.
Так как функция g1(k, d, x) = k + dx является линейной функцией от k и d, то получаем систему линейных уравнений для нахождения неизвестных k и d. Запишем первое уравнение:
Умножив обе части уравнения на –0.5 и преобразовав, получим:
.
Запишем
это уравнение в виде:
.
Второе уравнение:
Умножив обе части уравнения на –0.5 и преобразовав, получим:
.
Запишем
это уравнение в виде:
.
Получаем:
Мы получили систему линейных уравнений с симметричной невырожденной матрицей. Но это справедливо, если yi > 0, 0 i n и c > 0 (функция ln x определена для x > 0). Либо рассматриваются только такие данные (xi, yi), 0 i n, для которых yi > 0, либо сначала от данных (xi, yi) нужно перейти к данным (xi, zi), 0 i n, где zi = yi+H, H – положительная константа, выбранная таким образом, что zi > 0, 0 i n.
Решая нормальную систему уравнений методом Гаусса с частичным выбором ведущего элемента, находим k и d. Затем находим c = exp(k). Отметим, что c > 0.
Замечание. При построении регрессионной функции можно полагать, что исходные данные (xi, yi), 0 i n, положительны. Если это не так, то всегда можно подобрать положительные числа T и H такие, что ti = xi + T > 0, zi = yi + H > 0, так как таблица данных (xi, yi) конечна. В результате получаем таблицу данных (ti, zi), 0 i n, с положительными значениями.
Для сведения нелинейной регрессии к линейной применяются линеаризующие преобразования и замена параметров. Линеаризующее преобразование F выбирается таким образом, чтобы функция g1 = F(g(c1, c2,…, ck, x)) была линейной функцией относительно некоторых параметров d1, d2,…, dk.
Рассмотрим регрессионную
функцию g(c,
d,
x)
= 1/(c+dx).
Линеаризующим преобразованием в данном
случае является F(z)
= 1/z.
Получаем: g1
= F(g)
= c+dx.
Функция g1
= g1(c,
d,
x)
является линейной функцией относительно
параметров c
и d,
поэтому не требуется вводить новые
параметры. От функции U
переходим к функции
.
Отметим, что такой переход возможен,
если yi
0 и g(c,
d,
xi)
0, 0
i
n.
Рассматривая функцию U1 как функцию переменных c и d и используя необходимые условия экстремума функции нескольких переменных, получаем нормальную систему:
Мы получили систему линейных уравнений относительно неизвестных c и d с симметричной невырожденной матрицей. Решение этой системы линейных уравнений находится методом Гаусса с частичным выбором ведущего элемента.
Пример. Найти регрессионную функцию g(c, d, x) = cx/(d+x), описывающую связь между собой переменных x = (x0, x1,…, xn) и y = (y0, y1,…, yn).
Сначала применим
линеаризующее преобразование F(z)
= 1/z.
Получаем g1
= F(g
(c,
d,
x))
= (d+x)/cx
= d/cx
+ 1/c.
Полагая, что xi
0, 0
i
n
и c
0, введем новые
параметры: k
= 1/c
и m
= d/c.
Функция g1(k,
m,
x)
= k+m/x
является линейной функцией относительно
параметров k
и m.
От функции U
переходим к функции
,
yi
0, 0 i
n.
Запишем нормальную систему:
Мы получили систему линейных уравнений относительно неизвестных k и m с симметричной невырожденной матрицей. Решение этой системы уравнений находится методом Гаусса с частичным выбором ведущего элемента. Зная k и m, находим c = 1/k и d = m/k, k 0.