Комплексный эволюционный подход для автоматического проектирования коллективов нейронных сетей

Таким образом, в настоящей статье описаны процессы, часто встречающиеся в технологии, производстве, экономике, социологии и др., которые, за исключением, процесса, представленного на рис. 1, можно считать слабо изученными. Тем не менее, они представляются значимыми в связи с тем, что имеют прямое отношение к реальности. При моделировании этих процессов важнейшими являются уровень и объем априорной информации (основа для математической формулировки задачи идентификации), дополнительной информации об исследуемом процессе и средства и технология контроля, измерения переменных. Последнее особенно касается организационных процессов.

Библиографические ссылки

1. Медведев А. В. Теория непараметрических систем. Общий подход // Вестник СибГАУ 2008. Вып. 3.

2. Фельдбаум А. А. Основы теории оптимальных автоматических систем. М. : Физматгаз, 1963.

3. Цыпкин Я. З. Адаптация и обучение в автоматических системах. М. : Наука, 1968.

4. Медведев А. В. Непараметрические системы адаптации. Новосибирск : Наука, 1983.

5. Методы классической и современной теории автоматического управления : в 2 т. Т. 1. Математические модели, динамические характеристики и анализ систем управления / под ред. К. А. Пупкова, Н. Д. Егупова. М. : Изд. МГТУ им. Н. Э. Баумана, 2004.

6. Методы классической и современной теории автоматического управления: в 2 т. Т. 2. Статистическая динамика и идентификация систем автоматического управления / под ред. К. А. Пупкова, Н. Д. Егупова. М. : Изд. МГТУ им. Н. Э. Баумана, 2004.

7. Медведев А. В. О моделировании организационных процессов // Вестн. Сиб. гос. аэрокосмич. акад. им. акад. М. Ф. Решетнева : сб. науч. тр./ под ред. Г. П. Белякова ; Сиб. аэрокосмич. акад. Вып. 1. Красноярск, 2000.

8. Медведев А. В. О моделировании организационных процессов // Вестн. Сиб. гос. аэрокосмич. акад. им. акад. М. Ф. Решетнева : сб. науч. тр. / под ред. Г. П. Беляко -ва ; Сиб. аэрокосмич. акад. Вып. 1. Красноярск, 2000

9. Кендалл М., Стьюарт А. Многомерный статистический анализ и временные ряды. М. : Наука, 1976.

A. V. Medvedev

THEORY OF NON-PARAMETRIC SYSTEMS. PROCESSES

The article continuous to report the author’s previous work [1]. The main attention is paid to description of processes (objects), which are not traditional for the identification problems. These processes are more adequate to many real processes proceeding in technological devices, manufacturing, objects of different nature, including organizational systems.

Keywords: non-parametric estimations, non-parametric algorithms, identification, controlling, discrete-continuous processes, convergence.

© Медведев А. В., 2010

УДК 519.85:519.676

В. В. Бухтояров, Е. С. Семенкин

КОМПЛЕКСНЫЙ ЭВОЛЮЦИОННЫЙ ПОДХОД ДЛЯ АВТОМАТИЧЕСКОГО ПРОЕКТИРОВАНИЯ КОЛЛЕКТИВОВ НЕЙРОННЫХ СЕТЕЙ

Предлагается новый комплексный подход для проектирования коллективов нейронных сетей, состоящий из метода автоматического проектирования нейронных сетей и метода автоматического формирования коллективного решения на основе решений отдельных нейронных сетей. Показано, что предлагаемый подход не менее эффективен, чем ряд других подходов для проектирования коллективов нейронных сетей.

Ключевые слова: нейронные сети, коллектив, автоматическое проектирование, генетическое программирование, вероятностный эволюционный алгоритм.

В настоящее время системы анализа данных, в основе методов автоматического проектирования и адаптации которых лежат интеллектуальные информационные тех- ИИТ под конкретные задачи. Такие методы могли бы по-нологии (ИИТ), становятся все более востребованными зволить отказаться от использования для проектирования во многих отраслях человеческой деятельности, а требо- ИИТ дорогих, в основном человеческих, ресурсов и сования к масштабам таких систем неуклонно растут. В связи кратить время, необходимое для разработки интеллекту -с этим все актуальнее становится вопрос о разработке альных систем.

Одной из наиболее широко используемых и востребованных интеллектуальных технологий являются искусственные нейронные сети. Спектр задач, решаемых с помощью нейронных сетей необычайно широк, что обусловлено целым рядом преимуществ систем, основанных на их использовании. Несмотря на то, что данную информационную технологию можно назвать достаточно универсальным средством для решения задач анализа данных, в каждом конкретном случае приходится создавать уникальную в некотором смысле нейронную сеть.

Одним из подходов повышения эффективности систем, в основе которых лежит использование нейронных сетей, является использование коллективов нейронных сетей. Решение задач с помощью коллективов нейронных сетей предполагает одновременное использование конечного числа предварительно обученных нейронных сетей. Этот подход впервые был предложен в работе [1], в которой было показано, что способность к обобщению системы на основе нейронных сетей может быть значительно повышена за счет их объединения в коллектив.

В общем случае формирование коллектива нейронных сетей включает в себя два этапа. Для использования в системах анализа данных желательно, чтобы оба эти этапа были автоматизированы. Первый этап предполагает формирование структуры и обучение нейронных сетей, которые будут включены в коллектив или предварительный пул. Второй этап включает в себя отбор тех сетей, с помощью решений которых будет сформировано итоговое решение, а также определение способа и параметров формирования общего решения.

Формирование предварительного пула нейронный сетей. Для выполнения первого этапа формирования коллектива нейронных сетей часто используется подход, заключающийся в предварительном выборе и фиксации структуры нейронных сетей и обучении их на различных обучающих множествах, сформированных из исходной обучающей выборки задачи. В некоторых случаях при обучении каждой последующей нейронной сети делают упор на ее обучение на тех подмножествах обучающего множества, на которых ошибка всех предыдущих нейронных сетей была велика. Широкое распространение получили и другие подходы для формирования и обучения нейронных сетей, используемых коллективно. В работе [2] предложено использовать нейронные сети с различным числом скрытых нейронов, а в работе [3] предлагается использовать различные целевые функции для настройки каждой отдельной нейронной сети. Основным недостатком таких подходов является необходимость в априорной фиксации структуры нейронной сети, что может негативно сказаться на адаптивности результирующего коллективного решения.

Отдельное направление составляют подходы, основанные на использовании генетических алгоритмов (ГА) для формирования структуры нейронных сетей. Главной сложностью при использовании этих подходов является необходимость в настройке большого числа параметров алгоритма. Зачастую достаточно сложно подобрать правильные настройки генетического алгоритма, так как это требует значительных вычислительных и временных затрат. В то же время плохо настроенный ГА может вообще не решить задачу.

Анализ существующих методов автоматического проектирования структур нейронных сетей, в частности метода, основанного на использовании генетических алгоритмов [4], показывает, что во время работы методов накапливается и обрабатывается статистическая информация о структуре проектируемой нейронной сети. Однако эта информация не используется в явном виде, ее обработка и накопление в неявном виде осуществляется с помощью отдельных операторов конкретного метода, вид которых зависит от настройки соответствующих параметров. Между тем, если предложить метод обработки этой информации в явном виде, то это позволило бы отказаться от процедуры настройки большинства параметров генетического алгоритма, весьма затруднительной при решении реальных практических задач. В связи с этим для автоматического формирования структуры нейронных сетей предлагается новый вероятностный метод, использующий для обработки информации принципы, заложенные в операторах вероятностного генетического алгоритма [5].

Предлагаемый метод основан на вычислении и использовании оценок вероятностей pki j, где і = 1, Nl -номер скрытого слоя нейронной сети; Nl - максимальное число скрытых слоев; у = 1, Nn - номер нейрона на скрытом слое сети; ^^-максимальное число нейронов на скрытом слое; к = 0, Np , где NF - мощность множества активационных функций, которые могут быть использованы при формировании структуры нейронной сети. Если индекс к лежит в интервале [1; Np ], то он соответствует номеру активационной функции в нейроне, если к = 0 , то рку является оценкой вероятности того, что в сети отсутствует у -й нейрон на і -м слое.

В качестве максимально полной в смысле количества слоев и количества нейронов на слоях архитектуры нейронной сети используется полный многослойный пер-септрон с числом скрытых слоев равным Nl, и числом нейронов на каждом скрытом слое равным Nn. Данная архитектура позволяет с помощью номера скрытого слоя и номера нейрона на слое явно указать все возможные положения нейрона в сети.

Решения в рассматриваемом методе предлагается представлять в виде вектора-строки £ целых чисел, принадлежащих интервалу [0; NP ] и длиной Ь = Nl • Nn.

Число элементов этой строки равно максимально возможному числу нейронов на скрытых слоях полного многослойного персептрона. Номер каждого элемента этой строки, представленный в виде

' = Nn •

однозначно определяет местоположение нейрона в структуре искусственной нейронной сети с архитектурой полного персептрона. Поэтому каждый элемент строки можно трактовать следующим образом:

а) если = 0 , то нейрон у на і -м скрытом слое и соответствующие синаптические связи отсутствуют;

б) если Ф 0 , то нейрон у на і -м скрытом слое существует и в нем используется активационная функция с номером £г.

С помощью такой строки можно описать нейронную сеть с любой конфигурацией слоев и нейронов на них, размеры которой не превышают размеры Nl и Nn, указанные для архитектуры многослойного персептрона.

Ниже представлена общая схема предлагаемого метода автоматического формирования структуры искусственных нейронных сетей.

1. Выполнить шаги инициализации метода.

2. Случайным образом сформировать N векторов Б°’1,г = 1, N, установить счетчик итераций к = 0.

3. На к -м шаге поиска произвести оценку решений, представленных £к,г, г = 1, N, положить промежуточное множество £' = 0.

4. С помощью оператора селекции выбрать N ре-

^ ок (ок,1 ок,2 ок,N

шений из текущего множества £ = {£ , £ , ..., £ }

и поместить их в промежуточное множество £' .

5. Используя решения из множества £', вычислить набор оценок вероятностей Р = {р1,} = {р1г}, г = 1, Ь,

I = 1, ^ . '

6. В соответствии с вычисленными оценками вероятностей с помощью датчика псевдослучайных чисел сфор-

пк

мировать промежуточное множество £ , состоящее из N новых решений. ___

7. К решениям из множества £к применяется оператор мутации. ___

8. Из множеств £к и £к формируется новое множе-

^ ок+1

ство решений £ .

9. Если выполняется условие остановки, то лучшее найденное решение объявить результатом работы. Иначе к = к +1 и перейти к шагу 3.

Инициализация метода предполагает указание максимального числа скрытых слоев нейронной сети Nl, максимального числа нейронов на каждом из слоев нейронной сети Nn, определения набора активационных функций £ и максимального числа шагов формирования структуры Nstep, а также указания числа сетей, просматриваемых на каждом шаге формирования структуры £.

На втором шаге метода выполняется генерация начального множества решений. Для того чтобы сгенерировать изначально более простые структуры нейронных сетей, в данном методе были установлены следующие значения вероятностей генератора случайных чисел для различных значений элементов строки-решения:

0, с вероятностью 0,5,

г =

:[1;^ ],

с вероятностью 0,5^

где г = 1, Ь , г = 1, N .

Ключевыми шагами метода являются шаги 5 и 6. На шаге 5, учитывая уравнение (1), для полносвязной нейронной сети оценки вероятностей рассчитываются по следующей формуле:

^пг

X ,

Г=N.

\£Г : £‘ = к, I = 1, Np,

Ркг =-

N..  N

Рр = р1- ,

к = 0, Nр

,р, г = 1,N., ] = 1,Nn, где N. - максимальное число нейронов на скрытом слое; - число скрытых слоев; N - количество ре-

шений в промежуточном родительском множестве; |-| -

мощность множества. ____

На шаге 6 промежуточное множество £к формируется в соответствии с оценками вероятностей, рассчи-

танными на шаге 5. На шагах 5 и 6 предлагаемого метода осуществляются накопление и обработка статистической информации о структурах нейронных сетей в явном виде.

Выбор состава и формирование решения коллектива. На втором этапе должны быть выбраны те нейронные сети, которые будут использованы для расчета коллективного решения, а также должен быть непосредственно определен способ, по которому в коллективном решении будут учтены решения отдельные его членов. Наиболее распространенными вариантами комбинирования решений отдельных нейронных сетей являются равноправное или неравноправное голосование для задач классификации [1] и простое или взвешенное усреднение для задач регрессии [6]. Наиболее разработаны варианты с взвешенным усреднением или неравноправным голосованием. Например, в работе [7] для оценки весовых коэффициентов вклада отдельных нейронных сетей в общее решение используется оценка качества их индивидуальных решений. В работе [8] для определения весовых ко -эффициентов используется генетический алгоритм.

Для повышения эффективности выполнения этого этапа был разработан метод, позволяющий автоматически выбирать из сформированного предварительно пула те нейронные сети, которые будут участвовать в принятии коллективного решения, и формировать это коллективное решение в виде различных преобразований и комбинаций (линейных и нелинейных) решений отдельных участников коллектива нейронных сетей. Предполагается, что, используя коллектив нейронных сетей, возможно найти более эффективное решение задачи с помощью формирования более сложных комбинаций решений отдельных нейронных сетей, чем простое или взвешенное усреднение и равноправное или неравноправное голосование.

Предлагаемый подход основан на методе генетического программирования [9], который используется для решения задач символьной регрессии. Основная идея заключается в адаптации и использовании операторов генетического программирования для автоматического формирования решения, представляющего собой формулу (программу) для вычисления общего решения коллектива нейронных сетей на основе решений, полученных от его отдельных членов.

Для построения решения предлагаемый метод использует элементы терминального и функционального множеств. В качестве терминального множества - множества термов, из которых будут строиться решения, - используются ответы, данные нейронными сетями из предварительного пула, а не непосредственно переменные задачи, как в методе генетического программирования. В терминальное множество также включены числовые константы, настройка которых позволяет получить более адаптивное общее решение коллектива нейронных сетей. В качестве элементов функционального множества используются различные операции и функции, определяющие вид зависимостей между коллективным решением и решениями, полученными с помощью отдельных нейронных сетей.

Общая схема предлагаемого метода представлена ниже и в основе своей совпадает с шагами метода генетического программирования, используемого для аппроксимации функций.

1. Инициализация начальной популяции решений.

2. Пока не будет выполнен критерий останова, выполняется итерационная процедура, состоящая из следующих подшагов:

2.1. Вычисляется пригодность для каждого индивида текущего поколения.

2.2. С вероятностью, связанной с найденным значением пригодности, выбирается один или несколько индивидов из популяции для выполнения генетических операций.

2.3. Создается новая популяция индивидов-программ с помощью выполнения с заданной вероятностью следующих генетических операторов:

2.3.1. Создание нового индивида с помощью скрещивания.

2.3.2. Создание нового индивида с помощью мутации.

2.3.3. Простое копирование существующего индивида в новое поколение.

3. После того как будет выполнен критерий останова, лучшее решение, найденное в ходе выполнения алгоритма, объявляется результатом работы алгоритма.

Решения кодируются в виде деревьев, внешние вершины которых формируются из элементов терминального множества, а внутренние - из элементов функционального множества. В качестве элементов функционального множества могут быть использованы арифметические операции, математические функции, булевы операции.

Общее коллективное решение, сформированное с помощью предлагаемого метода, представляет собой некоторую функцию, входными параметрами которой являются частные решения нейронных сетей, включенных в коллектив:

0 = / (^ 02, ..., °п ),

где о - общее решение; оі - индивидуальное решение і -й сети; п - число сетей в коллективе.

Предлагаемый метод позволяет расширить гибкость системы, основанной на использовании коллективов нейронных сетей, за счет отсутствия твердо закрепленной структуры взаимодействия между индивидуальными сетями, формирующими коллектив. При этом рассматриваемый метод не только формирует структуру взаимодействия между членами коллектива, но и косвенно (за счет включения или невключения соответствующих аргументов в формулу общего решения) отбирает те нейронные сети, решения которых будут наиболее полезны в плане эффективности решения задачи. Использование дополнительных алгоритмов (например, генетического алгоритма) для настройки параметров получаемой модели взаимодействия позволяет дополнительно повысить эффективность модели.

Исследование эффективности метода. Для исследования эффективности предлагаемого комплексного подхода к проектированию коллективов нейронных сетей был проведен ряд численных экспериментов на наборе тестовых задач. Предлагаемый метод был исследован в сравнении со следующими методами, часто используемыми для формирования коллективов нейронных сетей:

1. Метод вЛ8БМ - метод, использующий для назначения весов генетический алгоритм с последующим учетом при формировании общего решения тех нейронных

сетей, чей весовой коэффициент выше некоторого заданного заранее значения [7].

2. Метод, основанный на использовании генетического алгоритма для выбора фиксированного числа нейронных сетей из предварительного пула и назначения им весов (ниже обозначен как GA-based1).

3. Метод, основанный на использовании генетического алгоритма для выбора произвольного числа нейронных сетей из предварительного пула и назначения им весов (ниже обозначен как GA-based2).

Для формирования предварительно пула нейронных сетей в этих методах использовался стандартный метод конструирования нейронных сетей на основе генетического алгоритма с заранее подобранными эффективными настройками параметров. Для нейронных сетей максимальное число скрытых слоев равно трем, максимальное число нейронов на каждом слое равно пяти. В ходе предварительного исследования было выяснено, что увеличение максимального числа скрытых слоев сети и максимального числа нейронов на них не дает дополнительного преимущества для рассматриваемых задач.

Для проведения исследований также был использован набор данных тестов по прогнозированию прочностных характеристик бетона из репозитория UCI Machine Learning Repository [10]. Этот набор данных включает 103 записи, описывающих зависимость между составом бетона и измеренными показателями, характеризующими деформацию и прочностные характеристики полученных из него изделий.

Примеры задач, использовавшихся в сравнительных исследованиях, приведены в табл. 1.

В качестве главного критерия эффективности использовались оценка математического ожидания и оценка дисперсии ошибки, рассчитанные по данным, полученным в ходе 50 независимых запусков алгоритмов. Для расчета ошибки аппроксимации в каждом запуске использовалась следующая формула:

100 %

Error =

\o - yt\

я ( у шах - у пип ) £1

где і - номер записи в выборке; оі - выход сети или коллектива нейронных сетей; уі - значение выходной переменной в выборке; упах и уп1п - максимальное и минимальное значение выходной переменной; 5 - число элементов в выборке.

Результаты сравнительного исследования предлагаемого вероятностного метода автоматического формирования структуры нейронных сетей и метода, использующего для решения этой задачи генетический алгоритм, приведены в табл. 2.

Результаты сравнительного исследования предлагаемого комплексного подхода для проектирования коллективов нейронных сетей и других методов, описанных выше, приведены в табл. 3-5.

Приведем пример формулы, описывающей способ расчета коллективного решения для задачи прогнозирования прочностных характеристик бетона на основании решений отдельных нейронных сетей:

о = о4 -(о20 - 1,953о4 + о18)/(о9/(о4 + о18)-2,824),

где о - общее решение, рассчитанное для коллектива нейронных сетей; о4, о9, о18, о20 - выход четвертой, девятой, восемнадцатой и двадцатой нейронных сетей из предварительного пула. Эти сети в автоматическом режиме были отобраны для формирования коллектива. Из этих сетей минимальной ошибки (4,92 %) позволяет достичь сеть 18. Мак-

Примеры

симальное значение ошибки (4,98) соответствует сети 20. Значение ошибки коллектива нейронных сетей - 3,57 %.

Рассмотрим характеристики процесса формирования коллектива нейронных сетей для решения задачи прогнозирования прочностных характеристик бетона. Для сравнения рассмотрим характеристики сетей, включенных в

Таблица 1

говых задач

№ задачи Моделируемая функция Диапазон входных переменных Объем выборки

1 у = sin X x m [-4,3] 150

2 у = х^ sin "і + х?, sin x2 "i m [-4,3] 150

3 x • x2 у = X32 xi m[1,20] 200

4 у = 100 (x2 - xj2) -(l - Xj )2 X m[-2,3] 200

Таблица 2

Результаты сравнительного исследования методов проектирования нейронных сетей

Задача Вероятностный метод Оценка математического ожидания ошибки, % ГА Оценка математического ожидания ошибки, %

1 1,880 1,857

2 4,355 4,428

3 G,736 0,780

4 6,750 6,643

Таблица З

Результаты сравнительного исследования на тестовых задачах 1 и 2

Метод Тестовая задача 1 Тестовая задача 2

Оценка математического ожидания ошибки, % Оценка дисперсии ошибки, % Оценка математического ожидания ошибки, % Оценка дисперсии ошибки, %

Одна нейронная сеть 1,880 0,510 4,355 0,736

GASEN 1,444 0,112 3,79 0,026

GA based 1 1,335 0,223 3,486 0,028

GA based 2 1,302 0,162 3,482 0,024

Предлагаемый метод G,855 G,G65 3,G37 G,GG3

Таблица 4

Результаты сравнительного исследования на тестовых задачах З и 4

Метод Тестовая задача 3 Тестовая задача 4

Оценка математического ожидания ошибки, % Оценка дисперсии ошибки, % Оценка математического ожидания ошибки, % Оценка дисперсии ошибки, %

Одна нейронная сеть 2,537 0,245 6,643 1,447

GASEN 1,679 G,G16 6,192 0,163

GA based 1 1,651 0,019 6,147 0,178

GA based 2 1,639 0,020 6,100 0,209

Предлагаемый метод 1,389 0,035 5,G36 G,115

Таблица 5

Результаты сравнительного исследования на задаче прогнозирования прочностных характеристик бетона

Метод Оценка математического ожидания ошибки, % Оценка дисперсии ошибки, %

GASEN 4,119 0,040

GA based 1 4,113 0,047

GA based 2 4,012 0,036

Предлагаемый метод 3,521 G,G28

предварительный пул, и сетей, отобранных в коллектив. Статистические данные были получены по результатам двадцати запусков программной системы, реализующей предлагаемый метод формирования коллектива нейронных сетей.

Сеть минимального размера, которая была включена в предварительный пул, имела два скрытых слоя, на каждом из которых было по два нейрона. Сеть максимального размера, включенная в предварительный пул, имела 13 нейронов на скрытых слоях сети - 5 на первом скрытом слое, по 4 нейрона на втором и третьем скрытых слоях. Среднее число нейронов на скрытых слоях сетей, включенных в предварительный пул, равно 9.

Среднее число сетей, отобранных в коллектив из предварительного пула, включающего 20 нейронных сетей, равно 5 (точное значение 4,75). Среднее число нейронов в таких сетях равно 7.

Среднее значение ошибки для одной нейронной сети из предварительного пула 4,95 %. Среднее значение ошибки для усредненного выхода всех сетей предварительного пула 4,58 %. Среднее значение ошибки коллективов нейронных сетей, сформированных предлагаемым методом, равно 3,52 %. При этом в коллектив обычно попадают не только сети с наименьшей индивидуальной ошибкой моделирования, что указывает на то, что отбираются сети, позволяющие именно совместно минимизировать итоговое значение ошибки, характеризующей качество общего решения коллектива.

Результаты статистических исследований показывают, что предлагаемый комплексный подход для проектирования коллективов нейронных сетей демонстрирует высокую эффективность на всех использованных тестовых задачах. Относительно первого этапа проектирования коллектива нейронных сетей на основании результатов сравнительного исследования можно сделать вывод о том, что вероятностный метод формирования структуры нейронных сетей не менее эффективен, чем широко используемый метод на основе генетического алгоритма. Преимуществом предлагаемого метода является меньшее число параметров алгоритма, которые необхо -димо настраивать для его эффективной работы, что позволяет снизить затраты на решение задачи.

Предлагаемый подход для формирования коллективов нейронных сетей демонстрирует высокую эффективность и не уступает другим подходам на использованных тестовых задачах. Относительное превосходство предлагаемого метода над другими методами формирования общего решения в коллективах нейронных сетей по показателю средней ошибки моделирования находится в пределах от 50 % для тестовой задачи 1 до 13 % для тестовой задачи 2. Среднее превосходство по рассматриваемому показателю составляет около 25 %. Для задачи прогнозирования прочностных характеристик бетона относительное превосходство предлагаемого метода составило око -

ло 15 %, что можно считать достаточно хорошим результатом при обработке реальных данных.

Результаты исследования свидетельствуют о том, что предлагаемый подход позволяет эффективно автоматически генерировать коллективы нейронных сетей и формировать итоговое решение коллектива. Таким образом, данный комплексный подход целесообразно использовать для повышения эффективности решения сложных прикладных задач, традиционно решаемых с помощью систем, использующих одну искусственную нейронную сеть, например, сложных задач аппроксимации и прогнозирования.

Библиографические ссылки

1. Hansen L. K., Salamon P. Neural network ensembles // IEEE Trans. Pattern Analysis and Machine Intelligence. 1990. 12 (10). P. 993-1001.

2. Cherkauer K. J. Human expert level performance on a scientific image analysis task by a system using combined artificial neural networks // Proc. AAAI-96 Workshop on Integrating Multiple Learned Models for Improving and Scaling Machine Learning Algorithms / by ed. P. Chan, S. Stolfo, D. Wolpert. Portland, OR: AAAI Press : Menlo Park, CA, 1996. Р. 15-21.

3. Hampshire J., Waibel A. A novel obj ective function for improved phoneme recognition using timedelay neural networks // IEEE Transactions on Neural Networks. 1990. № 1 (2). Р 216-228.

4. Goldberg D. E. Genetic algorithms in search, optimization and machine learning. Reading, MA : Addison-Wesley, 1989.

5. Семенкин Е. С., Сопов Е. А. Вероятностные эволюционные алгоритмы оптимизации сложных систем // Тр. Междунар. науч.-практ. конф. AIS’05/CAD-2005. М. : Физматлит, 2005. С. 77-78.

6. Perrone M. P., Cooper L. N. When networks disagree: ensemble method for neural networks // Artificial Neural Networks for Speech and Vision / by ed. R. J. Mammone. New York : Chapman & Hall, 1993. P. 126-142.

7. Jimenez D. Dynamically weighted ensemble neural networks for classification // Proc. IJCNN-98. Vol. 1. Anchorage, AK : IEEE Computer Society Press : Los Alamitos, CA, 1998. P. 753-756.

8. Zhou Z. H., Wu J., Tang W. Ensembling neural networks: Many could be better than all // Artif. Intell. 2002. Vol. 137. № 1-2. P. 239-263.

9. Koza J. R. The Genetic Programming Paradigm: Genetically Breeding Populations of Computer Programs to Solve Problems. Cambridge, MA : MIT Press, 1992.

10. Yeh I-Ch. Modeling slump flow of concrete using second-order regressions and artificial neural networks // Cement and Concrete Composites. 2007. Vol. 29, № 6. P. 474-480.

V V Bukhtoyarov, E. S. Semenkin

INTEGRATED EVOLUTIONARY APPROACH FOR NEURAL NETWORK ENSEMBLES AUTOMATIC DESIGN

New comprehensive approach for neural network ensemble design is proposed. It consists of method for neural networks automatic design and method for ensemble decision automatic construction. It is demonstrated that proposed approach is not less effective than other approaches for neural network ensemble design.

Keywords: neural networks, ensemble, automatic design, genetic programming, probability-based evolutionary algorithm.

© Бухтояров В. В., Семенкин Е. С., 2010

УДК 004.932

И. Н. Паламарь, П. В. Сизов

МЕТОД СЕГМЕНТАЦИИ ИЗОБРАЖЕНИЙ С ПРИМЕНЕНИЕМ ВЫРАЩИВАНИЯ ОБЛАСТЕЙ И МНОГОМАСШТАБНОГО АНАЛИЗА

Анализируются достоинства и недостатки существующих методов сегментации изображений. Ведется разработка оригинального алгоритма сегментации, использующего идеи метода выращивания областей и многомасштабного анализа. Проводится исследование возможностей предложенного подхода при сегментации разнотипных изображений.

Ключевые слова: сегментация, изображение, выращивание, вейвлет.

Сегментация, т. е. выделение однородных областей на исходном цифровом изображении, является одной из наиболее важных задач в системах машинного зрения, которые применяются во многих научно-технических и производственных отраслях: медицине, металлографии, аэрофотосъемке, робототехнике, дефектоскопии, системах безопасности и охраны правопорядка и др. Именно на данном этапе обработки происходит преобразование изображения из вида, характеризуемого совокупностью пикселов, в форму множества сегментов, пригодную для дальнейшего распознавания объектов сцены.

На данный момент существует масса формализованных методов сегментации [1], которые по основному принципу работы можно условно разделить на две группы:

- методы, первоначально выделяющие границы областей (контуры) как перепады какого-либо признака изображения;

- методы, выделяющие области (сегменты) по однородности на них определенного признака.

К первой группе следует отнести методы, вычисляющие первую и вторую производные функции изображения с помощью различных масок (операторы Робертса, Превитта, Собела, Лапласа, Марра-Хилдрет и др.), дополняемые методами связывания контуров (локальное связывание, преобразование Хафа (Hough), анализ с помощью теории графов). Проблемой данных методов определения контуров является несвязность получаемых границ объекта, что неудивительно, так как алгоритмы, находящиеся в основе сегментации не настроены на получение связных, замкнутых контуров, а методы связы-

вания, являясь надстройкой для данных алгоритмов, позволяют решить проблему ценой больших вычислительных затрат.

К методам сегментации, объединенным в рамках второй группы, прежде всего можно отнести пороговое преобразование. Данный метод, получивший широкое распространение благодаря своей простоте и понятным свойствам, несмотря на различные усовершенствования, имеет недостаток, присущий и указанным методам определения контуров - неиспользование информации о связности сегментов. Этого недостатка лишены методы выделения областей, изначально построенные так, чтобы получать связные области, удовлетворяющие некоторому критерию однородности: выращивание областей, разделение и слияние областей, сегментация по морфологическим водоразделам.

Метод выращивания областей в простейшей его реализации можно описать так:

1) на исходном изображении выбираются точки (центры кристаллизации), предположительно принадлежащие выделяемым областям, например, это могут быть точки с максимальным уровнем яркости;

3) далее из этих точек начинается рост областей, т. е. присоединение к уже имеющимся точкам области соседних, при этом используется определенный критерий их близости, например, разница в яркости;

4) остановка роста областей по какому-либо условию, например, максимальному отклонению яркости новых точек области от уровня яркости центра кристаллизации.

Как видно из описания, данный алгоритм учитывает связность областей и на практике позволяет гораздо ус-