Синтез нейро-нечетких сетей с группировкой признаков

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

Ш=х; Г2(х)=хп, пе [2,4]; Гэ(х)=х2-у2;

Г4 (х,у )= 0,048 * ехр|

0,017 * ехр| 4

(Л

х + у

?5

х2 - у2 *

х + у | * 81П * ео8(х);

22 81П

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

Метод ^ F2 Fз F4 F5

ПГА 96 90 96 65 0

ЭА1 93 99 92 85 68

ЭА2 98 99 90 91 70

ЭА3 99 93 94 93 80

ЭА4 93 96 90 93 80

ЭА5 98 95 96 96 89

Можно сделать вывод, что из предложенных алгоритмов лучшие результаты показал ЭА5 для всех исследуемых функций, а введение динамических параметров позволяет повысить эффектив-

ность генетического поиска и обеспечить его устойчивость. Найденное максимальное и среднее значение целевой функции увеличивается в среднем на 10% по сравнению с ПГА.

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

Список литературы

1. Тарасов В.Б. От многоагентных систем к интеллектуальным организациям: философия, психология, информатика. -М.: Эдиториал УРСС, 2002. -352с.

2. Зинченко Л.А., Курейчик В.М. Многоальтернативные генетические алгоритмы поиска экстремума функции //Изв. РАН. Теории и системы управления. - 2003. - № 4. - С. 82-91.

3. Гладков Л.А., Курейчик В.В., Курейчик В.М. Генетические алгоритмы: Учебное пособие. / Под ред. В.М. Курейчи-ка. - М: Физматлит, 2006.

4. Курейчик В.В. Эволюционные, синергетические и го-меостатические методы принятия решений: Монография. - Таганрог: Изд-во ТРТУ, 2001.

5. Курейчик В.М., Зинченко Л.А. Эволюционное моделирование с использованием динамических параметров // Тр. VII нац. конф. по искусствен. интеллекту. - М.: Физматлит, 2000. - С. 516-523.

6. Хабарова И.В.. Разработка среды эволюционного моделирования с динамическими параметрами БУМвЕМ //Изв. ТРТУ. - Таганрог. - 2002. - № 3. - С. 273.

СИНТЕЗ НЕЙРО-НЕЧЕТКИХ СЕТЕЙ С ГРУППИРОВКОЙ

ПРИЗНАКОВ

С.А. Субботин

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

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

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

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

Группирование признаков предлагается осуществлять путем выполнения шагов 1-10.

Шаг 1. Задать обучающую выборку <х,у>, х={хя}, х8={х^}, у={уя}, где хя - 8-й экземпляр выборки; х^ - значение ,|-го признака 8-го экземпляра выборки; уя - значение целевого признака 8-го экземпляра выборки.

Шаг 2. Определить значения показателя информативности для каждого признака 1р

Шаг 3. Для У=1, 1ф], найти расстояния

между признаками в пространстве экземпляров обучающей выборки d(xj,xj):

d(xj,X|)=

S

£ (ж]-

s=1

s-,2

xS)

Шаг 4. Найти коэффициенты эквивалентности признаков eji, У=1,2,...,^ Принять eji=eji"1.

Шаг 5. Установить номер текущей группы 8=0.

Шаг 6. Если

3 xj:

V ^-1 и з

У=1,2,...,^ 1^, тогда перейти на шаг 7, в противном случае перейти на шаг 10.

Шаг 7. Найти признак х1: 11=тах j=1,2,...,N.

Шаг 8. Установить g=g+1. Добавить новую группу признаков О8. Включить в группу О8 признак х1. Установить: 11=-1.

Шаг 9. Если 3 V 1^-1, 3

Е(х1,Х])=1, 1я]=1,2.....N5 где Е - некоторый бу-

левый оператор, определяющий принадлежность признаков к одной группе, тогда включить в группу О8 признак Х], установить ^=-1, ^Х]^^-!, ^хк^)=-1, к=1,2,...,^ перейти на шаг 9, в противном случае установить 11=-1, ^х15хк)=-1, d(xk,xi)=-1, к=1,2,...,^ перейти на шаг 6.

Оператор Е может быть определен как:

1, d(xi, х^ < ad е eij < ре

е d(xi,xj) <Yd, 0,d(Xi,Xj) > аd еёе eij > рё еёе d(Xi,Xj) >Yd.

Параметры d,d,d,ё могут быть определены по соответствующим формулам:

_ 1 NN

d =-2-X I d(Xi,Xj),

0,5N2 - N 1=ц=i+1

_ 1 NN

e =-2-I I eij,

0,5^ - N 1=4=1+1 iJ

F(Xj,Xj)=

d(Xj,Xj) = д/((1 -1) mod width -(j-1) mod width)2 + + ((i -1) div width - (j - 1)div width)2,

d =

1

N N

£ £ d(Xi,Xj),

0,5N2 - Ni=1 j=i+1

где width - ширина изображения; div - операция целочисленного деления; mod - операция "остаток от целочисленного деления".

Шаг 10. Останов.

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

Шаг 1. Инициализация. Задать обучающую выборку экземпляров X, состоящую из S экземпляров Xs, где s - номер экземпляра, s=1,2,...,S. Каждый s-й экземпляр будем характеризовать набором значений N признаков XSj, где j - номер при-

знака 8-го экземпляра, ]=1,2,...,Н. Кроме того, каждому экземпляру Xя сопоставим целевой признак уя - номер класса я-го экземпляра. Обучающую выборку представим в виде массива, в котором признаки линеаризованы по строкам, а экземпляры - по столбцам, а также зададим соответствующий массив у ={уя }, содержащий номера классов, сопоставленные экземплярам обучающей выборки. Создать массив равный по размеру количеству признаков N5 элементы которого будут содержать число интервалов для каждого признака. Установить ^=0, ]=1,2,...,Н, где j - номер текущего признака. Занести количество экземпляров обучающей выборки в переменную 8. Установить номер текущего признака 1=1.

Шаг 2. Если 1 < N5 тогда перейти на шаг 3, иначе - перейти на шаг 12.

Шаг 3. Занести в буфер признака х вектор значений 1-го признака из обучающей выборки: х^^х^; занести в буфер класса у копию массива у*: у(8)=у8*, 8=1,2,...,8.

Шаг 4. Отсортировать массивы х и у в порядке возрастания массива х (шаги 4.1-4.7 реализуют простейший алгоритм пузырьковой сортировки, который можно заменить на практике более быстродействующим алгоритмом).

Шаг 4.1. Установить номер текущего экземпляра я=1.

Шаг 4.2. Если я < 8, тогда перейти на шаг 4.3, в противном случае перейти на шаг 5.

Шаг 4.3. Установить номер текущего экземпляра к=я+1.

Шаг 4.4. Если к < 8, тогда перейти на шаг 4.5, в противном случае перейти на шаг 4.7.

Шаг 4.5. Если х(я)>х(к), тогда установить /=х(я), х(я)=х(к), х(к^, ж=у(я), у(я)=у(к), у(к^, где z - буферная переменная.

Шаг 4.6. Установить: к=к+1. Перейти на шаг

4.4.

Шаг 4.7. Установить я=я+1. Перейти на шаг

4.2.

Шаг 5. Установить я=1, к=1.

Шаг 6. Если я < 8, тогда установить а'=х(я), где а' - буфер для хранения левой границы к-го интервала 1-го признака, и перейти на шаг 7, в противном случае перейти на шаг 11.

Шаг 7. Пока я<8 и у(я)=у(я+1) выполнять я=я+1.

Шаг 8. Если я=8 и у(я)=у(я-1), тогда установить К(1,к)=у(я), А(1,к)=а', ва,к)=х(8), к=к+1, я=я+1, перейти на шаг 10. Здесь К(1,к) - номер класса, сопоставленный экземплярам обучающей выборки, значение 1-го признака которых попадает внутрь к-го интервала; А(1,к) и В(1,к) - левая и правая границы к-го интервала 1-го признака соответственно.

Шаг 9. Если я < 8 и у(я) Ф у(я+1), тогда установить К(1,к) = у(я), А(1,к)=а', в(1,к)=х(я), к=к+1,

8=8+1, 01=0, +1, в противном случае установить К(1,к)=у(8), А(1,к)=х(8), В(1,к)=х(8), к=к+1, 8=8+1.

Шаг 10. Перейти на шаг 6.

Шаг 11. Установить 1=1+1, перейти на шаг 2.

Шаг 12. Останов.

В результате выполнения шагов 1-12 для обучающей пары {х,у} мы получим массив {Б|}, содержащий для каждого признака количество интервалов, на которые он разбивается, а также массивы {А(1,к)}, {В(1,к)} и {К(1,к)}, содержащие информацию о границах интервалов и номерах классов, сопоставленных им для всех признаков.

Показатели информативности признаков I определим по формуле:

^ =(ш1пБ])/, j=1,2,...,N.

Коэффициент эквивалентности между к-м интервалом значений 1-го признака для 8-го экземпляра и q-м интервалом значений j-го признака для g-го экземпляра определим по формуле: 0,апёе К(1,к) Ф К(и), 0,апёе В(1,к) < х8 еёе х8 < А(1,к),

0,апёе В^^) < х? еёе

1,апёе К(1,к) = К^),А(1,к) <

< х8 < В(1,к),АСъя) <

< х? < В^^),

8=1,2,...,8; ?=1,2,...,8; 1=1,2,...^; j=1,2,...,N; к=1,2,...,к1; q=1,2,...,kj.

Количество экземпляров с одинаковыми номерами классов, попавших одновременно в к-й интервал значений 1-го признака и в q-й интервал значений j-го признака, определим по формуле: 8 8

N(1,^) = Е Е п(х8,х?

8=1 ?=1, ? Фв

1=1,2,...,N; j=1,2,...,N; к=1,2,...,к1; q=1,2,...,kj.

Коэффициент взаимной эквивалентности между к-м интервалом значений 1-го признака и q-м интервалом значений j-го признака определим по

формуле: е = ш1п =

1=1,2,...,N; j=1,2,...,N; к=1,2,...,к1; q=1,2,...,kj;

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

Коэффициент взаимной эквивалентности между 1-м и j-м признаками для всех экземпляров выборки определим по формуле:

еи

к1 ^

Е Е е1,к^ к =1д=1_

1=1,2,...,N; j=1,2,...,N.

шax{k1,kj}

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

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

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

Предложенная сеть может иметь альтернативное представление (рис. 2), которое целесообразно использовать, если целью является установление влияния факторов на конкретный класс.

Рис. 2. Альтернативное представление нейро-нечеткой сети с группировкой признаков

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

Нечеткие термы можно сформировать путем задания функций принадлежности для интервалов значений признаков М1,к(х1), где 1 - номер признака; к - номер интервала значений 1-го признака.

В качестве функций принадлежности предлагается использовать трапециевидные функции:

Hi,k(xi) =

0, апёе xi < 0,5

1)),

0,5

апёе 0,5(A(i, k) + B(i,k -1)) < xi < A(i,k), 1, A(i,k) < xi < B(i,k), 0,5(A(i, k +1) + B(i,k)) - xj

0,5(A(i, k +1) - B(i,k)) апёе B(i,k) < xi < 0,5(B(i, k) + A(i,k +1)), 0, апёе 0,5(B(i, k) + A(i, k +1)) < x ¡,

либо П-образные функции:

Mi,k(Xi) = Mi,kS(Xi^i,kZ(Xi),

где Mi,ks(Xi) - S-образная функция, а Mi,kz(Xi) -Z-образная функция:

Mi,kS(xi) =

Mi,kz(xi) =

0,апёе xi < 0,5(A(i,k) + B(i,k -1)),

1 1

— + —cos 2 2

xj - A

0,5(A(i,k) - B(i,k -1)) апёе 0,5(A(i,k) + B(i,k -1)) < xi < A(i,k), 1, апёе Xj > A(i,k);

1, апёе Xj < B(i,k),

Xj - B

1--cosi -

2

i<

1 1 (

— +— cos| — 2 2 10,5

2 ^ 0,5(A(i,k +1) - B(i,k)) апёе B(i,k) < Xj < 0,5(B(i,k) + A(i,k +1)), 0, апёе Xj > 0,5(B(i,k) + A(i,k +1)).

Второй слой содержит нейроны, определяющие принадлежность распознаваемого экземпляра по группам признаков каждого класса. Количество нейронов второго слоя N2=VQ, где V - количество групп признаков; Q - количество классов.

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

Единственный нейрон четвертого слоя сети осуществляет объединение принадлежностей к классам и выполняет дефазификацию.

Дискриминантные функции нейронов обеих сетей будут определяться следующим образом:

ф(14 ЦЧ^)) = min {wM,xM} ,

r| =2, i=1,2,...,VQ;

ф(п ,i )(w (n,i) j) = maX {w M,x j"'1)}, П=3, i^A.^Q;

Zw j^xj^)

ф(п VwMj))=-

J J yx^ )

П=4, i=1.

Функции активации нейронов сети будут определяться по формулам:

¥(n ,i)(x) = max {ф(п >j)(w j^^xj^)}, j j j

П=2, i^A.^VQ;

V(n)(x) = min {ф^)(wfbOj))},

П =3, i^^...^; y(n,i)(x) = round(x), r| =4, i=1.

Весовые коэффициенты нейронов w

(n.0

где

j - номер входа; i - номер нейрона; - номер

wj

(n ,i) =

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

= 4,1 = 1,3 = 1, 2, ..., К,

0, Г| = 3, 1 = 1, 2, ...О, V = 1, 2, ..., V, j = (V - 1)О +1,

1, Г| = 3, 1 = 1, 2, ...О, V = 1, 2, ..., V, j Ф (V - 1)О + 1,

Дп»0 = = 2, хр е Gv е К(р, 8) = q, j = г(р) + 8, 8 = 1,2, ..., Бр, р = 1,2, ..., N 1 = (V - 1)О +q = 1, 2, ..., О, V = 1, 2, ...,V, 0, Г| = 2, Хр е Gv еёе К(р, 8) = j = г(р) + 8, 8 = 1,2, ..., Бр, р = 1,2, ..., N 1 = (V - 1)О +| = 1, 2, ..., О, V = 1, 2,

р-1 N

2(р) = IБг, z = IБ^

Г=1 j=1

Для альтернативного представления сети весовые коэффициенты нейронов wбудут определяться по формуле:

¿П = 4,1 = 1,j = 1, 2, ..., К,

0, Г| = 3, 1 = 1, 2, ...О, V = 1, 2,

j = (1 - 1)V + V,

1, Г| = 3, 1 = 1, 2, ...О, V = 1, 2, ..., V, j Ф (1 - 1)V + V,

1, Г| = 2, хр е Gv е К(р, 8) = j = z(p) + 8, 8 = 1,2, ..., Бр, р = 1,2, ..., N 1 = (| -Щ + V, V = 1, 2, | = 1, 2, ..., О, 0, Г| = 2, Хр е Gv еёе К(р,8) = j = z(p) + 8, 8 = 1,2, ..., Бр, р = 1,2, ..., N 1 = + V, V = 1, 2, ..., V, | = 1, 2, ..., О.

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

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

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

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

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

Список литературы

1. Дубровин В.И., Субботин С.А., Богуслаев А.В., Яцен-ко В.К. Интеллектуальные средства диагностики и прогнози-

рования надежности авиадвигателей: Монография. - Запорожье: ОАО "Мотор-Сич", 2003. - 279 с.

2. Дубровин В.И., Субботин С.А. Алгоритм классификации с оценкой значимости признаков // Радюелектронжа. 1нформатика. Управлшня. - 2001. - № 2. - С. 145-150.

3. Лакин Г.Ф. Биометрия: Учеб. пособие для биол. спец. вузов. - М.: Высш. шк., 1990. - 352 с.

ПРОГРАММНО-РЕАЛИЗУЕМЫЕ АЛГОРИТМЫ НЕЛИНЕЙНОЙ ФИЛЬТРАЦИИ ЦИФРОВЫХ ИЗОБРАЖЕНИЙ

Е.А. Самойлин

К настоящему времени созданы и продолжают развиваться различные оптические и оптико-электронные системы с цифровой обработкой изображений [1-3]. Цифровая обработка обладает несомненными преимуществами перед традиционной аналоговой и позволяет получать изображения с более высокими характеристиками качества. Между тем для многих практических условий функционирования оптико-электронных устройств с цифровой обработкой является характерным возникновение на изображениях нежелательных искажений, получивших наименование импульсных шумов (ИШ) [1]. ИШ на изображении представляют собой случайные на интервале квантования яркости отклонения амплитуды некоторых элементов растра, то есть появление сбойных, или испорченных пикселей.

Для фильтрации ИШ наиболее приемлем медианный алгоритм обработки, при котором выходной сигнал фильтра определяется как медиана (срединное значение) элементов, попавших в скользящее окно или апертуру. Как известно [1,2], медианная обработка является инвариантной по пространству процедурой, то есть все области изображения подвергаются ранговому упорядочиванию. Если ИШ локализованы на каком-либо отдельном участке изображения, медианной обработке будут подвергнуты все области, что приведет к неизбежным искажениям мелких деталей на изображении. Выходом из этой ситуации может быть разделение процедуры фильтрации на два этапа - предварительное пространственное оценивание ИШ и восстановление сигналов исключительно в местах сбойных пикселей изображения. Кроме того, из-за широкого распространения компьютерной обработки изображений процедуры фильтрации должны предполагать программную реализацию алгоритмов.

Рассмотрим математические модели изображений и ИШ.

Используемая модель цифрового (со строками 1 и столбцами j) изображения Я,(ь,,]) имеет вид:

ЦуЬАСШ!,.^) ,

где а^,^ ) - непрерывное изображение, соответствующее ^(и); а^, д12 - интервалы дискретизации для 1, j соответственно.

Значения яркости элементов изображения Ци) квантованы на интервале от абсолютно черного до абсолютно белого:

А,

где 2N - количество уровней квантования яркости сигналов а,(ь,,]) (глубина оттенков).

Изображение, искаженное воздействием шума, в общем случае описывается выражением:

х(1,]) = {(х(у),й], 1 е [1, т], ]е [1, п], (3) где f(а,(1,,]),й(1,,])) - оператор, определяющий взаимодействие полезного изображения а,(1,,]) и шума й(1,,]); т, п - соответственно количество 1 и ] изображения.

Положим х(у)= ху , а,(у)=а,у , й(у) = йу,

тогда выражение (3) для ИШ можно записать в виде:

= Г^йааМуоипо и^ р

|Й у пааМубппо и^ р

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

й у = rnd(o,..., 2N -1), N = 8,16 и т.д., (5) р(й) - вероятность появления выброса шума й у в ячейке с координатой (1, ]) , которая не зависит ни от наличия шума в других координатах, ни от исходного изображения, то есть р(й)=сошМ е[1, т] ]е[1,П] .

Появления а,у и й у образуют полную группу несовместных событий для каждой отдельной координаты (1,,]).