3. На основании полученных выходных значений нейронов производится изменение весовых коэффициентов.
4. Повторение шагов 2 и 3, пока выходные значения сети не застабилизируются с заданной точностью. Применение этого способа определения завершения обучения, отличного от использовавшегося для сети обратного распространения, обусловлено тем, что подстраиваемые значения синапсов фактически не ограничены.
На втором шаге цикла попеременно предъявляются все образы из входного набора. Вид откликов на каждый класс входных образов не известен заранее и будет представлять собой произвольное сочетание состояний нейронов выходного слоя, обусловленное случайным распределением весов на стадии инициализации. Сеть способна обобщать схожие образы, относя их к одному классу. Тестирование обученной сети позволяет определить топологию классов в выходном слое.
Алгоритм обучения без учителя Кохонена – предусматривает подстройку синапсов на основании их значений от предыдущей итерации.
Обучение сводится к минимизации разницы между входными сигналами нейрона, поступающими с выходов нейронов предыдущего слоя yi(n‑1), и весовыми коэффициентами его синапсов.
Алгоритм обучения имеет примерно такую же структуру, как в методе Хебба, но на шаге 3 из всего слоя выбирается нейрон, значения синапсов которого максимально походят на входной образ, и подстройка весов проводится только для него. Эта, так называемая, аккредитация может сопровождаться затормаживанием всех остальных нейронов слоя и введением выбранного нейрона в насыщение. Выбор такого нейрона может осуществляться, например, расчетом скалярного произведения вектора весовых коэффициентов с вектором входных значений. Максимальное произведение дает выигравший нейрон.
Другой вариант выбора выигравшего нейрона - расчет расстояния между векторами в p-мерном пространстве, где p – размер векторов. «Побеждает» нейрон с наименьшим расстоянием.
где j – индекс нейрона в слое n, i – индекс суммирования по нейронам слоя (n-1), wij – вес синапса, соединяющего нейроны; выходы нейронов слоя (n-1) являются входными значениями для слоя n.
Иногда нейроны, слишком часто получающие аккредитацию, принудительно исключаются из рассмотрения, чтобы все нейроны слоя. Например торможением только что выигравшего нейрона.
При обучении по алгоритму Кохонена существует практика нормализации входных образов, а так же нормализация начальных значений весовых коэффициентов на стадии инициализации, что позволяет сократить длительность процесса обучения.
где xi – i-ая компонента вектора входного образа или вектора весовых коэффициентов, а n – его размерность.
Инициализация весовых коэффициентов случайными значениями может привести к тому, что различные классы, которым соответствуют плотно распределенные входные образы, сольются или, наоборот, раздробятся на дополнительные подклассы в случае близких образов одного и того же класса. Для избежания такой ситуации используется метод выпуклой комбинации. Суть которого сводится к тому, что входные нормализованные образы подвергаются преобразованию:
где xi – i-ая компонента входного образа, n – общее число его компонент, α(t) – коэффициент, изменяющийся в процессе обучения от нуля до единицы, в результате чего вначале на входы сети подаются практически одинаковые образы, а с течением времени они все больше сходятся к исходным. Весовые коэффициенты устанавливаются на шаге инициализации равными величине
где n – размерность вектора весов для нейронов инициализируемого слоя.