WWW.DISSERS.RU

БЕСПЛАТНАЯ ЭЛЕКТРОННАЯ БИБЛИОТЕКА

   Добро пожаловать!

Pages:     | 1 |   ...   | 7 | 8 || 10 | 11 |   ...   | 25 |
        1. Выбор начальныхзначений весовых векторов

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

Рандомизация весов слоя Кохонена можетпородить серьезные проблемы при обучении, так как в результате ее весовыевекторы распределяются равномерно по поверхности гиперсферы. Из-за того, чтовходные векторы, как правило, распределены неравномерно и имеют тенденциюгруппироваться на относительно малой части поверхности гиперсферы, большинствовесовых векторов будут так удалены от любого входного вектора, что они никогдане будут давать наилучшего соответствия. Эти нейроны Кохонена будут всегдаиметь нулевой выход и окажутся бесполезными. Более того, оставшихся весов,дающих наилучшие соответствия, может оказаться слишком мало, чтобы разделитьвходные векторы на классы, которые расположены близко друг к другу наповерхности гиперсферы.

Допустим, что имеется несколько множестввходных векторов, все множества сходные, но должны быть разделены на различныеклассы. Сеть должна быть обучена активировать отдельный нейрон Кохонена длякаждого класса. Если начальная плотность весовых векторов в окрестностиобучающих векторов слишком мала, то может оказаться невозможным разделитьсходные классы из-за того, что не будет достаточного количества весовыхвекторов в интересующей нас окрестности, чтобы приписать по одному из нихкаждому классу входных векторов.

Наоборот, если несколько входных векторовполучены незначительными изменениями из одного и того же образца и должны бытьобъединены в один класс, то они должны включать один и тот же нейрон Кохонена.Если же плотность весовых векторов очень высока вблизи группы слегка различныхвходных векторов, то каждый входной вектор может активировать отдельный нейронКохонена. Это не является катастрофой, так как слой Гроссберга может отобразитьразличные нейроны Кохонена в один и тот же выход, но это расточительная тратанейронов Кохонена.

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

Одно из решений, известное под названиемметода выпуклой комбинации(convex combination method), состоит в том, что все веса приравниваются одной итой же величине

,

где п – числовходов и, следовательно, число компонент каждого весового вектора. Благодаряэтому все весовые векторы совпадают и имеют единичную длину. Каждой жекомпоненте входа Х придаетсязначение

,

где п – числовходов. В начале αочень мало, вследствие чего все входные векторы имеют длину, близкую к, и почти совпадают с векторами весов. Впроцессе обучения сети α постепенно возрастает, приближаясь к единице. Это позволяетразделять входные векторы и окончательно приписывает им их истинные значения.Весовые векторы отслеживают один или небольшую группу входных векторов и вконце обучения дают требуемую картину выходов. Метод выпуклой комбинации хорошоработает, но замедляет процесс обучения, так как весовые векторы подстраиваютсяк изменяющейся цели. Другой подход состоит в добавлении шума к входнымвекторам. Тем самым они подвергаются случайным изменениям, схватывая в концеконцов весовой вектор. Этот метод также работоспособен, но еще более медленен,чем метод выпуклой комбинации.

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

Еще один метод наделяет каждый нейронКохонена «Чувством справедливости». Если он становится победителем чаще своейзаконной доли времени (примерно 1/k, где k– число нейроновКохонена), он временно увеличивает свой порог, что уменьшает его шансы навыигрыш, давая тем самым возможность обучаться и другим нейронам.

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

        1. Режиминтерполяции

До сих пор мы обсуждали алгоритм обучения, вкотором для каждого входного вектора активировался лишь один нейрон Кохонена.Это называется методом аккредитации. Его точность ограничена, так как выход полностью является функциейлишь одного нейрона Кохонена.

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

Метод интерполяции способен устанавливатьболее сложные соответствия и может давать более точные результаты. По-прежнему,однако, нет убедительных данных, позволяющих сравнить режимы интерполяции иаккредитации.

        1. Статистическиесвойства обученной сети

Метод обучения Кохонена обладает полезной иинтересной способностью извлекать статистические свойства из множества входныхданных. Как показано Кохоненом [8], для полностью обученной сети вероятностьтого, что случайно выбранный входной вектор (в соответствии с функциейплотности вероятности входного множества) будет ближайшим к любому заданномувесовому вектору, равна 1/k,где k – число нейронов Кохонена. Этоявляется оптимальным распределением весов на гиперсфере. (Предполагается, чтоиспользуются все весовые векторы, что имеет место лишь в том случае, еслииспользуется один из обсуждавшихся методов распределения весов.)

      1. ОБУЧЕНИЕ СЛОЯГРОССБЕРГА

Слой Гроссберга обучается относительнопросто. Входной вектор, являющийся выходом слоя Кохонена, подается на слойнейронов Гроссберга, и выходы слоя Гроссберга вычисляются, как при нормальномфункционировании. Далее, каждый вес корректируется лишь в том случае, если онсоединен с нейроном Кохонена, имеющим ненулевой выход. Величина коррекции весапропорциональна разности между весом и требуемым выходом нейрона Гроссберга, скоторым он соединен. В символьной записи

vijн =vijс + β(yj –vijс)ki, (4.8)

где ki – выход i-го нейрона Кохонена (только для одногонейрона Кохонена он отличен от нуля); уj – j-ая компонента вектора желаемыхвыходов.

Первоначально β берется равным ~0,1 и затемпостепенно уменьшается в процессе обучения.

Отсюда видно, что веса слоя Гроссберга будутсходиться к средним величинам от желаемых выходов, тогда как веса слоя Кохоненаобучаются на средних значениях входов. Обучение слоя Гроссберга – это обучение с учителем, алгоритмрасполагает желаемым выходом, по которому он обучается. Обучающийся безучителя, самоорганизующийся слой Кохонена дает выходы в недетерминированныхпозициях. Они отображаются в желаемые выходы слоем Гроссберга.

      1. СЕТЬ ВСТРЕЧНОГО РАСПРОСТРАНЕНИЯПОЛНОСТЬЮ

На рис. 4.4 показана сеть встречногораспространения целиком. В режиме нормального функционирования предъявляютсявходные векторы Х иY, и обученная сеть дает навыходе векторы X’ и Y’,являющиеся аппроксимациями соответственно для Х и Y. Векторы Х и Y предполагаются здесь нормализованнымиединичными векторами, следовательно, порождаемые на выходе векторы также будутиметь тенденцию быть нормализованными.

В процессе обучения векторы Х и Y подаются одновременно и как входныевекторы сети, и как желаемые выходные сигналы. Вектор Х используется для обучения выходовX’, а вектор Y– для обучения выходовY’ слоя Гроссберга. Сеть встречного распространения целиком обучаетсяс использованием того же самого метода, который описывался для сети прямогодействия. Нейроны Кохонена принимают входные сигналы как от векторовX, так и от векторовY. Но это неотличимо отситуации, когда имеется один большой вектор, составленный из векторовХ и Y, и не влияет на алгоритмобучения.

Рис. 4.4. Полная сеть встречногораспространения

В качестве результирующего получаетсяединичное отображение, при котором предъявление пары входных векторов порождаетих копии на выходе. Это не представляется особенно интересным, если незаметить, что предъявление только вектора Х (с вектором Y, равным нулю) порождает как выходыX’, так и выходы Y’. ЕслиF – функция, отображающая Х в Y’, тосеть аппроксимирует ее. Также, если F обратима, то предъявление только вектора Y (приравнивая Х нулю) порождает X’.Уникальная способность порождать функцию и обратную к ней делает сетьвстречного распространения полезной в ряде приложений.

Рис. 4.4 в отличие от первоначальнойконфигурации [5] не демонстрирует противоток в сети, по которому она получиласвое название. Такая форма выбрана потому, что она также иллюстрирует сеть безобратных связей и позволяет обобщить понятия, развитые в предыдущихглавах.

      1. ПРИЛОЖЕНИЕ: СЖАТИЕДАННЫХ

В дополнение к обычным функциям отображениявекторов встречное распространение оказывается полезным и в некоторых менееочевидных прикладных областях. Одним из наиболее интересных примеров являетсясжатие данных.

Сеть встречного распространения может бытьиспользована для сжатия данных перед их передачей, уменьшая тем самым числобитов, которые должны быть переданы. Допустим, что требуется передать некотороеизображение. Оно может быть разбито на подизображения S, как показано на рис. 4.5. Каждоеподизображение разбито на пиксели (мельчайшие элементы изображения). Тогдакаждое подизображение является вектором, элементами которого являются пиксели,из которых состоит подизображение. Допустим для простоты, что каждый пиксель– это единица (свет)или нуль (чернота). Если в подизображении имеется п пикселей, то для его передачипотребуется п бит. Еслидопустимы некоторые искажения, то для передачи типичного изображения требуетсясущественно меньшее число битов, что позволяет передавать изображения быстрее.Это возможно из-за статистического распределения векторов подизображений.Некоторые из них встречаются часто, тогда как другие встречаются так редко, чтомогут быть грубо аппроксимированы. Метод, называемый векторным квантованием, находит болеекороткие последовательности битов, наилучшим образом представляющие этиподизображения.

Рис. 4.5. Система сжатияизображений.

Сеть встречного распространения может бытьиспользована для выполнения векторного квантования. Множество векторовподизображений используется в качестве входа для обучения слоя Кохонена пометоду аккредитации, когда лишь выход одного нейрона равен 1. Веса слояГроссберга обучаются выдавать бинарный код номера того нейрона Кохонена, выходкоторого равен 1. Например, если выходной сигнал нейрона 7 равен 1 (а всеостальные равны 0), то слой Гроссберга будет обучаться выдавать 00...000111(двоичный код числа 7). Это и будет являться более короткой битовойпоследовательностью передаваемых символов.

На приемном конце идентичным образомобученная сеть встречного распространения принимает двоичный код и реализуетобратную функцию, аппроксимирующую первоначальное подизображение.

Этот метод применялся как к речи, так и кизображениям, с коэффициентом сжатия данных от 10:1 до 100:1. Качество было 'приемлемым, хотя некоторые искажения данных на приемном конценеизбежны.

      1. ОБСУЖДЕНИЕ

Роберт Хехт-Нильсон, создатель сетивстречного распространения (СВР), осознавал ее ограничения: «СВР, конечно,уступает обратному распространению в большинстве приложений, связанных ссетевыми отображениями. Ее преимущества в том, что она проста и дает хорошуюстатистическую модель для своей среды входных векторов»([5],с. 27).

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

Pages:     | 1 |   ...   | 7 | 8 || 10 | 11 |   ...   | 25 |



© 2011 www.dissers.ru - «Бесплатная электронная библиотека»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.