Методы повышения эффективности обучения нейронной сети Кохонена

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

Рубрика Программирование, компьютеры и кибернетика
Вид статья
Язык русский
Дата добавления 26.04.2019
Размер файла 523,0 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

2

4

Пермский государственный педагогический университет

Россия, 614990, Пермь, ул. Сибирская, 24

Методы повышения эффективности обучения нейронной сети Кохонена

А.С. Баталов

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

Ключевые слова: нейронные сети; слой Кохонена; алгоритмы обучения; кластерный анализ; конструктивный метод обучения.

множество обучение нейронная сеть

Введение

В последнее время Пермской научной школой искусственного интеллекта (www.PermAi.ru) успешно выполнена серия проектов и опубликованы статьи на тему развития и применения нейросетевых технологий, в частности - нейросетей персептронного типа, для решения задач распознавания образов, оптимизации, прогнозирования, выявления и объяснения закономерностей в таких предметных областях, как промышленность [1, 2], экономика и бизнес [3, 4], политология и социология [5, 6], криминалистика [7-9], медицина [10, 11], экология и энергосбережение [12, 13], история [14] и др. Попытки же применения нейросетей других, более поздних парадигм, таких как RBF-сети, сети Фальмана и Либьера, сети Кохонена и др., успехом пока не увенчались. Одна из возможных причин - несовершенство и неразвитость алгоритмической базы этих парадигм.

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

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

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

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

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

1. Сеть Кохонена

На рис. 1 представлена структура нейронной сети Кохонена. Первый слой - входной - вычислений не выполняет. Второй слой называется слоем Кохонена в честь ученого, предложившего алгоритм самообучения [23]. Каждый нейрон входного слоя соединен с каждым нейроном слоя Кохонена с весом связи .

Рис. 1. Нейронная сеть Кохонена

Алгоритм обучения без учителя - алгоритм Кохонена - сводится к минимизации разницы между входными сигналами данного нейрона и весовыми коэффициентами данного нейрона [16]:

(1)

Подстройка весов связей по формуле (1) осуществляется не для всех нейронов слоя, а только для одного нейрона-победителя, вектор весов которого в наименьшей степени отличается от поданного на вход сети вектора . Чаще всего в качестве меры расстояния между векторами и используют эвклидову меру [16, 18, 19, 6, 23]:

(2)

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

(3)

где - временная константа, а - начальное значение скорости обучения.

Перед началом обучения всем весам сети следует придавать некоторые начальные значения. Чаще всего на практике применяется присваивание весам небольших случайных значений, равномерно распределенных в некотором ограниченном диапазоне, например (0 - 1) [16]. Разумеется, если ядра классов нормированы, то и начальные значения должны быть также нормированы [17].

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

Применяя простое линейное преобразование, можно выровнять относительные значения для всех компонент входного вектора. Это достигается с помощью нахождения для каждого компонента входного вектора среднего значения и дисперсии :

(4)

(5)

Здесь - вектор из обучающей выборки . Используя (4) и (5), получим новый входной вектор , где

(6)

Таким образом, преобразованный вектор имеет нулевое среднее значение и единичную дисперсию.

Еще одним способом нормализации входных векторов является деление каждой компоненты входного вектора на длину вектора [16, 19, 20, 21]:

(7)

Такая операция превращает входной вектор в вектор единичной длинны в -мерном пространстве.

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

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

1) метод выпуклой комбинации;

2) зашумление входных векторов;

3) изменение числа корректируемых нейронов;

4) наделение нейронов "чувством справедливости".

1. Методы улучшения эффективности обучения

1.1 Метод выпуклой комбинации [16, 17, 19, 21]

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

(8)

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

1.2 Зашумление входных векторов [16, 19]

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

1.3 Изменение числа корректируемых нейронов [19]

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

Подстройка весов нейронов происходит по формуле (1) с добавлением множителя :

(9)

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

(10)

где коэффициент называется эффективной шириной [22], - мера расстояния между векторами и . По мере обучения величина уменьшается. Популярным вариантом зависимости величины от дискретного времени является экспоненциальное убывание, описываемое следующей формулой:

(11)

где - номер текущей итерации, - начальное значение величины , - некоторая временная константа.

1.4 Наделение нейронов "чувством справедливости" [17, 19, 21]

Этот метод известен и под такими названиями, как "эффект утомления" [20, 23] и "победитель справедливо получает все" (CWTA) [16].

Данный метод является улучшенной модификацией WTA (Winner Takes All). Он позволяет учитывать усталость нейронов путем подсчета потенциала каждого нейрона, значение которого модифицируется всякий раз после представления очередной реализации входного вектора в соответствии со следующей формулой:

(12)

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

2. Сравнение методов

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

Рис 2. Распределение двумерных данных, использованных для тестирования

Перед тем как приступить к решению задачи кластеризации, необходимо провести нормализацию входных данных. Формулы (6) и (7), по которым проводилась нормализация, оказались неэффективными. После их применения, как показано на рис. 3, а, б, преобразованные входные векторы теряют свою структуру, и в дальнейшем обучение сети не представляется целесообразным. Наилучшие результаты нормализации получены при использовании масштабирования, рассчитанного по следующей формуле:

(13)

где - компонента входного вектора , а и - минимальное и максимальное значение соответственно.

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

Рис 3. Обучающее множество после нормализации при использовании формул (6), (7) и(13)

Рис. 4. Метод выпуклой комбинации

Размещено на http://www.allbest.ru/

2

4

Рис. 5. Метод зашумления входных векторов

Для кластеризации данных используются три множества нейронов (каждое множество содержит 2, 3 и 4 элемента), разбивающие данные на соответствующее количество классов.

На рис. 4 приведены результаты работы четырех алгоритмов, описанных выше: метод выпуклой комбинации (рис. 4), зашумление входных векторов (рис. 5), изменение числа корректируемых нейронов (рис. 6) и наделение нейронов "чувством справедливости" (рис. 7).

Как видно из рис. 4, метод выпуклой комбинации достаточно точно определил центры кластеров, но преобразование входных данных в соответствии с формулой (8) требует выполнения определенного количества итераций, зависящих от коэффициента , что замедляет работу алгоритма.

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

Рис. 6. Метод изменения числа корректируемых нейронов

Метод изменения числа корректируемых нейронов (рис. 6) не лишен недостатков двух предыдущих методов, к тому же инициализация весов нейронов случайными значениями требует настройки эффективной ширины из формулы (11).

Размещено на http://www.allbest.ru/

2

4

Рис. 7. Метод наделения нейронов "чувством справедливости"

Независимо от количества классов наилучшие результаты были получены с использованием алгоритма наделения нейронов "чувством справедливости" (рис. 7). Он лишен недостатков предыдущих методов и превосходит их по быстродействию. Единственный недостаток данного метода заключается в подстройке из формулы (12) в зависимости от количества нейронов, участвующих в обучении. Значение , рекомендуемое автором в работе [20], эффективно только для большого количества нейронов.

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

3. Конструктивный метод обучения

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

(14)

где

(15)

Если удовлетворяет условию

(16)

то происходит обучение данного нейрона, которое осуществляется по формуле (1). В неравенстве (16) - это количество входов сети, а - радиус чувствительности нейрона, задаваемый в пределах (0,1). Если входной вектор не удовлетворяет условию (16), т.е. не принадлежит ни одному из классов, то добавляется новый нейрон, веса которого инициализируются значениями входного вектора.

Размещено на http://www.allbest.ru/

2

4

Рис 8. Работа алгоритма конструктивного обучения сети Кохонена при радиусе чувствительности равном 0.7, 0.5, 0.15

По сути, в условии (16) - это не что иное, как евклидово расстояние, для которого ошибка из формулы (15) является максимальной. Поскольку входной вектор нормирован в пределах (0,1), максимальное значение ошибки равно единице. Подставив это значение в формулу (14) получим

(17)

Результат работы алгоритма конструктивного обучения сети Кохонена приведен на рис. 8. Данный метод не только не уступает методу наделения нейронов "чувством справедливости", но даже превосходит его по быстродействию на 20%.

Заключение

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

Для проведения кластеризации с заданным числом классов наилучший результат показал метод наделения нейронов "чувством справедливости" (метод CWTA). Однако недостаток данного метода заключается в возможности использовать его только с заранее заданным количеством кластеров. Предложенный в статье конструктивный метод обучения обладает преимуществами метода CWTA и решает проблему автоматического определения количества классов.

Список литературы

1.Пермская научная школа искусственного интеллекта и ее инновационные проекты / Л.Н.Ясницкий, В.В.Бондарь, С.Н.Бурдин и др. 2-е изд. М.; Ижевск, 2008. 75 с.

2.Конев С.В., Сичинава З.И. Ясницкий Л.Н. Применение нейросетевых технологий для диагностики неисправностей авиационных двигателей // Вестн. Перм. ун-та. Сер. Математика. Информатика. Механика. 2005. Вып.2. С.43-47.

3.Ясницкий Л.Н., Порошина А.М., Тавафиев А.Ф. Нейросетевые технологии как инструмент для прогнозирования успешности предпринимательской деятельности // Российское предпринимательство. 2010. №4(2). С.8-13.

4.Ясницкий Л.Н., Бржевская А.С., Черепанов Ф.М. О возможностях применения методов искусственного интеллекта в сфере туризма // Сервис plus. 2010. №4. С.111-115.

5.Ясницкий Л.Н., Черепанов Ф.М. О возможностях применения нейросетевых технологий в политологии // Нейрокомпьютеры: разработка и применение. 2010. №8. Вып.4. С.47-53.

6.Ясницкий Л.Н. О возможностях применения методов искусственного интеллекта в политологии // Вестн. Перм. ун-та. Сер. Политология. 2008. Вып.2(4). С.147-155.

7.Ясницкий Л.Н., Петров А.М., Сичинава З.И. Сравнительный анализ алгоритмов нейросетевого детектирования лжи // Изв. вузов. Поволжский регион. Технические науки. 2010. №1(13). С.64-72.

8.Ясницкий Л.Н., Петров А.М., Сичинава З.И. Технологии построения детектора лжи на основе аппарата искусственных нейронных сетей // Информационные технологии. 2010.№ 11. С.66-70.

9.Ясницкий Л.Н., Сичинава З.И. Нейросетевые алгоритмы анализа поведения респондентов // Нейрокомпьютеры: разработка и применение. 2011.№10. С.59-64.

10.Ясницкий Л.Н., Мишланов В.Ю., Полещук А.Н., Федорищев И.Ф. Приоритетные задачи и условия развития интеллектуальных медицинских систем // Перм. мед. журн. Приложение. 2008. Т.25, №1. С.170-174.

11.Ясницкий Л.Н., Думлер А.А., Полещук А.Н., Богданов К.В., Черепанов Ф.М. Нейросетевая система экспресс-диагностики сердечно-сосудистых заболеваний // Там же. 2011. №4. С.77-86.

12.Бондарь В.В., Малинин Н.А. Ясницкий Л.Н. Нейросетевой прогноз потребления электроэнергии предприятиями бюджетной сферы // Вестн. Перм. ун-та. Сер. Математика. Информатика. Механика. 2005. Вып.2. С.23-27.

13.Ясницкий Л.Н., Зайцева Н.В., Гусев А.Л., Шур П.З. Нейросетевая модель региона для выбора управляющих воздействий в области обеспечения гигиенической безопасности // Информатика и системы управления. 2011. №3(29). С.51-59.

14.Корниенко С.И., Айдаров Ю.Р., Гагарина Д.А., Черепанов Ф.М., Ясницкий Л.Н. Программный комплекс для распознавания рукописных и старопечатных текстов // Информационные ресурсы России. 2011. №1. С.35-37.

15.Аксенов С.В., Новосельцев В.Б. Организация и использование нейронных сетей (методы и технологии) / под общ. ред. В.Б.Новосельцева. Томск: Изд-во НТЛ, 2006. 128 с.

16.Брюхомицкий Ю.А. Нейросетевые модели для систем информационной безопасности: учеб. пособие. Таганрог: Изд-во ТРТУ, 2005. 160 с.

17.Заенцев И.В. Нейронные сети: основные модели: учеб. пособие. Воронеж: Изд-во ВГУ, 1999. 76 с.

18.Каллан Р. Основные концепции нейронных сетей / пер. с англ. М.: Изд. дом "Вильямс", 2001. 291 с.

19.Круглов В.В., Борисов В.В. Искусственные нейронные сети. Теория и практика. 2-е изд., стереотип. М.: Горячая линия-Телеком, 2002. 382 с.

20.Осовский С. Нейронные сети для обработки информации / пер. с польск. И.Д. Рудинского. М.: Финансы и статистика, 2002. 344 с.

21.Уоссермен Ф. Нейрокомпьютерная техника: теория и практика / пер. с англ. М.: Мир, 1992. 184 с.

22.Хайкин С. Нейронные сети: полный курс, 2-e изд. / пер. с анrл. М.: Изд. дом "Вильямс", 2006. 1104 с.

23.Ясницкий Л.Н. Введение в искусственный интеллект, 3-е изд. М.: Изд. центр "Академия", 2010. 176 с.

Размещено на Allbest.ru


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.