Нечеткие искусственные нейронные сети с самоорганизацией на этапе обучения осуществляют группирование входных вектров , в кластеров, каждый из которых определяется своим центром , . На этапе классификации сеть отождествляет очередной входной вектор данных с одним из ранее определенных кластеров.
Нечеткая сеть с самоорганизацией имеет простую двухслойную структуру (см. рис. 1).
Рис. 1.  Структурная схема нечеткой сети с самоорганизацией
Нейроны первого слоя реализуют обощенную функцию Гауcса в рациональной форме:

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

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

где , — множители Лагранжа.
Доказано, что решение этой задачи можно представить в виде
 (2)

 (3)

где — эвклидово расстояние между и .
Алгоритм обучения, реализующий описанную выше идею, получил название C-means. Он носит итерационный характер и может быть описан следующим образом.
  1. Выполнить случайный выбор коэффициентов из диапазона [0,1] при соблюдении условия
  2. Вычислить все центров по формуле (2)
  3. Рассчитать значение погрешности по формуле (1). Если это значение меньше установленного порога или незначительно изменилось относительно предыдущей итерации, то закончить вычисления. Иначе перейти к п. 4.
  4. Рассчитать новые значения по формуле (3) и перейти к п. 2.
Описанный выше итерационный алгоритм ведет к достижению минимума погрешности , который, однако, необязательно будет глобальным минимумом. На вероятность отыскания глобального минимума влияет выбор начальных значений и . Специально для подбора "хороших" начальных значений центров разработаны процедуры инициализации, две из которых представлены ниже.
Алгоритм пикового группирования
Для отыскания "первого приближения" к наилучшему расположению центров в алгоритме пикового группирования используются так называемые пиковые функции. При подаче на вход сети обучающих векторов создается равномерная сетка, покрывающая все пространство, занимаемое данными векторами.
Узлы сетки обозначим как для каждого из них рассчитывается значение пиковой функции

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

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

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

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