- •Нейронные сети в компьютерной инженерии
- •1.2. Основные типы архитектуры нейронных сетей
- •1.3 Сети прямого распространения
- •1.3.1 Однослойные сети
- •1.3.2 Многослойные сети
- •1.4 Конкурентные сети
- •1.4.4 Самоорганизующиеся карты Кохонена
- •1.5 Рекуррентные сети
- •Сеть Хопфилда
- •2.1 Проектирование нейросетевых систем
- •2.2 Основные задачи, решаемые с применением нейронных сетей
- •3.Реализация нейронных сетей
- •3.1 Программная реализация нс
- •3.2 Элементная база аппаратной реализации нс
- •3.3 Аппаратная реализация нейрокомпьютеров
- •Нейроускорители на базе плис.
- •Нейроускорители на базе каскадного соединения сигнальных процессоров
1.4.4 Самоорганизующиеся карты Кохонена
Сети этого типа также рассчитаны на самообучение. В процессе обучения на вход сети подаются различные образы обучающего множества. Сеть улавливает особенности их структуры и разделяет образы на кластеры. Уже обученная сеть относит каждый вновь поступивший входной образ к одному из кластеров, руководствуясь некоторым критерием близости.
Сеть состоит из одного входного и одного выходного слоя и представлена на рис.9. Количество элементов в выходном слое определяет, сколько различных кластеров система может распознать. Каждый из входных элементов получает на вход весь входной образ Х, как и в любой НС. Каждой связи приписан некоторый синаптический вес , но при этом каждый выходной нейрон соединен и с ближайшими соседями по регулярной структуре (сетке). Таким образом на выходной нейрон поступают входные сигналы Х и выходные сигналы соседних нейронов.
Таким образом, выходные нейроны активизируются в двумерном массиве (сетке), вид которого зависит от приложения. В процессе обучения веса нейронов выходного слоя адаптируются, т.о. что порядок или близость во входном пространстве сохраняется и в выходном слое. Образы близкие во входном пространстве отображаются в выходные нейроны, которые физически близки на заданной сетке. Таким образом, имеет место отображение, сохраняющее топологические свойства. Отметим, что внутрислойные связи играют важную роль в процессе обучения, т.к. корректировка весов происходит только в окрестности того элемента, который наилучшим образом откликается на очередной вход. Как и в конкурирующем обучении выигрывает тот нейрон, который имеет вес Wближе всех к входному нейрону. Но в отличие от предыдущего случая корректируются веса не только нейрона-победителя, но и его ближайшего окружения.
Обычно в качестве обучающего множества берутся случайные образы. На текущем шаге обучения t предъявляется образ Х(t). По приведенным выше формулам определяется нейрон-победитель К. Далее его вес и веса его соседей изменяются по формуле:
. (13)
Здесь g(o,k) – убывающая функция, определенная на заданной сетке нейронов в зависимости от расстояния между ними. Например, часто используется формула Гаусса, график которой представлен на рис.12 a). Благодаря этому правилу образы близкие во входном пространстве признаков отображаются в выходном слое на сетке. Наряду с формулой Гаусса часто используется функция вида “мексиканская шляпа”, показанная на рис.12б). Подобная функция имеет место в живой природе при самоорганизации клеток с использованием латерального торможения.
Сеть и карта Кохонена имеет следующие недостатки: 1) метод обучения по сути является эвристическим, поскольку формально не обосновано (не сведено к задаче оптимизации); 2) конечные весовые вектора нейронов зависят от последовательности обработки входных образов; 3) при различных начальных условиях могут получиться различные результаты; 4) некоторые параметры алгоритма обучения, такие как скорость обучения, размер окрестности и вид функции коррекции весов необходимо изменять в процессе обучения и даже менять обучающие выборки. Поэтому часто применяют комбинированные сети, где пытаются объединить лучшие черты различных архитектур и методов обучения.
Сети Кохонена (и их современные модификации) широко применяются для сжатия данных, в частности, изображений. При этом образующая кластер группа данных представляется единственным нейроном-победителем. В этом случае достигается значительное сокращение информации, которое и называется сжатием (компрессией).
Рис. 12 Функции коррекции весов окружения нейрона-победителя
Допустим, что изображение размером пикселов разделяется на одинаковые кадры размеромпикселов. Компоненты входного вектораXразмерностьюпредставляют пикселы данного кадра изображения. Каждая компонента определяет интенсивность пиксела в кадре. Сеть Кохонена содержитnнейронов, каждый из которых связан со всеми компонентами вектораX. При обучении сети в данном случае минимизируется ошибка квантования, гдепредставляет весовой вектор нейрона – победителя в случае предъявления вектораXиp–число входных векторов. После обучения векторуXкаждого кадра соответствует весовой вектор нейрона-победителя. Для похожих, но разных кадров, побеждать будет один и тот же нейрон (либо их группа). Номера нейронов-победителей образуют кодовую таблицу, а веса этих нейронов представляют средние значения, соответствующие компонентам вектораX. Поскольку число нейроновnсущественно меньше количества кадров, то имеем значительное уменьшение объема информации для хранения изображения. Коэффициент компрессии при этом определяется [7 Осовский] следующей формулой:, гдеTиt– число битов, используемых для представления значений интенсивности и весов соответственно. Данный подход позволяет достичь степени компрессии 16 при значениях коэффициентаPSNR26-28 дб. На рис.13 представлены исходное и сжатое изображения “Барбара” (размером 512x512 пикселов). При этом использовалась сеть Кохонена из 512 нейронов. В случае 8-битового представления получена степень компрессии.
Рис.13 Сжатие изображений сетью Кохонена