Нелинейное оценивание - Кусочно-линейная регрессия

 

Показанные логические операторы также могут использоваться для определения регрессионных моделей, различных на разных областях изменения независимых переменных(ой), т.е. для оценивания кусочно-линейной регрессионной модели (см. Вводный обзор). Этот пример тоже основан на данных, взятых из книги Neter, Wasserman, and Kutner (1985, стр. 348). А именно, набор данных соответствует производственному процессу, в котором себестоимость зависит от размера произведенной партии. Ниже показан файл данных Lotsize.sta. Открыть это файл можно с помощью меню Файл, выбрав команду Открыть; наиболее вероятно, что это файл находится в директории /Examples/Datasets.

Кусочно-линейная регрессия

Предполагается, что для партий больших 500, вид зависимости меняется. Нетер (1985) использовал для подгонки линейную модель с угловым коэффициентом, меняющимся при размере партии больше или равном 500. Он рассматривает следующую модель:

 


В этой модели мы снова используем логическое выражение (x>500), которое будет использоваться как множитель: если выражение истинно, оно оценивается как 1; если оно ложно, то оценивается как 0. Поэтому это уравнение в действительности представляет две модели. Для значений x меньших или равных 500 (x>500 ложно, т.е. равно 0):


А для значений x больших 500 [т.е. когда (x>500) равно 1], получаем уравнение:


Если вы приведете подобные слагаемые в этом уравнении, вы увидите, что для значений x больше 500, угловой коэффициент равен b1+b2, а свободный член равен (b0-500*b2).

Задание модели. Как и в Примере 4, задайте функцию оценивания (Cost=Constant+Slope1*Lot_size+Slope2*(Lot_size-500)*(Lot_size>500)) диалоговом окне Оцениваемая функция и функция потерь.

Кусочно-линейная регрессия

Как видите введенное уравнение достаточно легко читаемо. Отметим, что на рисунке сверху для обозначения переменных были использованы их имена, а для обозначения параметров были использованы имена Constant, Slope1 и Slope2. Напомним, что все незнакомые имена будут интерпретироваться программой как параметры модели. Также напоминаем, что такие длинные формулы можно легко сохранить с помощью кнопки Сохранить как... и считать для последующего использования нажатием кнопки Открыть. Вы также можете использовать обозначение Vxxx для этих переменных (где xxx это номер переменной), а параметры обозначить как a, b и c. Это сократит время набора формул, но сделает формулы менее читаемыми.

Оценивание модели. Теперь, продолжая, как и раньше, т.е. приняв все установленные по умолчанию значения в окне Оценивание модели, нажимайте кнопку OK до появления окна Результаты.

Кусочно-линейная регрессия

Процедура квази-ньютоновского оценивания со значениями по умолчанию сойдется после 11 итераций.

Просмотр результатов. Нажмите на кнопку Параметры и стандартные ошибки во вкладке Быстрый для просмотра таблицы результатов с оценками параметров.

Кусочно-линейная регрессия

Уровень значимости для параметра Slope1 равен .045. Хотя, другие параметры намного менее значимы (.153), это может означать, что первоначальная (априорная) точка разрыва (500) была выбрана правильно (т.к. наилучшие регрессионные модели для разных интервалов размера партии - Lot_size существенно отличаются). Следующим шагом, мы проверим это непосредственным путем с помощью оценивания точки разрыва.

Оценивание точки разрыва. Логические выражения, наподобие использованных в этой модели, часто могут содержать параметры (а не только константы). Например, если вы точно не уверены, где в вашей модели находится точка разрыва, вы можете определить ее так: Cost=Constant+Slope1*Lot_size+Slope2*(Lot_size-Breakpnt)*(Lot_size>Breakpnt). (Для этого нажмите кнопку Отмена в диалоговом окне Результаты, чтобы вернуться в окно Регрессионная функция пользователя, затем нажмите кнопку Оцениваемая функция и функция потерь.)

Кусочно-линейная регрессия

Здесь в модель был добавлен параметр Breakpnt. Таким образом, теперь мы сможем оценить местоположение точки разрыва. Для продолжения нажмите кнопку OK во всех окнах пока на экране не отобразится диалоговое окно Оценивание модели.

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

Кусочно-линейная регрессия

После того, как вы задали начальные значения нажмите кнопку OK в диалоговом окне Оценивание модели. Программа вычислит оценки параметров, а также и параметра Breakpnt; на экране отобразится диалоговое окно Результаты. Теперь нажмите кнопку Параметры и стандартные ошибки во вкладке Быстрый диалога Результаты, будет построена таблица результатов, содержащая итоговые оценки параметров (включая точку разрыва) для этой модели и другие статистики.

Кусочно-линейная регрессия

Опция "кусочно-линейная регрессия. Вы можете поинтересоваться, почему мы не воспользовались опцией кусочно-линейная регрессия, которая доступа в стартовой панели модуля Нелинейное оценивание. Дело в том, что эта модель позволяет оценивать точку разрыва только для интервалов изменения зависимой переменной y. Поэтому в данном случае эта модель была неприемлема.



Скачать "Задание функции"

Attachments:
FileОписание
Access this URL (http://www.statosphere.ru/downloads/examples/Lotsize.sta)Нелинейное оценивание - Кусочно-линейная регрессияСебестоимость - Lotsize.sta

Добавить комментарий


Защитный код
Обновить

Краткое содержание

Вход для слушателей