Анализ и сравнение МГУА алгоритмов
|
Аннотация 2
ВВЕДЕНИЕ 5
1 Предварительный анализ алгоритмов машинного обучения и вспомогательных
систем 6
1.1 Анализ алгоритмов машинного обучения 7
1.1.1 Глубокие нейронные сети 7
1.1.2 Базовые алгоритмы 9
1.1.3 Алгоритмы семейства МГУА 10
1.2 Граф экспериментов 12
2 Описание полученных реализаций алгоритмов и графа экспериментов 16
2.1 Исходные данные 16
2.1.1 Искусственные данные 17
2.1.2 Реальный набор данных 18
2.2 Используемые технологии 19
2.2.1 Язык программирования и библиотеки 19
2.2.2 Технические характеристики вычислительного устройства 20
2.3 Реализация алгоритмов 20
2.3.1 Базовые алгоритмы 20
2.3.2 Комбинаторный алгоритм 22
2.3.3 Многорядный алгоритм 23
2.3.4 Многорядный алгоритм с обратной связью Т. Кандо 24
2.4 Используемые метрики качества 25
2.5 Построение графа экспериментов 26
2.5.1 Система-оркестратор вычислительного графа 27
2.5.2 Узлы графа экспериментов 28
3 Анализ результатов экспериментов 30
3.1 Полиномиальная зависимость со слабой связью входных переменных 30
3.2 Экспоненциальная зависимость 34
3.3 Зависимость с полиномиально-экспоненциальным законом 36
3.4 Реальный набор данных 38
ЗАКЛЮЧЕНИЕ 42
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ И ЛИТЕРАТУРЫ 43
ПРИЛОЖЕНИЕ А. Описание колонок реального набора данных 45
ПРИЛОЖЕНИЕ Б. Средняя сложность многослойных МГУА моделей на выбранных наборах данных 46
ВВЕДЕНИЕ 5
1 Предварительный анализ алгоритмов машинного обучения и вспомогательных
систем 6
1.1 Анализ алгоритмов машинного обучения 7
1.1.1 Глубокие нейронные сети 7
1.1.2 Базовые алгоритмы 9
1.1.3 Алгоритмы семейства МГУА 10
1.2 Граф экспериментов 12
2 Описание полученных реализаций алгоритмов и графа экспериментов 16
2.1 Исходные данные 16
2.1.1 Искусственные данные 17
2.1.2 Реальный набор данных 18
2.2 Используемые технологии 19
2.2.1 Язык программирования и библиотеки 19
2.2.2 Технические характеристики вычислительного устройства 20
2.3 Реализация алгоритмов 20
2.3.1 Базовые алгоритмы 20
2.3.2 Комбинаторный алгоритм 22
2.3.3 Многорядный алгоритм 23
2.3.4 Многорядный алгоритм с обратной связью Т. Кандо 24
2.4 Используемые метрики качества 25
2.5 Построение графа экспериментов 26
2.5.1 Система-оркестратор вычислительного графа 27
2.5.2 Узлы графа экспериментов 28
3 Анализ результатов экспериментов 30
3.1 Полиномиальная зависимость со слабой связью входных переменных 30
3.2 Экспоненциальная зависимость 34
3.3 Зависимость с полиномиально-экспоненциальным законом 36
3.4 Реальный набор данных 38
ЗАКЛЮЧЕНИЕ 42
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ И ЛИТЕРАТУРЫ 43
ПРИЛОЖЕНИЕ А. Описание колонок реального набора данных 45
ПРИЛОЖЕНИЕ Б. Средняя сложность многослойных МГУА моделей на выбранных наборах данных 46
Одной из основных проблем, решаемых на этапе проектирования сложных моделей, является непосредственный выбор архитектуры и
“полезных” переменных, то есть таких признаков наблюдения, информация которых может быть применена для формирования предсказания какого-то значения или принадлежности к одному из заранее известных классов объектов.
Особенно остро эта проблема ощущается при работе с так называемыми сетями глубокого обучения [1]. Архитектор вынужден создавать структуру сети оперируя априорными суждениями о решаемой таким образом задачи и используемыми для этого признаками. Острота проблемы обосновывается рядом причин. Так, высокая вариативность сетей, порожденная отсутствием ограничений по количеству слоев сети и наличием в распоряжении множества видов узлов, которые могут находиться в каждом слое, вполне может сильно озадачить начинающего специалиста и представлять сложную задачу без четкого алгоритма решения для более опытного исследователя. Не менее проблематична высокая цена ошибка: такие сети требуют немалые вычислительные мощности, а сам процесс обучения может длиться многие часы и даже дни.
Решением проблемы могут быть алгоритмы, использующие метод группового учета аргументов (МГУА). МГУА - семейство индуктивных алгоритмов, решающих задачу математического моделирования сложных систем, обладающих множеством параметров. В основе алгоритмов этого семейства лежит автоматическое построение структуры конечной модели и оптимизация её параметров. Метод был предложен в 1968 году профессором Ивахненко А.Г. и сразу же получил широкое распространение среди многих ученых. Такие алгоритмы способны сами определять свою архитектуру и в тоже время сохранять свою интерпретируемость, то есть обученные МГУА модели в последствии могут использоваться для отбора только полезных признаков и так же служить подсказкой для определения необходимой структуры нейронной сети.
Целью данной работы будет изучение предложенных изначально автором алгоритмов [2] на искусственном и реальном наборе данных со сбором статистики о конечном качестве моделей и их процессе обучения. Для обоснования полученных данных будет создаваться несколько тестовых и тренировочных выборок для каждого набора данных, после чего будут анализироваться статистические характеристики полученной выборки. Все начальные значения генераторов псевдослучайных чисел будут зафиксированы, а сами эксперименты оформлены в виде графа экспериментов. Таким 5
образом эксперименты могут быть легко воспроизведены, а сами результаты обоснованы и могут иметь применение рекомендательного характера - исследователь на основании данных этой статьи может предположить какой алгоритм МГУА ему следует использовать.
Для лучшего интерпретирования показателей качества моделей МГУА в сравнение будет добавлено несколько классических алгоритмов машинного обучения: алгоритм линейной регрессии, алгоритм регрессии методом опорных векторов и дерево регрессии - адаптация алгоритма построения дерева решений для задачи регрессии. Их показатели будут использоваться для определения нижней границы качества.
Проведение данной исследовательской работы обоснованно несколькими причинами. Во-первых, не было найдено существующих реализаций классических МГУА алгоритмов с общим удобным интерфейсом обучения и формирования предсказаний. Все встреченные нами реализации либо являлись, либо многочисленными модификациями исходного алгоритма, либо не поддерживали ни одну из современных библиотек по организации обучения моделей машинного обучения. Во-вторых, чаще всего, встреченные нами исследования по применению МГУА алгоритмов применялись для решения конкретной реальной задачи на одном наборе данных без множественного повторения на разных его выборках, открытого доступа к исходным данным и коду используемых алгоритмов. В итоге такие исследования несут малое практическое применения для дальнейшего изучения применимости алгоритма, а лишь показывают единичные и слабо обоснованные случаи успеха или провала в их использовании на одном конкретном наборе данных, доступ к которому не предоставляется.
В ходе данной работы будут написаны реализации на языке Python предложенных для исследования МГУА алгоритмов с поддержкой взаимодействия по средствам интерфейса с одной из самых популярных библиотек для машинного обучения на языке Python - sklearn. Исходный код алгоритмов и графа экспериментов будет находится в открытом доступе. Данные, используемые в экспериментах, будут взяты либо из открытых источников, для реального набора данных, либо могут быть повторно сгенерированы, благодаря фиксации всех случайных значений.
“полезных” переменных, то есть таких признаков наблюдения, информация которых может быть применена для формирования предсказания какого-то значения или принадлежности к одному из заранее известных классов объектов.
Особенно остро эта проблема ощущается при работе с так называемыми сетями глубокого обучения [1]. Архитектор вынужден создавать структуру сети оперируя априорными суждениями о решаемой таким образом задачи и используемыми для этого признаками. Острота проблемы обосновывается рядом причин. Так, высокая вариативность сетей, порожденная отсутствием ограничений по количеству слоев сети и наличием в распоряжении множества видов узлов, которые могут находиться в каждом слое, вполне может сильно озадачить начинающего специалиста и представлять сложную задачу без четкого алгоритма решения для более опытного исследователя. Не менее проблематична высокая цена ошибка: такие сети требуют немалые вычислительные мощности, а сам процесс обучения может длиться многие часы и даже дни.
Решением проблемы могут быть алгоритмы, использующие метод группового учета аргументов (МГУА). МГУА - семейство индуктивных алгоритмов, решающих задачу математического моделирования сложных систем, обладающих множеством параметров. В основе алгоритмов этого семейства лежит автоматическое построение структуры конечной модели и оптимизация её параметров. Метод был предложен в 1968 году профессором Ивахненко А.Г. и сразу же получил широкое распространение среди многих ученых. Такие алгоритмы способны сами определять свою архитектуру и в тоже время сохранять свою интерпретируемость, то есть обученные МГУА модели в последствии могут использоваться для отбора только полезных признаков и так же служить подсказкой для определения необходимой структуры нейронной сети.
Целью данной работы будет изучение предложенных изначально автором алгоритмов [2] на искусственном и реальном наборе данных со сбором статистики о конечном качестве моделей и их процессе обучения. Для обоснования полученных данных будет создаваться несколько тестовых и тренировочных выборок для каждого набора данных, после чего будут анализироваться статистические характеристики полученной выборки. Все начальные значения генераторов псевдослучайных чисел будут зафиксированы, а сами эксперименты оформлены в виде графа экспериментов. Таким 5
образом эксперименты могут быть легко воспроизведены, а сами результаты обоснованы и могут иметь применение рекомендательного характера - исследователь на основании данных этой статьи может предположить какой алгоритм МГУА ему следует использовать.
Для лучшего интерпретирования показателей качества моделей МГУА в сравнение будет добавлено несколько классических алгоритмов машинного обучения: алгоритм линейной регрессии, алгоритм регрессии методом опорных векторов и дерево регрессии - адаптация алгоритма построения дерева решений для задачи регрессии. Их показатели будут использоваться для определения нижней границы качества.
Проведение данной исследовательской работы обоснованно несколькими причинами. Во-первых, не было найдено существующих реализаций классических МГУА алгоритмов с общим удобным интерфейсом обучения и формирования предсказаний. Все встреченные нами реализации либо являлись, либо многочисленными модификациями исходного алгоритма, либо не поддерживали ни одну из современных библиотек по организации обучения моделей машинного обучения. Во-вторых, чаще всего, встреченные нами исследования по применению МГУА алгоритмов применялись для решения конкретной реальной задачи на одном наборе данных без множественного повторения на разных его выборках, открытого доступа к исходным данным и коду используемых алгоритмов. В итоге такие исследования несут малое практическое применения для дальнейшего изучения применимости алгоритма, а лишь показывают единичные и слабо обоснованные случаи успеха или провала в их использовании на одном конкретном наборе данных, доступ к которому не предоставляется.
В ходе данной работы будут написаны реализации на языке Python предложенных для исследования МГУА алгоритмов с поддержкой взаимодействия по средствам интерфейса с одной из самых популярных библиотек для машинного обучения на языке Python - sklearn. Исходный код алгоритмов и графа экспериментов будет находится в открытом доступе. Данные, используемые в экспериментах, будут взяты либо из открытых источников, для реального набора данных, либо могут быть повторно сгенерированы, благодаря фиксации всех случайных значений.
Согласно результатам этой работы, мы можем говорить о состоятельности идей Метода Группового Учета Аргументов в задачах машинного обучения. Несмотря на довольно небольшой список рассматриваемых зависимостей, мы удостоверились в корректности обучения моделей и их конечном качестве. В пользу этого говорит и успешное применение на реальном наборе данных, предлагающего задачу регрессии по оценки стоимости дома исходя из ряда описывающих его признаков.
Все результаты могут быть легко воспроизведены любым желающим. Это гарантируется зафиксированными начальными значениями генераторов псевдослучайных чисел, общей доступностью используемых данных, а также возможностью получения исходного кода моделей и графа экспериментов. Сам граф в последствии может быть использован для изучения поведения алгоритмов на дополнительных наборах данных или же для анализа других МГУА алгоритмов и их модификаций.
Проведенные нами исследования показывают наличие довольно широкой области применимости предложенных МГУА алгоритмов, но, всё же, это выходит за рамки работы и требует более досконального исследования типов функций, которые могут быть приближенно вычислены с помощью построенных алгоритмами МГУА моделей. Если теоретические обоснования об отсутствии каких-либо ограничении по области применимости подтвердятся на практике, МГУА может быть использовано для создания рекомендательных систем по определению оптимальной архитектуры сети, в силу их высокой интерпретируемости. Однако, для подтверждения теоретических обосновании необходимы множественные эксперименты, опять же выходящие за рамки данного исследования.
Так же, дополнительной областью применения может быть процесс отбора полезных признаков. В литературе часто встречается утверждение, что при полном переборе модели МГУА отсеивают не информативные признаки и оставляют только наиболее ценные данные о наблюдениях. Такое утверждение, опять же, требует дополнительных подробных исследований, выходящих за рамки текущей работы.
Итоги работы указывают на достижение поставленных целей по изучению практического применения предложенных МГУА алгоритмов и открывают возможности для проведения более подробных исследований возможных способов применения получаемых с помощью МГУА моделей.
Все результаты могут быть легко воспроизведены любым желающим. Это гарантируется зафиксированными начальными значениями генераторов псевдослучайных чисел, общей доступностью используемых данных, а также возможностью получения исходного кода моделей и графа экспериментов. Сам граф в последствии может быть использован для изучения поведения алгоритмов на дополнительных наборах данных или же для анализа других МГУА алгоритмов и их модификаций.
Проведенные нами исследования показывают наличие довольно широкой области применимости предложенных МГУА алгоритмов, но, всё же, это выходит за рамки работы и требует более досконального исследования типов функций, которые могут быть приближенно вычислены с помощью построенных алгоритмами МГУА моделей. Если теоретические обоснования об отсутствии каких-либо ограничении по области применимости подтвердятся на практике, МГУА может быть использовано для создания рекомендательных систем по определению оптимальной архитектуры сети, в силу их высокой интерпретируемости. Однако, для подтверждения теоретических обосновании необходимы множественные эксперименты, опять же выходящие за рамки данного исследования.
Так же, дополнительной областью применения может быть процесс отбора полезных признаков. В литературе часто встречается утверждение, что при полном переборе модели МГУА отсеивают не информативные признаки и оставляют только наиболее ценные данные о наблюдениях. Такое утверждение, опять же, требует дополнительных подробных исследований, выходящих за рамки текущей работы.
Итоги работы указывают на достижение поставленных целей по изучению практического применения предложенных МГУА алгоритмов и открывают возможности для проведения более подробных исследований возможных способов применения получаемых с помощью МГУА моделей.





