Шаговая регрессия (пример)
Материал из MachineLearning.
м (→Литература: шаблон) |
|||
Строка 1: | Строка 1: | ||
{{TOCright}} | {{TOCright}} | ||
- | [[ | + | Решение практических задач восстановления [[регрессионный анализ|регрессионной]] зависимости требует рассмотрения большого числа порождаемых признаков. Процедура построения регрессионных моделей состоит из двух шагов. На первом шаге, на основе свободных переменных- результатов измерений, порождается набор признаков. На втором шаге производится выбор признаков. При выборе признаков выполняется настройка параметров модели, оценивается её качество. Модель с настроенными параметрами, доставляющая минимум заданному функционалу качества, называется моделью оптимальной структуры. |
- | + | ||
- | + | ||
- | В данной статье рассматриваются два | + | Среди методов отбора признаков широкое распространение получил шаговый метод, впервые предложенный в 1960 году Эфроимсоном. На каждом шаге признаки проверяются на возможность добавления признаков в модель или удаления из модели, основываясь на F-статистике. Также могут быть использованы другие способы определения значимости признака, например, [[критерий Акаике| критерий Акаике]], [[Байесовский информационный критерий| Байесовский критерий]], критерий Маллоуза. |
+ | |||
+ | В данной статье рассматриваются два метода отбора признаков: метод наименьших углов и шаговая регрессия. Эти методы похожи. Различие заключается в том, что алгоритм LARS, вместо последовательного добавления и удаления свободных переменных, на каждом шаге изменяет их веса. | ||
[[Метод наименьших углов (пример)|Метод наименьших углов]] (англ. least angle regression, LARS) - | [[Метод наименьших углов (пример)|Метод наименьших углов]] (англ. least angle regression, LARS) - | ||
Строка 69: | Строка 69: | ||
=== Пример 2 === | === Пример 2 === | ||
Рассмотрим пример на реальных данных : данные по кредитованию одним из немецких банков . | Рассмотрим пример на реальных данных : данные по кредитованию одним из немецких банков . | ||
- | Проведем проверку алгоритма на задаче из репозитория UCI: [http://archive.ics.uci.edu/ml/datasets/Statlog+%28German+Credit+Data%29 Statlog (German Credit Data) Data Set ]. Объектами являются анкеты людей, желавших получить кредит в банке. Изначально анкеты содержали 20 пунктов, таких как состояние банковского счета заемщика, информация о его кредитной истории, цель займа, величина займа, возраст заемщика, время с момента трудоустройства на текущее место работы и другие. Но так как некоторые из них не были числовыми, а многие алгоритмы (в том числе рассматриваемый в данной статье) работают только с числовыми признаками, то из 20 разнородных признаков было составлено 24 числовых. В выборке представлено 256 объектов. | + | Проведем проверку алгоритма на задаче из репозитория UCI: [http://archive.ics.uci.edu/ml/datasets/Statlog+%28German+Credit+Data%29 Statlog (German Credit Data) Data Set]. Объектами являются анкеты людей, желавших получить кредит в банке. Изначально анкеты содержали 20 пунктов, таких как состояние банковского счета заемщика, информация о его кредитной истории, цель займа, величина займа, возраст заемщика, время с момента трудоустройства на текущее место работы и другие. Но так как некоторые из них не были числовыми, а многие алгоритмы (в том числе рассматриваемый в данной статье) работают только с числовыми признаками, то из 20 разнородных признаков было составлено 24 числовых. В выборке представлено 256 объектов. |
== График 1 == | == График 1 == | ||
Строка 81: | Строка 81: | ||
== График 2 == | == График 2 == | ||
- | Аналогично примеру 1 сравним два алгоритма. По оси абсцисс показаны номера признаков, по оси ординат- параметры, полученные при использовании Метода наименьших углов. Красным цветом обозначены признаки, выбранные при помощи Шаговой регрессии. В отличие от первого примера на модельных данных, Шаговой регрессией были выбраны несколько признаков, которым Lars присвоил параметры, близкие к нулю. Одним из недостатков метода Шаговой регрессии является то, что важная переменная может быть никогда не включена в модель, а второстепенные признаки будут включены. | + | Аналогично примеру 1, сравним два алгоритма. По оси абсцисс показаны номера признаков, по оси ординат- параметры, полученные при использовании Метода наименьших углов. Красным цветом обозначены признаки, выбранные при помощи Шаговой регрессии. В отличие от первого примера на модельных данных, Шаговой регрессией были выбраны несколько признаков, которым Lars присвоил параметры, близкие к нулю. Одним из недостатков метода Шаговой регрессии является то, что важная переменная может быть никогда не включена в модель, а второстепенные признаки будут включены. |
[[Изображение:German5.png|800px]] | [[Изображение:German5.png|800px]] | ||
Строка 93: | Строка 93: | ||
== График 4 == | == График 4 == | ||
- | На графике показана зависимость значения критерия Маллоуза от количества признаков для обучающей и тестовой выборки. В качестве обучающей выборки были выбраны 200 объектов, в качестве тестовой- остальные 56. График для Шаговой регрессии. | + | На графике показана зависимость значения критерия Маллоуза от количества признаков для обучающей и тестовой выборки. В качестве обучающей выборки были выбраны 200 объектов, в качестве тестовой- остальные 56. График показан для Шаговой регрессии. |
[[Изображение:German3.png|800px]] | [[Изображение:German3.png|800px]] | ||
Строка 99: | Строка 99: | ||
== График 5 == | == График 5 == | ||
- | На графике показана зависимость значения критерия Маллоуза от количества признаков для обучающей и тестовой выборки. В качестве обучающей выборки были выбраны 200 объектов, в качестве тестовой- остальные 56. График для | + | На графике показана зависимость значения критерия Маллоуза от количества признаков для обучающей и тестовой выборки. В качестве обучающей выборки были выбраны 200 объектов, в качестве тестовой- остальные 56. График показан для Метода наименьших углов. |
[[Изображение:German2.png|800px]] | [[Изображение:German2.png|800px]] | ||
== Исходный код == | == Исходный код == | ||
- | Скачать | + | Скачать листинги алгоритмов можно здесь [https://mlalgorithms.svn.sourceforge.net/svnroot/mlalgorithms/FeatureSelectionStep/stepwise.m stepwise.m] |
- | + | [https://mlalgorithms.svn.sourceforge.net/svnroot/mlalgorithms/FeatureSelectionStep/lars.m lars.m] | |
+ | [https://mlalgorithms.svn.sourceforge.net/svnroot/mlalgorithms/FeatureSelectionStep/Fisher.m Fisher.m] | ||
== Смотри также == | == Смотри также == | ||
- | * | + | * [[Регрессионный анализ|Pегрессионный анализ]] |
- | + | * [[Регрессионная модель|Регрессионная модель]] | |
+ | * [[Метод наименьших углов (пример)|Метод наименьших углов]] | ||
== Литература == | == Литература == | ||
- | * | + | * Крымова Е.А., Стрижов В.В. , Алгоритмы выбора признаков линейных регрессионных моделей из конечного и счетного множеств |
{{Задание|Раиса Джамтырова|В.В.Стрижов|28 мая 2010|Raisa|Strijov}} | {{Задание|Раиса Джамтырова|В.В.Стрижов|28 мая 2010|Raisa|Strijov}} | ||
[[Категория:Учебные материалы]] | [[Категория:Учебные материалы]] | ||
[[Категория:Регрессионный анализ]] | [[Категория:Регрессионный анализ]] |
Версия 20:48, 26 апреля 2010
|
Решение практических задач восстановления регрессионной зависимости требует рассмотрения большого числа порождаемых признаков. Процедура построения регрессионных моделей состоит из двух шагов. На первом шаге, на основе свободных переменных- результатов измерений, порождается набор признаков. На втором шаге производится выбор признаков. При выборе признаков выполняется настройка параметров модели, оценивается её качество. Модель с настроенными параметрами, доставляющая минимум заданному функционалу качества, называется моделью оптимальной структуры.
Среди методов отбора признаков широкое распространение получил шаговый метод, впервые предложенный в 1960 году Эфроимсоном. На каждом шаге признаки проверяются на возможность добавления признаков в модель или удаления из модели, основываясь на F-статистике. Также могут быть использованы другие способы определения значимости признака, например, критерий Акаике, Байесовский критерий, критерий Маллоуза.
В данной статье рассматриваются два метода отбора признаков: метод наименьших углов и шаговая регрессия. Эти методы похожи. Различие заключается в том, что алгоритм LARS, вместо последовательного добавления и удаления свободных переменных, на каждом шаге изменяет их веса.
Метод наименьших углов (англ. 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. График показан для Метода наименьших углов.
Исходный код
Скачать листинги алгоритмов можно здесь stepwise.m lars.m Fisher.m
Смотри также
Литература
- Крымова Е.А., Стрижов В.В. , Алгоритмы выбора признаков линейных регрессионных моделей из конечного и счетного множеств
Данная статья является непроверенным учебным заданием.
До указанного срока статья не должна редактироваться другими участниками проекта MachineLearning.ru. По его окончании любой участник вправе исправить данную статью по своему усмотрению и удалить данное предупреждение, выводимое с помощью шаблона {{Задание}}. См. также методические указания по использованию Ресурса MachineLearning.ru в учебном процессе. |