Полная версия

Главная arrow Информатика arrow ИНТЕЛЛЕКТУАЛЬНЫЕ СИСТЕМЫ: НЕЧЕТКИЕ СИСТЕМЫ И СЕТИ

  • Увеличить шрифт
  • Уменьшить шрифт


<<   СОДЕРЖАНИЕ ПОСМОТРЕТЬ ОРИГИНАЛ   >>

Алгоритм нечёткой самоорганизации C-means

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

Допустим, что в сети существует М нечётких нейронов с центрами в точках с (/ = 1,2,..., М). Начальные значения этих центров могут быть выбраны случайным образом из областей допустимых значений соответствующих компонентов векторов лг (/ = 1,2,...,/?), использованных для обучения. Пусть функция фуззификации задана в форме обобщенной функции Гаусса, выраженной формулой .

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

для t = 1,2, ..., р. Функцию погрешности, соответствующую такому представлению, можно определить как сумму частных погрешностей принадлежности к центрам с, с учетом степени принадлежности н„ Следовательно

где ш - это весовой коэффициент, который принимает значения из интервала [1, оо), на практике часто принимают гп=2. Цель обучения с самоорганизацией состоит в таком подборе центров с„ чтобы для заданного множества обучающих векторов х{'] обеспечить достижение минимума функции при одновременном соблюдении условий ограничения . Таким образом возникает задача минимизации нелинейной функции с р ограничениями типа . Решение этой задачи можно свести к минимизации функции Лагранжа, определенной в виде [13].

где Я((? = 1,2,...,/?) - это множители Лагранжа. Доказано, что решение задачи можно представить в виде

где с/„ - это эвклидово расстояние между центром с, и вектором х„ djt = |с(х, II. Поскольку точные значения центров с, в начале процесса не известны, алгоритм обучения должен быть итерационным:

выполнить случайную инициализацию коэффициентов м,„ выбирая их значения из интервала [0,1] таким образом, чтобы соблюдать условие ;

определить М центров с, в соответствии с ;

рассчитать значение функции погрешности в соответствии с . Если её значение ниже установленного порога, либо если уменьшение этой погрешности относительно предыдущей итерации пренебрежимо мало, то закончить вычисления. Иначе, перейти к п.4;

рассчитать новые значения и,, по формуле и перейти к п.2.

Многократное повторение итерационной процедуры ведёт к достижению минимума функции Е, который необязательно будет глобальным.

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

 
<<   СОДЕРЖАНИЕ ПОСМОТРЕТЬ ОРИГИНАЛ   >>