Шаговая регрессия (пример)
Материал из MachineLearning.
м (викификация) |
м (→Литература: шаблон) |
||
Строка 112: | Строка 112: | ||
* | * | ||
- | {{Задание|Раиса Джамтырова|В.В.Стрижов|28 мая 2010}} | + | {{Задание|Раиса Джамтырова|В.В.Стрижов|28 мая 2010|Raisa|Strijov}} |
[[Категория:Учебные материалы]] | [[Категория:Учебные материалы]] | ||
[[Категория:Регрессионный анализ]] | [[Категория:Регрессионный анализ]] |
Версия 06:15, 26 апреля 2010
|
Логистическая регрессия — частный случай обобщенной линейной регрессии. Предполагается, что зависимая переменная принимает два значения и имеет биномиальное распределение
В данной статье рассматриваются два алгоритма отбора признаков линейной регрессии: метод наименьших углов и шаговая регрессия.
Метод наименьших углов (англ. least angle regression, LARS) - алгоритм отбора признаков в задачах линейной регрессии. При большом количестве свободных переменных возникает проблема неустойчивого оценивания весов модели. LARS предлагает метод выбора такого набора свободных переменных, который имел бы наиболее значимую статистическую связь с зависимой переменной. Также LARS предлагает метод оценки весов.
Шаговая регрессия (stepwise regression)
Цель пошаговой регрессии состоит в отборе из большого количества предикатов небольшой подгруппы переменных, которые вносят наибольший вклад в вариацию зависимой переменной.
Пусть нам задана регрессионная модель
- .
Алгоритм заключается в последовательном добавлении и удалении признаков согласно определённому критерию. Обычно используется -критерий, который имеет вид
где индекс 2 соответствует второй регрессионной модели , индекс 1 соответствует первой регрессионной модели, которая является модификацией второй модели; - соответствующие числа параметров модели; - сумма квадратов невязок, задающий критерий качества модели:
- .
Шаговая регрессия включает два основных шага: шаг Add (последовательное добавление признаков) и шаг Del (последовательное удаление признаков).
Постановка задачи
Задана выборка - матрица , столбцы которой соответствуют независимым переменным, а строки - элементам выборки и вектор , содержащий элементы зависимой переменной. Назначена линейная модель .
Требуется найти набор признаков (столбцов матрицы ) , удовлетворяющий -критерию.
Описание алгоритма
Обозначим текущий набор признаков . Начальным набором является пустой набор . К текущему набору присоединяется по одному признаку, который дoставляет максимум -критерию или
Добавляется несколько признаков, пока значение критерия на шаге не станет меньше заданного . Затем признаки удаляются по одному так, чтобы значение -критерия было минимально:
Признаки удаляются , пока значение F-критерия на шаге не станет больше заданного критического значения .
Критические значения и для каждого шага определяются по таблице Фишера c заданным уровнем значимости со степенями свободы и .
Остановка алгоритма
Останов алгоритма производится при достижении заданного минимума критерием Маллоуза :
- ,
где - среднеквадратичная ошибка, вычисленная для модели, настроенной методом наименьших квадратов на всем множестве признаков, - сложность модели.
Критерий штрафует модели с большим количеством признаков. Минимизация критерия позволяет найти множество, состоящее из значимых признаков.
Вычислительный эксперимент
Показана работа алгоритмов в серии задач, основанных как на реальных, так и на модельных данных.
Пример 1
Рассмотрим пример на модельных данных. Сравним два алгоритма: Метод наименьших углов и Шаговую регрессию. Назначена линейная модель, выборка состоит из 20 объектов и 10 признаков. По оси абсцисс показаны номера признаков, по оси ординат- параметры, полученные при использовании Метода наименьших углов. Красным цветом обозначены признаки, выбранные при помощи Шаговой регрессии. Мы видим, что Шаговой регрессией были выбраны 4 признака, которым алгоритмом Lars были присвоены наибольшие значения параметров .
Пример 2
Рассмотрим пример на реальных данных : данные по кредитованию одним из немецких банков . Проведем проверку алгоритма на задаче из репозитория UCI: Statlog (German Credit Data) Data Set . Объектами являются анкеты людей, желавших получить кредит в банке. Изначально анкеты содержали 20 пунктов, таких как состояние банковского счета заемщика, информация о его кредитной истории, цель займа, величина займа, возраст заемщика, время с момента трудоустройства на текущее место работы и другие. Но так как некоторые из них не были числовыми, а многие алгоритмы (в том числе рассматриваемый в данной статье) работают только с числовыми признаками, то из 20 разнородных признаков было составлено 24 числовых. В выборке представлено 256 объектов.
График 1
На графике показана зависимость критерия Маллоуза от количества признаков. Алгоритмом Stepwise было выбрано 13 признаков.
График 2
Аналогично примеру 1 сравним два алгоритма. По оси абсцисс показаны номера признаков, по оси ординат- параметры, полученные при использовании Метода наименьших углов. Красным цветом обозначены признаки, выбранные при помощи Шаговой регрессии. В отличие от первого примера на модельных данных, Шаговой регрессией были выбраны несколько признаков, которым Lars присвоил параметры, близкие к нулю. Одним из недостатков метода Шаговой регрессии является то, что важная переменная может быть никогда не включена в модель, а второстепенные признаки будут включены.
График 3
Сравним для двух моделей значения критерия Маллоуза, критерия Акаике и критерия SSE(сумма квадратов регрессионных остатков). Сплошной линией показаны критерии для Шаговой регрессии, пунктирной- для Метода наименьших углов.
График 4
На графике показана зависимость значения критерия Маллоуза от количества признаков для обучающей и тестовой выборки. В качестве обучающей выборки были выбраны 200 объектов, в качестве тестовой- остальные 56. График для Шаговой регрессии.
График 5
На графике показана зависимость значения критерия Маллоуза от количества признаков для обучающей и тестовой выборки. В качестве обучающей выборки были выбраны 200 объектов, в качестве тестовой- остальные 56. График для метода наименьших углов.
Исходный код
Скачать код можно здесь [1]
Смотри также
Литература
Данная статья является непроверенным учебным заданием.
До указанного срока статья не должна редактироваться другими участниками проекта MachineLearning.ru. По его окончании любой участник вправе исправить данную статью по своему усмотрению и удалить данное предупреждение, выводимое с помощью шаблона {{Задание}}. См. также методические указания по использованию Ресурса MachineLearning.ru в учебном процессе. |