Метод группового учёта аргументов
Материал из MachineLearning.
(→Литература) |
(→Смотри также) |
||
(4 промежуточные версии не показаны) | |||
Строка 20: | Строка 20: | ||
== Описание алгоритма МГУА == | == Описание алгоритма МГУА == | ||
Индуктивный [[алгоритм]] отыскания модели оптимальной структуры в состоит из следующих основных шагов. | Индуктивный [[алгоритм]] отыскания модели оптимальной структуры в состоит из следующих основных шагов. | ||
- | + | ||
+ | '''1.''' Пусть задана выборка <tex>D=\{(\mathbf{x}_n,y_n)\}_{n=1}^N</tex>, <tex>\mathbf{x}\in\R^m</tex>. | ||
Выборка разбивается на обучающую и тестовую. | Выборка разбивается на обучающую и тестовую. | ||
Обозначим <tex>\ell, C</tex> — множества индексов из <tex>\{1,\ldots,N\}=W</tex>. | Обозначим <tex>\ell, C</tex> — множества индексов из <tex>\{1,\ldots,N\}=W</tex>. | ||
Строка 28: | Строка 29: | ||
Разбиение выборки представляется в виде | Разбиение выборки представляется в виде | ||
<center><tex> X_W=\left(\begin{array}{c} X_\ell \\ \hline X_C \\ \end{array}\right), \mathbf{y}_W=\left(\begin{array}{c} \mathbf{y}_\ell \\ \hline \mathbf{y}_C\\ \end{array}\right), \mathbf{y}_W\in\R^{N{\times}1}, X_W\in\R^{N{\times}m}, |\ell|+|C|=N. </tex></center> | <center><tex> X_W=\left(\begin{array}{c} X_\ell \\ \hline X_C \\ \end{array}\right), \mathbf{y}_W=\left(\begin{array}{c} \mathbf{y}_\ell \\ \hline \mathbf{y}_C\\ \end{array}\right), \mathbf{y}_W\in\R^{N{\times}1}, X_W\in\R^{N{\times}m}, |\ell|+|C|=N. </tex></center> | ||
- | + | ||
+ | '''2.''' Назначается базовая модель. Эта модель описывает отношение между зависимой переменной <tex>y</tex> и свободными переменными <tex>\mathbf{x}</tex>. | ||
Например, используется функциональный ряд Вольтерра, называемый также полиномом Колмогорова-Габора: | Например, используется функциональный ряд Вольтерра, называемый также полиномом Колмогорова-Габора: | ||
<center><tex>y=w_0+\sum_{i=1}^mw_ix_i + \sum_{i=1}^m\sum_{j=1}^mw_{ij}x_ix_j +\sum_{i=1}^m\sum_{j=1}^m\sum_{k=1}^mw_{ijk}x_ix_jx_k+\ldots.</tex></center> | <center><tex>y=w_0+\sum_{i=1}^mw_ix_i + \sum_{i=1}^m\sum_{j=1}^mw_{ij}x_ix_j +\sum_{i=1}^m\sum_{j=1}^m\sum_{k=1}^mw_{ijk}x_ix_jx_k+\ldots.</tex></center> | ||
Строка 39: | Строка 41: | ||
Дополнительная свободная переменная получается путем применения некоторого преобразования из <tex>G</tex> к одной или к нескольким переменным из множества <tex>\{x\}</tex>. | Дополнительная свободная переменная получается путем применения некоторого преобразования из <tex>G</tex> к одной или к нескольким переменным из множества <tex>\{x\}</tex>. | ||
Базовая модель линейна относительно параметров <tex>w</tex> и нелинейна относительно свободных переменных <tex>x</tex>. | Базовая модель линейна относительно параметров <tex>w</tex> и нелинейна относительно свободных переменных <tex>x</tex>. | ||
- | + | ||
+ | '''3.''' Исходя из поставленных задач выбирается целевая функция — внешний критерий, описывающий качество модели. | ||
Ниже описаны несколько часто используемых внешних критериев. | Ниже описаны несколько часто используемых внешних критериев. | ||
- | + | ||
+ | '''4.''' Индуктивно порождаются модели-претенденты. | ||
При этом вводится ограничение на длину полинома базовой модели. | При этом вводится ограничение на длину полинома базовой модели. | ||
Например, степень полинома базовой модели на не должно превышать заданное число <tex>R</tex>. | Например, степень полинома базовой модели на не должно превышать заданное число <tex>R</tex>. | ||
Строка 55: | Строка 59: | ||
<center><tex>y = w_0 + \sum_{i=1}^{F_0}w_ia_i = w_0 + \mathbf{w}\cdot\mathbf{a}</tex> — скалярное произведение.</center> | <center><tex>y = w_0 + \sum_{i=1}^{F_0}w_ia_i = w_0 + \mathbf{w}\cdot\mathbf{a}</tex> — скалярное произведение.</center> | ||
Каждая порождаемая модель задается линейной комбинацией элементов <tex>\{(w_i,a_i)\}</tex>, в которой множество индексов <tex>\{i\}=s</tex> является подмножеством <tex>\{1,\ldots,F_0\}</tex>. | Каждая порождаемая модель задается линейной комбинацией элементов <tex>\{(w_i,a_i)\}</tex>, в которой множество индексов <tex>\{i\}=s</tex> является подмножеством <tex>\{1,\ldots,F_0\}</tex>. | ||
- | + | ||
+ | '''5.''' Настраиваются параметры моделей. Для настройки используется <i>внутренний критерий</i> — критерий, вычисляемый с использованием обучающей выборки. | ||
Каждому элементу вектора <tex>\mathbf{x}_n</tex> — элемента выборки <tex>D</tex> ставится в соответствие вектор <tex>\mathbf{a}_n</tex>, [[алгоритм]] построения соответствия указан выше. | Каждому элементу вектора <tex>\mathbf{x}_n</tex> — элемента выборки <tex>D</tex> ставится в соответствие вектор <tex>\mathbf{a}_n</tex>, [[алгоритм]] построения соответствия указан выше. | ||
Строится матрица <tex>A_W</tex> — набор векторов-столбцов <tex>\mathbf{a}_i</tex>. Матрица <tex>A_W</tex> разбивается на подматрицы <tex>A_\ell</tex> и <tex>A_C</tex>. | Строится матрица <tex>A_W</tex> — набор векторов-столбцов <tex>\mathbf{a}_i</tex>. Матрица <tex>A_W</tex> разбивается на подматрицы <tex>A_\ell</tex> и <tex>A_C</tex>. | ||
Строка 65: | Строка 70: | ||
В соответствии с критерием <tex>\eps^2_G\longrightarrow\min</tex> происходит настройка параметров <tex>\mathbf{w}</tex> и вычисление ошибки на тестовой подвыборке, | В соответствии с критерием <tex>\eps^2_G\longrightarrow\min</tex> происходит настройка параметров <tex>\mathbf{w}</tex> и вычисление ошибки на тестовой подвыборке, | ||
обозначенной <tex>G</tex>, здесь <tex>G=\ell</tex>. При усложнении модели внутренний критерий не дает минимума для моделей оптимальной сложности, поэтому для выбора модели он не пригоден. | обозначенной <tex>G</tex>, здесь <tex>G=\ell</tex>. При усложнении модели внутренний критерий не дает минимума для моделей оптимальной сложности, поэтому для выбора модели он не пригоден. | ||
- | + | ||
+ | '''6.''' Для выбора моделей вычисляется качество порожденных моделей. | ||
При этом используется контрольная выборка и назначенный внешний критерий. | При этом используется контрольная выборка и назначенный внешний критерий. | ||
Ошибка на подвыборке <tex>H</tex> обозначается | Ошибка на подвыборке <tex>H</tex> обозначается | ||
Строка 71: | Строка 77: | ||
где <tex>H\in\{\ell,C\}</tex>, <tex>H{\cap}G=\emptyset</tex>. | где <tex>H\in\{\ell,C\}</tex>, <tex>H{\cap}G=\emptyset</tex>. | ||
Это означает что ошибка вычисляется на подвыборке <tex>H</tex> при параметрах модели, полученных на подвыборке <tex>G</tex>. | Это означает что ошибка вычисляется на подвыборке <tex>H</tex> при параметрах модели, полученных на подвыборке <tex>G</tex>. | ||
- | + | ||
+ | '''7.''' Модель, доставляющая минимум внешнему критерию, считается оптимальной. | ||
Если значение внешнего критерия не достигает своего минимума при увеличении сложности модели или значение функции качества неудовлетворительно, то выбирается лучшая модель из моделей заданной сложности. | Если значение внешнего критерия не достигает своего минимума при увеличении сложности модели или значение функции качества неудовлетворительно, то выбирается лучшая модель из моделей заданной сложности. | ||
Строка 81: | Строка 88: | ||
* при анализе временных рядов существует значительная временная задержка отыскиваемой причинно-следственной связи. | * при анализе временных рядов существует значительная временная задержка отыскиваемой причинно-следственной связи. | ||
- | == Внешние критерии == | + | == Внешние критерии МГУА == |
Авторами метода рассмотрены весьма большое число различных критериев выбора моделей. | Авторами метода рассмотрены весьма большое число различных критериев выбора моделей. | ||
Строка 269: | Строка 276: | ||
* [[Генетическое программирование]] | * [[Генетическое программирование]] | ||
* [[Регрессионный анализ]] | * [[Регрессионный анализ]] | ||
+ | * [[Медиа:DM_L3-2_part1.pdf |Метод группового учета аргументов (презентация)]] | ||
+ | * [[GMDH Shell]] | ||
== Литература == | == Литература == | ||
Строка 275: | Строка 284: | ||
* Malada, H.R., Ivakhnenko, A.G. Inductive Learning Algorithms for Complex Systems Modeling. CRC Press. 1994. | * Malada, H.R., Ivakhnenko, A.G. Inductive Learning Algorithms for Complex Systems Modeling. CRC Press. 1994. | ||
* Стрижов В. В. Методы индуктивного порождения регрессионных моделей. М.: ВЦ РАН. 2008. 55 с. [[Media:strijov08ln.pdf|Брошюра, PDF]]. | * Стрижов В. В. Методы индуктивного порождения регрессионных моделей. М.: ВЦ РАН. 2008. 55 с. [[Media:strijov08ln.pdf|Брошюра, PDF]]. | ||
+ | * Стрижов В.В., Крымова Е.А. Методы выбора регрессионных моделей. М.: ВЦ РАН, 2010. 60 с. [[Media:Strijov-Krymova10Model-Selection.pdf|Брошюра, PDF]]. | ||
== Внешние ссылки == | == Внешние ссылки == | ||
Строка 281: | Строка 291: | ||
[[Категория:Регрессионный анализ]] | [[Категория:Регрессионный анализ]] | ||
[[Категория:Энциклопедия анализа данных]] | [[Категория:Энциклопедия анализа данных]] | ||
+ | [[Категория:Популярные и обзорные статьи]] |
Текущая версия
Метод группового учета аргументов, МГУА (Group Method of Data Handling, GMDH) метод порождения и выбора регрессионных моделей оптимальной сложности. Под сложностью модели в МГУА понимается число параметров. Для порождения используется [базовая модель], подмножество элементов которой должно входить в искомую модель. Для выбора моделей используются внешние критерии, специальные функционалы качества моделей, вычисленные на тестовой выборке.
МГУА рекомендуется к использованию в том случае, когда выборка содержит несколько элементов. Тогда при построении регрессионных моделей использовать статистические гипотезы о плотности распределения, плотности распределения например, гипотезу о Гауссовском распределении, невозможно. Поэтому используется индуктивный подход, согласно которому последовательно порождаются модели возрастающей сложности до тех пор, пока не будет найден минимум некоторого критерия качества модели. Этот критерий качества называется внешний критерий, так как при настройке моделей и при оценке качества моделей используются разные данные. Достижение глобального минимума внешнего критерия при порождении моделей означает, что модель, доставляющая такой минимум, является искомой.
Один из авторов этого метода А.Г. Ивахненко пишет: «Осуществляется целенаправленный перебор многих моделей-претендентов различной сложности по ряду критериев. В результате находится модель оптимальной структуры в виде одного уравнения или системы уравнений. Минимум критерия селекции определяет модель оптимальной структуры».
Содержание |
Описание алгоритма МГУА
Индуктивный алгоритм отыскания модели оптимальной структуры в состоит из следующих основных шагов.
1. Пусть задана выборка , . Выборка разбивается на обучающую и тестовую. Обозначим множества индексов из . Эти множества удовлетворяют условиям разбиения . Матрица состоит из тех векторов-строк , для которых индекс . Вектор состоит из тех элементов , для которых индекс . Разбиение выборки представляется в виде
2. Назначается базовая модель. Эта модель описывает отношение между зависимой переменной и свободными переменными . Например, используется функциональный ряд Вольтерра, называемый также полиномом Колмогорова-Габора:
В этой модели множество свободных переменных и вектор параметров весовых коэффициентов
В некоторых случаях имеет смысл увеличить число элементов вектора свободной переменной за счет добавления нелинейных преобразований отдельных переменных. Например, задано конечное множество нелинейных функций . Дополнительная свободная переменная получается путем применения некоторого преобразования из к одной или к нескольким переменным из множества . Базовая модель линейна относительно параметров и нелинейна относительно свободных переменных .
3. Исходя из поставленных задач выбирается целевая функция внешний критерий, описывающий качество модели. Ниже описаны несколько часто используемых внешних критериев.
4. Индуктивно порождаются модели-претенденты. При этом вводится ограничение на длину полинома базовой модели. Например, степень полинома базовой модели на не должно превышать заданное число . Тогда базовая модель представима в виде линейной комбинации заданного числа произведений свободных переменных:
здесь линейная комбинация. Аргументы этой функции переобозначаются следующим образом:
то есть,
Для линейно входящих коэффициентов задается одноиндексная нумерация . Тогда модель может быть представлена в виде линейной комбинации
Каждая порождаемая модель задается линейной комбинацией элементов , в которой множество индексов является подмножеством .
5. Настраиваются параметры моделей. Для настройки используется внутренний критерий критерий, вычисляемый с использованием обучающей выборки. Каждому элементу вектора элемента выборки ставится в соответствие вектор , алгоритм построения соответствия указан выше. Строится матрица набор векторов-столбцов . Матрица разбивается на подматрицы и . Наименьшую невязку , где доставляет значение вектора параметров , который вычисляется методом наименьших квадратов:
При этом в качестве внутреннего критерия выступает среднеквадратичная ошибка
В соответствии с критерием происходит настройка параметров и вычисление ошибки на тестовой подвыборке, обозначенной , здесь . При усложнении модели внутренний критерий не дает минимума для моделей оптимальной сложности, поэтому для выбора модели он не пригоден.
6. Для выбора моделей вычисляется качество порожденных моделей. При этом используется контрольная выборка и назначенный внешний критерий. Ошибка на подвыборке обозначается
где , . Это означает что ошибка вычисляется на подвыборке при параметрах модели, полученных на подвыборке .
7. Модель, доставляющая минимум внешнему критерию, считается оптимальной.
Если значение внешнего критерия не достигает своего минимума при увеличении сложности модели или значение функции качества неудовлетворительно, то выбирается лучшая модель из моделей заданной сложности. Под сложностью модели подразумевается число настраиваемых параметров модели. Существуют следующие причины, по которым глобальный минимум может не существовать:
- данные слишком зашумлены,
- среди данных нет необходимых для отыскания модели переменных,
- неверно задан критерий выбора,
- при анализе временных рядов существует значительная временная задержка отыскиваемой причинно-следственной связи.
Внешние критерии МГУА
Авторами метода рассмотрены весьма большое число различных критериев выбора моделей. Значительная часть этих критериев опубликована на сайте http://www.gmdh.net.
Критерий выбора модели может быть назван внешним, если он получен с помощью дополнительной информации, не содержащейся в данных которые использовались при вычислении параметров моделей. Например, такая информация содержится в дополнительной, тестовой выборке.
Алгоритм МГУА использует и внутренний критерий и внешний. Внутренний критерий используется для настройки параметров модели, внешний критерий используется для выбора модели оптимальной структуры. Возможен выбор моделей по нескольким внешним критериям.
Критерий регулярности
Критерий регулярности включает среднеквадратичную ошибку на обучающей подвыборке полученную при параметрах модели, настроенных на тестовой подвыборке .
где
и
Другие модификации критерия регулярности:
и
где среднее значение вектора .
Критерий также обозначается , то есть ошибка на подвыборке , при параметрах, полученных на подвыборке .
Критерий минимального смещения
Иначе критерий непротиворечивости модели: модель которая имеет на обучающей выборке одну невязку, а на контрольной другую, называется противоречивой. Этот критерий включает разность между зависимыми переменными модели, вычисленными на двух различных выборках и . Критерий не включает ошибку модели в явной форме. Он требует, чтобы оценки коэффициентов в оптимальной модели, вычисленные на множествах и , различались минимально.
Критерий непротиворечивости как критерий минимума смещения имеет вид
Другие модификации этого критерия:
и
где и векторы коэффициентов, полученные с использованием подвыборок и . При использовании последнего варианта следует помнить, что число элементов вектора параметров в различных моделях может быть различно.
Критерий absolute noise-immune
Утверждается, что с помощью этого критерия, из сильно зашумленных данных возможно найти скрытые физические закономерности.
где вектор коэффициентов, полученный на всей выборке .
Критерий предсказательной способности
Является модификацией критерия регулярности. Этот критерий включает среднеквадратичную ошибку для отдельной экзаменационной выборки , которая не была использована ни при нахождении коэффициентов, ни при выборе моделей. В этом случае выборка делится не на две, а на три части:
Критерий предсказательной способности имеет вид
Комбинированный критерий
Этот критерий позволяет использовать при выборе моделей линейную комбинацию нескольких критериев. Комбинированный критерий
Здесь принятые на рассмотрение критерии, а веса этих критериев, назначенные в начале вычислительного эксперимента.
Используются также нормализованные значения критериев. При этом предыдущая формула имеет вид
Максимальное значение критерия берется по вычисленным значениям критериев для всех порожденных моделей. В данном случае оптимальная модель может быть найдена только после завершения настройки параметров всех моделей.
Пример распространенного комбинированного критерия смещение плюс ошибка аппроксимации.
где нормализованная среднеквадратичная ошибка аппроксимации на всей выборке с использованием коэффициентов, полученных также на .
Второй пример комбинированного критерия смещение плюс регулярность.
Третий пример смещение плюс ошибка на тестовой выборке.
Такой критерий обеспечивает выбор наиболее несмещенных, устойчивых и точных моделей. Здесь среднеквадратичная ошибка, вычисленная на выборке , с весами, настроенными на всей выборке .
Обычно при вычислении критерия выборку делят на три части в пропорциях , и . Выборки и используются для вычисления критерия минимального смещения, а выборка для вычисления ошибки предсказания. Для критериев и выборка обычно делится на две равные части.
Парето-оптимальный фронт в пространстве критериев
Парето-оптимальный фронт альтернатива комбинированным критериям. Выбирается множество внешних критериев, условиям оптимальности которых должна удовлетворять модель. Каждой модели ставится в соответствие вектор в пространстве выбранных критериев. Отыскиваются векторы, принадлежащие Парето-оптимальному фронту множества всех векторов, соответствующих порожденным моделям. При создании комбинированного критерия рассматриваются модели, критерии которых принадлежат полученному Парето-оптимальному фронту.
Алгоритм порождения моделей МГУА
Целю МГУА является получение модели в результате перебора моделей из индуктивно-порождаемого множества. Параметры каждой модели настраиваются так, чтобы доставить минимум выбранному внешнему критерию. Различают два основных типа алгоритмов МГУА однорядный и многорядный.
Все алгоритмы МГУА воспроизводят схему массовой селекции: последовательно порождаются модели возрастающей сложности. Каждая модель настраивается методом наименьших квадратов находятся значения параметров. Из моделей-претендентов выбираются лучшие в соответствии с выбранным критерием. Многорядные алгоритмы могут вычислять остатки регрессионных моделей после каждого ряда селекции или не вычислять; при этом используются исходные данные.
Каждая полиномиальная модель однозначно определяется набором индексов входящих в нее мономов
Элементы вектора коэффициенты при мономе полинома Колмогорова-Габора; элементы вектора результат произведения свободных переменных соответствующих мономов. Индексы есть индексы мономов, входящих в модель. Иначе, произвольная модель
порождается набором индексов , включающих соотвествующие элементы векторов
При ограничении степени полинома числом , число мономов полинома равно
а число моделей первого ряда соответственно равно . Здесь число сочетаний с повторениями из по , число свободных переменных элементов вектора .
Комбинаторный алгоритм
Комбинаторный (однорядный) алгоритм использует только один ряд выбора. При этом порождаются все возможные линейные комбинации ограниченной сложности. Так как под сложностью понимается число линейно входящих параметров , то сложность не превосходит заданное значение . Пусть, как и ранее
Алгоритм выполняет следующие шаги. Для всех комбинаций входных аргументов строятся модели-претенденты неубывающей сложности. Например,
Параметры каждой модели настраиваются методом наименьших квадратов по обучающей выборке. Наилучшая модель выбирается исходя из минимума значения внешнего критерия. Как вариант назначается порог и выбираются несколько моделей, значения критерия для которых не превышает этот порог.
При программировании данного алгоритма удобно ввести переменную выбора вектор . Его элемент принимает значение 1, если , в противном случае 0. Тогда модель имеет вид
Последовательность векторов для предыдущего примера выглядит как
Так как при порождении моделей необходимо выбирать из моделей, что может повлечь недопустимо большое время вычислений, предложены несколько эвристических алгоритмов, позволяющих сократить время вычислений, без уменьшения максимальной сложности моделей.
Многорядный алгоритм
На первом ряде алгоритма порождения моделей задано множество из переменных . Порождаются модели как линейные комбинации всевозможных пар переменных
Число моделей первого ряда есть число сочетаний . Каждая модель, порождаемая на ряде задается парой индексов . После порождения моделей их параметры настраиваются с использованием внутреннего критерия. Затем выбираются наилучших моделей с использованием внешнего критерия. Эти модели используются в следующем ряде. Множество выбранных моделей задано множеством пар индексов . На первом ряде индексы выбранных моделей принадлежат множеству .
На каждом последующем ряде новые модели порождаются как суммы всевозможных пар выбранных моделей предыдущего ряда. Например, для второго ряда множество моделей
Порожденные модели снова настраиваются, выбираются наилучшие. Индексы, задающие выбранные модели принадлежат множеству , где .
Таким образом на -м ряде c помощью вышеприведенного алгоритма выбирается множество моделей, задаваемых множеством наборов индексов , которые принадлежат полученному множеству . При этом индексация элементов моделей остается сквозной,
Остановка порождения моделей на последующих рядах происходит в том случае, когда с увеличением номера слоя, то есть, с усложнением моделей, происходит увеличение внешнего критерия лучшей модели.
Смотри также
- Связанный Байесовский вывод
- Генетическое программирование
- Регрессионный анализ
- Метод группового учета аргументов (презентация)
- GMDH Shell
Литература
- Ивахненко А.Г. Индуктивный метод самоорганизации моделей сложных систем. Киев: Наукова думка. 1981.
- Ивахненко А.Г., Степашко В.С. Помехоустойчивость моделирования. Киев: Наукова думка. 1985.
- Malada, H.R., Ivakhnenko, A.G. Inductive Learning Algorithms for Complex Systems Modeling. CRC Press. 1994.
- Стрижов В. В. Методы индуктивного порождения регрессионных моделей. М.: ВЦ РАН. 2008. 55 с. Брошюра, PDF.
- Стрижов В.В., Крымова Е.А. Методы выбора регрессионных моделей. М.: ВЦ РАН, 2010. 60 с. Брошюра, PDF.