В случае, когда выходное признаковое пространство представляет собой дискретный перечень из двух или более групп данных, задачей нейронной сети является отнесение входных векторов к одной из этих групп. В этом случае говорят, что нейросетевая система выполняет классификацию или категоризацию данных.
Эти две интеллектуальные задачи, по-видимому, следует отличать друг от друга. Термин класс можно определить, как совокупность предметов или понятий (образов), выделенных и сгруппированных по определенным признакам или правилам. Под классификацией мы будем понимать отнесение некоторого образа к классу, выполняемое по этим формальным правилам по совокупности признаков. Категория же (если отвлечься от специфического философского характера этого понятия) определяет лишь некоторые общие свойства образов и связи между ними. Задача категоризации, т.е. определения отношения данного образа к некоторой категории, гораздо менее определена, чем задача отношения к классу. Границы различных категорий являются нечеткими, расплывчатыми, и обычно сама категория понимается не через формальное определение, а только в сравнении с другими категориями. Границы классов, напротив, определены достаточно точно - образ относится к данному классу, если известно, что он обладает необходимым числом признаков, характерных для этого класса.
Итак, задачей систем-классификаторов является установление принадлежности образа к одному из формально определенных классов. Примерами такой задачи является задача классификации растений в ботанике, классификация химических веществ по их свойствам и типам возможных реакций, в которые они вступают, и другие. Формальные признаки могут быть определены посредством правил типа “если..-то..”, а системы, оперирующие с такими правилами, получили название экспертных систем. Традиционной областью применения классификаторов на нейронных сетях является экспериментальная физика высоких энергий, где одной из актуальных задач выступает выделение среди множества зарегистрированных в эксперименте событий с элементарными частицами событий, представляющих интерес для данного эксперимента.
Проблема категоризации находится на ступеньку выше по сложности в сравнении с класиификацией. Особенность ее заключается в том, что помимо отнесения образа к какой-либо группе, требуется определить сами эти группы, т.е. сформировать категории.
В случае обучения с учителем (например, в персептроне) формирование категорий происходит методом проб и ошибок на основе примеров с известными ответами, предоставляемыми экспертом. Формирование категорий весьма напоминает процесс обучения у живых организмов, поэтому обычно эксперта называют “супервизором” или учителем. Учитель управляет обучением при помощи изменения параметров связей и, реже, самой топологии сети.
Задачей системы-категоризатора является формирование обобщающих признаков в совокупности примеров. При увеличении числа примеров несущественные, случайные признаки сглаживаются, а часто встречающиеся - усиливаются, при этом происходит постепенное уточнение границ категорий. Хорошо обученная нейросетевая система способна извлекать признаки из новых примеров, ранее неизвестных системе, и принимать на их основе приемлемые решения.
Пусть есть некоторый объект, который характеризуется несколькими параметрами p1..pN. Пусть также есть Mклассов объектов, C1...CM. Мы наблюдаем объект и можем рассчитать или измерить его параметры. Вектор pхарактеризует наблюдаемый объект:
p1
pN
На основании вектора pмы должны решить, к какому классу отнести объект, т.е. выбрать Ci, к которому принадлежит объект, характеризуемый набором параметров p.
Решение задачи можно представить в виде вектора:
с1
c = ...
cM
и выполняются условия:
0 ≤ c m ≤ 1 и ∑Mm=1 cm = 1 (1)
Здесь c m— вероятность, с которой объект относится к классу C m. Если рассматривать c mкак вероятности, то должны выполняться условия (1). К примеру, c1 = 0,9, c2 = 0,1означает, что объект
с данным набором параметров pс вероятностью 0,9 относится к классу C1 и с вероятностью 0,1 — к классу C2.
Если создать МСП с N входами и M выходами и обучить его давать на выходе вектор c, когда на вход подается p, то мы решим поставленную задачу.
Сеть строит отображение P → Cв процессе обучения. Целиком извлечь это отображение сеть не позволяет, но можно получить произвольное количество пар (p→ c), связанных отображением. Для произвольного вектора pна входе мы можем получить вероятности принадлежности к классам на
выходе.
Почему на выходе будут получены именно вероятности cmи будут ли выполняться условия (1)?
Если обучение прошло успешно, то мы наверняка получим на выходе что-то похожее на вероятности. Это определяется алгоритмом обучения. Но чаще всего оказывается, что компоненты выходного вектора могут быть меньше 0 или больше 1, а второе условие (1) выполняется лишь приблизительно:
∑Mm=1 cm≈ 1
Неточность — следствие аналоговости нейронных сетей. Большинство результатов, даваемых нейросетями, неточно. Кроме того, при обучении сети указанные условия, накладываемые на вероятности, не вводятся в сеть непосредственно, а неявно содержатся во множестве данных, на которых обучается сеть. Это — вторая причина некорректности результата.
Такой способ формализации — не единственный, но один из удачных. Можно обучить сеть и подругому. Пусть у сети только один выход, и пусть его смысл — номер класса mдля вектора p, предъявленного на входе. Следовательно, сеть обучается зависимости m(p).
Если обучение прошло успешно, то когда на вход сети подан вектор p, характеризующий объект, на выходе будет получено число m, и нами принимается решение о принадлежности pк классу Cm.
Будем представлять буквы в виде точечных изображений