Научная статья на тему 'Генетический алгоритм выбора доминантных признаков для нейронной сети'

Генетический алгоритм выбора доминантных признаков для нейронной сети Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
95
43
i Надоели баннеры? Вы всегда можете отключить рекламу.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Нигматуллина А. Н.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Генетический алгоритм выбора доминантных признаков для нейронной сети»

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

А.Н. Нигматуллина

(Казанский государственный технический университет им. А.Н. Туполева,

freebox_2006@bk.ru)

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

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

Автоматизация процесса формирования баз знаний - это актуальная задача, при решении которой широкое распространение получили технология KDD (Knowledge discovery from databases) и методы Data Mining, позволяющие извлекать скрытые закономерности из сырых данных. Наиболее популярны среди данных методов нейронные сети (НС). На этапе подготовки сырых данных для анализа одной из основных является задача выбора в них доминантных признаков, оказывающих наибольшее влияние на решение. Эта задача связана с формированием обучающих выборок для НС.

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

Применение генетических алгоритмов

Генетические алгоритмы (ГА) относятся к классу методов случайного направленного поиска. Но в отличие от простого случайного поиска они основаны на принципах, заимствованных у природы, - генетической наследственности и естественного отбора [1].

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

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

Основное отличие ГА от традиционных методов поиска оптимумов состоит в том, что он с каждой эпохой улучшает оптимальное решение, но не гарантирует нахождение лучшего за конечный промежуток времени [1].

При применении ГА особое место занимает этап подготовки данных, от которого в наибольшей степени зависит успех работы алгоритма. Необходимость подготовки обусловлена тем, что выборка данных часто содержит случайные «выбросы», нетипичные и пропущенные значения, возможные ошибки ввода и т.д.

ГА можно записать в виде кортежа: GA=<P0, к, п, S, С, M, F, 1>, где P0 - исходная популяция; k - ее размер; п - количество генов в хромосоме; S, С, M - операторы отбора, кроссовера и мутации соответственно; F - функция приспособленности (фитнеса); t - критерий останова.

Классическая схема ГА включает следующие шаги [2, 3].

1. Задать начальный момент времени: t=0. Создать начальную популяцию из k особей (размер популяции): P0={A1 , A2 ,..., Ak}.

2. Рассчитать приспособленность каждой особи: F(Ai), 1=1^.

3. Выбрать из популяции две особи: A1, Aj, г^.

4. Выполнить оператор кроссовера и мутации. В результате генерируется новая особь В (потомок). В некоторых модификациях алгоритма после скрещивания могут быть созданы несколько потомков (например два).

5. Поместить полученную хромосому (или несколько хромосом) в новую популяцию: Р4+1.

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

7. Выполнить шаги, начиная с п. 3, к раз.

8. Увеличить номер текущей эпохи: 1^+1.

9. При срабатывании условия останова завершить работу, иначе перейти на шаг 2.

Подготовка статистических данных

Приведение данных к форме, пригодной для использования ГА, обязательно для эффективности данного процесса.

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

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

Для поиска зависимостей между признаками, как правило, используются методы корреляционного анализа, в которых вычисляется коэффициент корреляции: ге[-1; 1], показывающий, в какой степени изменение значения одного признака влияет на изменение другого [4]: I г 1<0,25 - слабая корреляция; 0,25<1 г 1<0,75 - умеренная корреляция; I г 1>0,75 - сильная корреляция.

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

ГА выбора доминантных признаков

Пусть имеется таблица 1 размера тхп, где 81 -полный набор признаков, 1=1,п. Требуется из данных признаков выделить доминантные.

Таблица 1

Статистические данные

s1 s2 sn

1 su s12 s1n

2 s21 s22 s2n

m-1 sm-1 1 sm-1 2 sm-1 n

m sm1 sm2 smn

Обозначим через R(di, d2, ..., dq, j) коэффициент множественной корреляции между признаками Sj и (sdi, sd2, ..., sd), где все значения dq и j различны, j,dqe {1, 2, ..., n}, j,q<n.

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

При R(db d2, ..., dq, j)>0,75 наблюдается сильная корреляция между признаками Sj и ( Sdi,

sd2, ..., sd). Таким образом, задача сводится к поиску всех R(di, d2, ., dq , j)>0,75.

Для решения этой задачи можно использовать метод полного перебора. Однако он неприемлем при больших значениях m и n.

Для повышения эффективности процесса выделения доминантных признаков предложен следующий ГА.

Примем за целевую функцию коэффициент множественной корреляции R(di, d2, ., dq , j).

В качестве хромосомы, описывающей особь, примем кортеж (vfi, vf2, ..., vf), vfj e{0, 1, 2},

j=1,n . Здесь минимум два значения vfj равны 1, а также точно одно из этих значений равно 2. Если vfj = 1, то признак sj участвует в вычислении

R(db d2, ..., dq, j), то есть значение fj равно одному из значений dq. Если vfj = 0, то соответствующие признаки не участвуют в вычислении коэффициента множественной корреляции. Если vfj = 0, то соответствующий признак участвует в

вычислении R(d1; d2, ..., dq , j), причем fj равно j.

Обозначим через Q максимальное количество поколений; f - объем популяции; б - вероятность мутации; Mass - динамический массив, элементами которого являются все вычисленные в процессе работы ГА коэффициенты множественной корреляции.

Тогда алгоритм сводится к следующей последовательности шагов.

1. Генерируем случайным образом начальную популяцию, состоящую из f хромосом.

2. Для каждой из них вычисляем коэффициенты множественной корреляции Rb(db d2, ..., dq , j) (значения целевой функции), b=1f . Если все Rb(db d2, ..., dq , j)>0,75, возвращаемся на шаг 1.

3. Полученные значения Rb(db d2, ..., dq, j) записываем в массив Mass.

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

5. Выполняем одноточечное скрещивание хромосом, отобранных на предыдущем шаге.

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

6. Для каждого из потомков вычисляем целевую функцию, которую записываем в массив Mass.

7. В новое поколение попадают f хромосом с наибольшим значением целевой функции.

8. Если превышено указанное количество поколений Q или наблюдается малая разница значений целевой функции лидеров последних h поколений, то прерываем процесс, иначе возвращаемся к шагу 3.

Таким образом, получен массив Mass, состоящий из всех вычисленных в процессе работы ГА коэффициентов множественной корреляции. Причем с каждым новым поколением массив пополнялся новыми элементами R(di, d2, ..., dq, j), значения которых больше или равны предыдущим.

Из полученного массива остается выбрать все R(db d2, ..., dq , j)>0,75 и сформировать соответствующие им доминантные признаки.

ГА формирования обучающих выборок для НС

Пусть имеется таблица 2 размера mxn, где sj -возможные входы, а tj - возможные выходы для

НС; j=1,p, j=1,k . Требуется из данных признаков сформировать обучающие выборки для НС.

Таблица 2

Статистические данные

s1

s11

s21

s2

si2

s22

sm1 sm2

s1p

s2p

tml t.

tk

t1p

t2p

tm

Обозначим через d2, ..., dq, ,0 коэффициент множественной корреляции между признака-Sd), dqe{1, 2, ..., р}, я < р, dq*d^

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

При К^ь d2, ..., dq, ,|)>0,75 наблюдается сильная корреляция между признаками ^ и sd2, ...,

sd). Таким образом, задача сводится к поиску всех

d2, ..., dq, .|>0,75.

Для решения этой задачи можно использовать метод полного перебора. Однако он неприемлем при больших значениях т и п.

Для повышения эффективности процесса формирования обучающих выборок для НС предложен следующий ГА.

Примем за целевую функцию коэффициент множественной корреляции R(db d2, ..., dq , j).

В качестве хромосомы, описывающей особь, примем кортеж (vf1, vf2,..., vf, wf1, wf2,..., wfk),

vf,wfe{0,1}. Здесь минимум два значения vfj равны 1, а также все wfj, кроме одного, равны нулю. Если vfj =1, то признак sj участвует в вычислении R(d1, d2, ., dq , j), то есть значение fj равно одному из значений dq. Аналогично для wfj . Если

vfj и wfj равны нулю, то соответствующие признаки не участвуют в вычислении коэффициента множественной корреляции.

Обозначим через Q максимальное количество поколений; f - объем популяции; б - вероятность мутации; Mass - динамический массив, элементами которого являются все вычисленные в процессе работы ГА коэффициенты множественной корреляции. Тогда алгоритм сводится к следующей последовательности шагов.

1. Генерируем случайным образом начальную популяцию, состоящую из f хромосом.

2. Для каждой из них вычисляем коэффициенты множественной корреляции Rb(db d2, ..., dq , j) (значения целевой функции), b =1,f . Если все Rb(db d2, ..., dq , j)>0,75, возвращаемся на шаг 1.

3. Полученные значения Rb(db d2, ..., dq, j) записываем в массив Mass.

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

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

6. Для каждого из потомков вычисляем целевую функцию, которую записываем в массив Mass.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

7. В новое поколение попадают f хромосом с наибольшим значением целевой функции.

8. Если превышено указанное количество поколений Q или наблюдается малая разница значений целевой функции лидеров последних h поколений, то прерываем процесс, иначе возвращаемся к шагу 3.

Итак, получен массив Mass, состоящий из всех вычисленных в процессе работы ГА коэффициентов множественной корреляции. Причем с каждым новым поколением массив пополнялся новыми элементами R(db d2,..., dq, j), значения которых больше или равны предыдущим.

Из полученного массива остается выбрать все R(d1, d2, ., dq, j)>0,75 и сформировать соответствующие им обучающие выборки.

t

t

s

2

1

t

t

2

t

t

m

s

В большинстве случаев получаемые при помощи ГА обучающие выборки являются оптимальными для НС, что позволяет использовать его самостоятельно.

Для проверки работы ГА использованы данные клинического нейроортопедического, рентге-нокомпьютернотомографического обследования 230 женщин в возрасте от 15 до 92 лет и 180 мужчин в возрасте от 16 лет до 81 года с различными синдромами поясничного остеохондроза. Контрольную группу составили 20 женщин от 20 до 70 лет и 20 мужчин от 17 до 73 лет.

Клиническое нейроортопедическое обследование проведено по методике В.П. Веселовского, Я.Ю. Попелянского (http://www.kazanmedacademy.ru/ m02_001_005.html). Рентгеновская компьютерная томография проводилась на томографе SOMATOM AR.HP spiral фирмы SIEMENS при сканировании с шагом 3/3 мм. Изучены количественные и качественные характеристики состояния структур по-звоночно-двигательных сегментов, собственных мышц позвоночника и паравертебральных мышц на уровне Ьш- Si по методике М.А. Подольской, З.Ш. Нуриева (см. ссылку выше).

Для получения обучающих выборок измерено более 500 000 количественных и качественных значений признаков течения поясничного остеохондроза по 822 параметрам. При помощи нечеткой НС проанализированы возможные варианты зависимости различных качественных и количественных признаков.

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

Литература

1. Паклин Н.Б. Адаптивные модели нечеткого вывода для идентификации нелинейных зависимостей в сложных системах: дис. ... к-та техн. наук. Ижевск, 2004. 162 с.

2. Батищев Д.И. Генетические алгоритмы решения экстремальных задач: учеб. пособ.; под ред. Я.Е. Львовича. Воронеж, 1995.

3. Осовский С. Нейронные сети для обработки информации; пер. с польск. И.Д. Рудинского. М.: Финансы и статистика, 2002. 344 с.

4. Реброва О.Ю. Статистический анализ медицинских данных. Применение пакета прикл. программ 81аЙ8Йса. М.: МедиаСфера, 2003. 312 с.

КОНСТРУИРОВАНИЕ АЛГОРИТМОВ СИНТЕЗА ИНДУКТИВНЫХ МОДЕЛЕЙ СЛОЖНЫХ СИСТЕМ

П.А. Колос (Черкасский национальный университет им. Богдана Хмельницкого, Украина,

dr_peter@pdu.edu.ua)

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

Ключевые слова: индуктивное моделирование, методы эвристической самоорганизации, метод группового учета аргументов, метод Степаненко, конструктор алгоритмов синтеза моделей, адекватность результирующей модели.

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

Исследование сложных систем показало, что детерминистические модели чрезвычайно сложные и работают с низкой эффективностью. В та-

ких случаях целесообразно использовать индуктивные модели, квалифицированные как алгебраические. Модели этого класса, основанные на принципах селекции, эволюции и адаптации, носят название методов эвристической самоорганизации [1]. К ним можно отнести разного рода эволюционные алгоритмы, индуктивные методы моделирования, нейросети, генетические алгоритмы и др. Тем не менее, на практике довольно трудно создать адекватную модель сложного объекта при использовании только одного метода индуктивного моделирования. Обычно необходимо объединять современные методы и технологии эвристической самоорганизации, выполнять рециркуляцию, применять методы многоуровневого моделирования и т.п. [2]. Таким образом, есть необходимость в разработке технологии, которая, базируясь на современных методах индуктивного мо-

i Надоели баннеры? Вы всегда можете отключить рекламу.