Описание окрестности точки наибольшего правдоподобия моделей (пример)
Материал из MachineLearning.
(→Алгоритм) |
(→Алгоритм) |
||
Строка 73: | Строка 73: | ||
На втором шаге мы будем удалять признаки по одному из нашей модели согласно тому же критерию качества (2). | На втором шаге мы будем удалять признаки по одному из нашей модели согласно тому же критерию качества (2). | ||
- | Пусть на <tex>k</tex>-ом шагу алгоритма имеется множество признаков <tex>A</tex>, которое определяет матрицу <tex>X_A</tex>: <tex>\mathbf{y} = X_A \mathbf{w}</tex> | + | Пусть на <tex>k</tex>-ом шагу алгоритма имеется множество признаков <tex>A</tex>, которое определяет матрицу <tex>X_A</tex>: <tex>\mathbf{y} = X_A \mathbf{w}</tex>. |
+ | На нулевом шаге <tex>A_0 = \emptyset</tex>. Опишем <tex>k</tex>-ый шаг алгоритма. | ||
- | |||
- | Добавляем | + | ===1. "Шаг 1: добавление признаков"=== |
+ | |||
+ | Добавляем такой признак <tex>j \in J \setminus A_{k-1}</tex> к активному набору | ||
<tex>A_k = A_{k-1} \cup \{j\}</tex>, | <tex>A_k = A_{k-1} \cup \{j\}</tex>, | ||
который доставляет минимум функционалу (2). | который доставляет минимум функционалу (2). | ||
Строка 86: | Строка 88: | ||
- | + | Пусть <center><tex>k^* = \arg\max_{t=1,\ldots,k} Evidence_t</tex></center> | |
- | + | Если выполнено условие: | |
- | + | <center><tex>k - k^* \geq d</tex>,</center> | |
+ | то идём к шагу 2, иначе - повторяем шаг 1. | ||
+ | d - заданная константа. | ||
- | |||
- | + | ===2. "Шаг 2: удаление признаков"=== | |
- | <tex>A_k = A_{k-1} \ | + | |
+ | Удаляем такой признак <tex>j \in A_{k-1}</tex> из активного набора | ||
+ | <tex>A_k = A_{k-1} \setminus \{j\}</tex>, | ||
который доставляет минимум функционалу (2). | который доставляет минимум функционалу (2). | ||
Строка 104: | Строка 109: | ||
- | + | Пусть <center><tex>k^* = \arg\max_{t=1,\ldots,k} Evidence_t</tex></center> | |
+ | |||
+ | Если выполнено условие: | ||
+ | |||
+ | <center><tex>k - k^* \geq d</tex>,</center> | ||
- | + | то идём к шагу 1, иначе - повторяем шаг 2. | |
- | + | d - заданная константа. | |
== Вычислительный эксперимент == | == Вычислительный эксперимент == |
Версия 00:40, 16 декабря 2010
Содержание |
Постановка задачи
Пусть задана выборка из m пар.
- множество из m объектов, , где n - количество признаков, а - соответствующая зависимая переменная.
- вектор значений j-ого признака, а - вектор целевого признака.
Пусть - множество индексов объектов,
- множество индексов признаков. - подмножество активных признаков.
Множество задаёт регрессионную модель , а - сложность модели.
Рассмотрим следующую линейную модель регрессии, описывающую связь между свободными и зависимой переменными
где - вектор параметров регрессии, а случайная аддитивная переменная регрессионной модели имеет нормальное распределение
.
Распределение зависимой переменной будет иметь следующий вид:
где - сумма квадратов невязок . Согласно оценки точки наибольшего правдоподобия, данное распределение задаёт критерий качества модели, равный сумме квадратов регрессионных остатков.
где - некоторое множество индексов. Этот критерий используется при выборе модели в дальнейшем.
Требуется найти такую модель оптимальной структуры признаков , которая доставляет наименьшее значение функционалу качества (2).
Порождение свободных переменных
Множества измеряемых признаков бывает недостаточно для построения модели удовлетворительного качества. Требуется расширить множество признаков с помощью функциональных преобразований.
Предлагается следующий способ порождения новых признаков:
Пусть задано множество свободных переменных и конечное множество порождающих функций .
Обозначим , где индекс .
Рассмотрим декартово произведение , где элементу ставится в соответствие суперпозиция , однозначно определяемая индексами .
В качестве модели, описывающей отношение между зависимой переменной и свободными переменными , используется полином Колмогорова-Габора:
где и .
- множество индексов, размерности N.
Алгоритм
Рассмотрим алгоритм, состоящий из двух шагов.
На первом шаге мы будем добавлять признаки один за другим к нашей модели согласно критерию качества модели (2).
На втором шаге мы будем удалять признаки по одному из нашей модели согласно тому же критерию качества (2).
Пусть на -ом шагу алгоритма имеется множество признаков , которое определяет матрицу : .
На нулевом шаге . Опишем -ый шаг алгоритма.
1. "Шаг 1: добавление признаков"
Добавляем такой признак к активному набору , который доставляет минимум функционалу (2).
Если выполнено условие:
то идём к шагу 2, иначе - повторяем шаг 1.
d - заданная константа.
2. "Шаг 2: удаление признаков"
Удаляем такой признак из активного набора , который доставляет минимум функционалу (2).
Если выполнено условие:
то идём к шагу 1, иначе - повторяем шаг 2.
d - заданная константа.
Вычислительный эксперимент
Исходный код
Литература
- Стрижов В.В Методы выбора регрессионных моделей. — ВЦ РАН, 2010.