Электронная библиотека

Биография

Каталог ссылок



Теплинский К. С., Исаенко А. П. "Проблема распознавания образов с использованием нейронных сетей"

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


Искусственная нейронная сеть (НС, нейронная сеть) - это набор нейронов, соединенных между собой. Как правило, передаточные функции всех нейронов в нейронной сети фиксированные, а весы являются параметрами нейронной сети и могут изменяться. Некоторые входы нейронов обозначены как внешние входы нейронной сети, а некоторые выходы - как внешние выходы нейронной сети. Подавая любые числа на входы нейронной сети, мы получаем какой-либо набор чисел на выходах нейронной сети. Таким образом, работа нейронной сети составляется в преобразовании входного вектора в выходной вектор, причем это преобразование задается весами НС [2].


В целом проблема распознавания образов состоит из двух частей: обучение и распознавание [1]. Обучение осуществляется путем показа отдельных объектов с указанием их принадлежности тому или другому образу. В результате обучения распознающая система должна приобрести способность реагировать одинаковыми реакциями на все объекты одного образа и разными - на все объекты разных образов. Очень важно, что процесс обучения должен завершиться только путем показов конечного числа объектов без каких-нибудь других подсказок. Объектами обучения могут быть или картинки, или другие визуальные изображения (буквы), или разные явления внешнего мира, например звуки, состояния организма при медицинском диагнозе, состояние технического объекта в системах управления и др. Важно, что в процессе обучения указываются только сами объекты и их принадлежность образу. За обучением следует процесс распознавания новых объектов, которое характеризует действия уже наученной системы. Автоматизация этих процедур и представляет проблему обучения распознаванию образов. В том случае, когда человек сам разгадывает или придумывает, а потом навязывает машине правило классификации, проблема распознавания решается частично, так как основную и главную часть проблемы (обучение) человек берет на себя.


Приведем пример работы нейронной сети в задаче распознавания рукописных букв. Начальными данными есть растровые черно-белые изображения букв размером 30x30 пикселей. Надо определить, какая это буква (в алфавите 33 буквы). Для нейронной сети простейшее формулирование задачи есть таким: на входе НС вектор из 900 двоичных символов (900=30x30). При этом для определения критериев анализа входного изображения можно использовать разные подходы - определять наклон букв; разбивать изображение на блоки и оценивать процентное количество белых и черных пикселей; найти количество пересечения параллельных прямых черными областями. Можно все эти средства комбинировать и использовать вместе, таким образом увеличивая достоверность верного ответа. Для нашей задачи надо построить нейронную сеть с 900 входами и 33 выходами, которые обозначены буквами. Если на входе нейронной сети изображения буквы "А", то максимальное значение исходного сигнала достигается на выходе "А". Аналогично нейронная сеть работает для всех 33 букв [2]. Объясним, зачем нужно выбирать выход нейронной сети с максимальным уровнем сигнала. Дело в том, что уровень исходного сигнала, как правило, может принимать любые значения из какого-то отрезка. Однако, в данной задаче нас интересует не аналоговый ответ, а лишь номер категории (номер буквы в алфавите). Поэтому используется следующий подход - каждой категории подставляется свой выход, а ответом нейронной сети считается та категория, на чьем выходе уровень сигнала максимальный. В определенном значении уровень сигнала на выходе "А" - это достоверность того, что на вход нейронной сети была представлена рукописная буква "A". Задачи, в которых нужно отнести входные данные к одной из известных категорий, называются задачами классификации. Изложенный подход - стандартный способ классификации с помощью нейронных сетей.


Вопрос построения НМ решается в два этапа: выбор архитектуры нейронной сети и подбор весов (обучение) нейронной сети. На первом этапе следует выбрать какие нейроны мы хотим использовать (число входов, передаточные функции) и каким способом следует соединить их между собой. Сейчас существует несколько десятков разных нейросетевых архитектур, причем эффективность многих из них доказана математически. Наиболее популярные и изученные архитектуры - это многослойный перцептрон, нейронные сети Кохонена и другие. На втором этапе нам надо "научить" избранную нейронную сеть, т.е. подобрать такие значения ее весов, чтобы она работала нужным образом. В используемых на практике нейронных сетях количество весов может составлять несколько десятков тысяч, поэтому обучение - действительно сложный процесс. Для многих архитектур разработаны специальные алгоритмы обучения, которые позволяют настроить весы нейронной сети определенным образом. Наиболее популярный из этих алгоритмов - метод обратного распространения ошибки (Error Back Propagation), используемый, например, для обучения перцептрона.


Проблема обучения распознаванию образов интересна как с прикладной, так и с принципиальной точки зрения. С прикладной точки зрения решение этой проблемы важно прежде всего потому, что оно открывает возможность автоматизировать много процессов, которые до сих пор связывали лишь с деятельностью живого мозга. Принципиальное значение проблемы тесно связано с вопросом, что все чаще возникает в связи с развитием идей кибернетики: что может и что принципиально не может делать машина? В какой мере возможности машины могут быть приближены к возможностям живого мозга? Может ли машина развить в себе способность перенять у человека умения делать определенные действия в зависимости от ситуаций, которые возникают в окружающей среде? Пока стало ясно только то, что если человек может сначала сам осознать свое умение, а потом его описать, т.е. указать, почему он делает действия в ответ на каждое состояние внешней среды или как (по какому правилу) он объединяет отдельные объекты в образы, то такое умение без принципиальных трудностей может быть передано машине. Если же человек имеет умение, но не может объяснить его, то остается только один путь передачи умения машине - обучение примерами[1].


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

Электронная библиотека

Биография

Каталог ссылок