Идея неокогнитрона впервые была предложена Фукушимой в [1–4] как универсальная система распознавания двумерных образов. Считается, что организация работы неокогнитрона наиболее близка к процессам, происходящим в зрительной коре головного мозга человека. К главному достонству системы можно отнести её нечувствительность к позиционным сдвигам, масштабированию и зашумлениям анализируемого образа. Процесс классификации разбивается на этапы, каждый из которых характеризуется анализом содержательно различных признаков, но выполняется согласно общей процедуре. На каждой стадии обработки происходит выделение существенных свойств выходов предыдущей стадии и формирование сжатого представления этих свойств для следующего этапа обработки. Важно подчеркнуть, что на любом текущем шаге в качестве входных используются только данные, являющиеся выходом предыдущего шага. На рис. 1 приведена иллюстрация поэтапного функционирования неокогнитрона.
Каждая стадия обработки выполняется фиксированными слоями неокогнитрона. Первоначальный слой нейронной сети носит название входного или рецептивного. Послойная обработка образа выполняется до тех пор, пока не будут найдены его меры сходства со всеми классами, известными сети.
Нейронные клетки соединены между собой посредством передаточных устройств – синапсов, которые, помимо прочего способны усиливать либо гасить сигнал. Можно сказать, что все знание о запоминаемых объектах, накапливаемое в процессе обучения сети, сконцентрировано в величинах силы передачи синапсов между нейронными клетками. В отличие от полносвязных моделей нейронных сетей, в которых все нейроны текущего слоя соединены со всеми нейронами предшествующего слоя, в неокогнитроне нейроны соединены только с определенной областью нейронов предыдущего слоя, называемой областью связи. Каждый слой нейронной сети состоит из непересекающихся фрагментов, называемых плоскостями нейронов. На наш взгляд термин «плоскость» не совсем удачен, но мы будем его употреблять, учитывая его традиционность. Плоскость нейронов – это область, состоящая из нейронов, обрабатывающих соседние фрагменты анализируемого образа, и служащая для распознавания или сжатия информации.
В состав неокогнитрона для распознавания входит несколько видов нейронных клеток, а именно простые (S-клетки) и сложные (С-клетки). Эти клетки составляют плоскости соответственно простых (S-) и сложных (С-) плоскостей. Основная задача простых плоскостей – производить извлечение существенных характеристик. Каждая S-плоскость обучена так, чтобы реагировать на определенный входной вектор. S-плоскости разбиты на пересекающиеся области – области конкуренции. В каждой области конкуренции, после возбуждения плоскости, определяется нейрон с максимальным значением выходного сигнала, выходы же остальных нейронов из этой области становятся равным нулю. Такой эффект носит название бокового или латерального торможения. Вообще говоря, торможение – процесс влияния одного нейрона на другой с целью уменьшения выходного сигнала последнего, целью процесса возбуждение напротив является увеличение выходного сигнала нейрона, на который производится воздействие.
Каждая S-клетка из простой плоскости на вход получает вектор из областей связей сложной плоскости предыдущей стадии. Набор весовых коэффициентов синапсов, соединяющих область связи и каждую S-клетку одинаков для всех S-клеток, находящихся в одной S-плоскости. Это гарантирует, что существенные характеристики объекта будут обнаружены вне зависимости от их расположения на входной плоскости клеток. C-клетка последующей сложной плоскости активируется (выдает сжатое приближение), если активна хотя бы одна S-клетка, входящая в область связи данной С-клетки.
Заключительный этап обработки реализуется алгоритмом «победитель забирает все» – среди всех выходов сети выбирается максимальный, соответствующий наиболее похожему из запомненных классов.
Помимо S- и C-клеток в состав неокогнитрона входят тормозящие V-клетки. Если С-клетки служат для возбуждения S-клеток, то V-клетки служат для торможения последних. Выходом V-клетки служит среднее значение выходных сигналов сложных нейронов, попадающих в область связи. Следует заметить, что каждой S-клетке соответствует одна V-клетка, причем их области связи одинаковы. Все синапсы в нейронной сети принадлежат одному из следующих классов:
На рис. 2 представлен пример связей между C-, V- и S-клетками. Темные клетки в плоскостях C-клеток попадают в область связи выделенных S-клеток и служат для возбуждения отмеченной на рисунке тормозящей V-клетки.
После попадания образа на входной слой неокогнитрона последовательно возбуждаются слои из простых и соответствующих им сложных плоскостей. Выход S-клетки на позиции n в k-той плоскости слоя l вычисляется как
Выход оказывающей тормозящее действие на соответствующие ей S-клетки V-клетки на позиции n слоя l описывается выражением:
Плоскости S-клеток делятся на перекрывающиеся области конкуренции, внутри этих областей обучается только один нейрон, обладающий максимальным значением выходного сигнала. Подавление активности нейронов-соседей в области конкуренции происходит методом латерального торможения, аналогичного используемому в нейронной сети MAXNET [5]. Чтобы избежать длительной итеративной процедуры исключения слабейших выходов в [6] предложена модель ускоренного латерального торможения (рис. 3).
Выход нейрона на позиции n плоскости k слоя l латерального торможения описывается формулой:
Значения весов тормозящих синапсов области конкуренции берутся из расчета:
Весовые коэффициенты al(v,p,k) и bl(k) в начале обучения устанавливаются близкими нулю и далее вычисляются в процессе обучения неокогнитрона. Значения остальных весовых связей берутся следующим образом:
Как уже отмечалось выше, настройке подлежат значения весов al(v,p,k) и bl(k). После определения нейрона-победителя в каждой рецептивной области производится настройка его весов:
m – номер обучающего образа, ql – коэффициент скорости обучения.
К сожалению, данная модель нейронной сети не способна к правильному определению образа, если последний был повернут на угол, превышающий 30° (тестировалось на выборке из печатных букв). Для того, чтобы создать структуру, инвариантную к вращению образа, в работах [7, 8] была предложена модель, основанная на стеках плоскостей клеток. Двумерный вариант нейронной сети (положение образа по осям X и Y) был изменен на трехмерный (добавился угол поворота образа относительно запомненного вектора). При прохождении сигнала по сети S-/C-клеток, плоскость, находящаяся на вершине стека, получает входной вектор без изменений. На вход последующей в стеке плоскости S-/C-клеток поступает тот же вектор, но умноженный на матрицу вращения на определенный угол поворота, заданный проектировщиком сети (нами был взят угол 25°). На вход третьей плоскости – образ с углом поворота 25°+25° = 50° и т. д. В работе [7] показано, что при наличии стеков плоскостей с углами поворота 90, 180 и 270° нейронная сеть способна безошибочно распознавать 85,3% образов символов против 76,2% образов, опознанных классическим неокогнитроном.
Графическое представление модели стеков плоскостей представлено на рис. 5.
Дальнейшим расширением способности к распознованию этой нейронной сети является регуляция параметра селективности rkl. В работе Гильдебрандта [9] разработан алгоритм настройки данного параметра. Основная идея алгоритма Гильдебрандта состоит в том, чтобы производить регуляцию селективности S-клеток, при этом области связи в разных S-плоскостях были как можно больше без взаимного перекрытия. После обучения вектор весов S-клетки al становится пропорционален вектору суммы входных обучающих векторов: UCl–1,1+UCl–1,2+UCl–1,3+... Практически [10] данный метод определяет селективность клетки на основе усредненных обучающих характеристик. Таким образом, метод Гильдебрандта не гарантирует, что среди всей обучающей выборки не найдется вектора, не попадающего в требуемую область связи, рис. 6.
Значения отклика S-клетки при её активации векторами UCl–1,1, UCl–1,2 и UCl–1,3 равны соответственно 0, длине вектора OB и длине вектора OC (рис. 7).
Одним из решений отмеченной проблемы обучающей выборки может стать настройка селективности, при котором гарантируется минимальный отклик S-клетки на все обучающие образы USl min. Основанный на такой настройке метод называют «близкое к оптимуму обучение, основанное на характеристике» (Sub-Optimal Feature-based Training, SOFT) [11–13]. Параметр Sl min выбирают в пределах от 0 до 1.
В [12] показано, что изменение селективности rkl разумно производить, первоначально настраивая весовые коэффициенты слоя, а затем модифицируя селективности. Таким образом, первоначально инициализируется начальное значение селективности rkl и значение минимального отклика клетки min(XSl(k)), затем производится активизация слоя m-тым обучающим вектором, и, если активация клетки победителя в области конкуренции XSl(nklm,k) меньше текущего минимума отклика, производится обновление текущего минимума на величину активации победителя, т. е. если XSl(nklm,k) < min(XSl(k)), то min(XSl(k))=XSl(nklm,k). После предъявления всех обучающих образов начинается настройка параметра селективности rkl:
Рис. 8 наглядно иллюстрирует изменение рецептивной области по сравнению с ситуацией, показанной на рис. 7. Ясно, что в последнем случае все обучающие вектора попадают в требуемую рецептивную область. Заметим, что при этом происходит и увеличение значений выхода клетки при возбуждении векторами UCl–1,2 и UCl–1,3.
При данном обучении может случиться, что все вектора UCl–1,j приблизительно равны, тогда селективность рецептивной области примет вид узкого лепестка (высоко селективная клетка). Если же на вход клетки поступит сигнал, значительно отличающийся от остальных, то селективности нейронов существенно уменьшатся. Пример изменения селективности клеток представлен на рис. 9. Селективность клеток № 2 и 3 увеличилась, а клетки № 1 – уменьшилась.
Представленные результаты служат основой для дальнейших исследований по повышению эффективности неокогнитрона. Далее планируется провести работы в двух направлениях. Первое – построение расширенной иерархической модели на основе уже обученной сети. Второе направление – замена стека плоскостей, отвечающих за реагирование на вращение образа, на рекурсивную модель обработки входного вектора в слое, когда каждая последующая стадия сравнения с эталонами начинается, если не нашлось похожего образа с тем же углом, при этом производится изменение соответствующего параметра входного образа. Предполагается также распространить предложенный подход на родственные классы задач прогнозирования и контроля. Таким образом, проведен анализ нескольких вариантов при построении систем иерархического извлечения свойств. Предложены подходы по дальнейшему расширению возможностей существующих моделей на основе использования уже запомненных системой знаний.