Статья опубликована в рамках: LII Международной научно-практической конференции «Технические науки - от теории к практике» (Россия, г. Новосибирск, 18 ноября 2015 г.)
Наука: Технические науки
Секция: Информатика, вычислительная техника и управление
Скачать книгу(-и): Сборник статей конференции
- Условия публикаций
- Все статьи конференции
дипломов
Статья опубликована в рамках:
Выходные данные сборника:
МЕТОДЫ ОБУЧЕНИЯ В СИСТЕМАХ ИСКУССТВЕННОГО ИНТЕЛЛЕКТА
Мелихова Оксана Аскольдовна
канд. техн. наук, доцент,
доцент Южного федерального университета,
РФ, г. Таганрог
Григораш Андрей Сергеевич
аспирант
Южного федерального университета,
РФ, г. Таганрог
Джамбинов Сергей Владимирович
студент
Южного федерального университета,
РФ, г. Таганрог
Чумичев Владимир Сергеевич
студент
Южного федерального университета,
РФ, г. Таганрог
Гайдуков Анатолий Борисович
студент
Южного федерального университета,
РФ, г. Таганрог
TRAINING METHODS IN SYSTEMS OF ARTIFICIAL INTELLIGENCE
Oksana Melikhova
candidate of Science, assistant professor,
assistant professor of the Southern Federal University,
Russia, Taganrog
Andrey Grigorash
postgraduate
of the Southern Federal University,
Russia, Taganrog
Sergey Dzhambinov
student
of the Southern Federal University,
Russia, Taganrog
Vladimir Chumichev
student
of the Southern Federal University,
Russia, Taganrog
Anatoly Gaidukov
student
of the Southern Federal University,
Russia, Taganrog
АННОТАЦИЯ
Исследование сложных моделей объектов на основе имитации механизмов, реализуемых в живой природе, привели к появлению и развитию такого раздела искусственного интеллекта, как нейронные сети. К важнейшим особенностям сети относятся параллельная обработка информации, способность к обучению и обобщению накопленных знания, а также возможность их реализации с применением технологии VLST. В статье рассмотрены и проанализированы алгоритмы обучения нейронных сетей, такие как алгоритм обучения, основанный на корреляции ошибок, алгоритм обучения, основанный на постулатах Хебба, а также алгоритм обучения Больцмана.
ABSTRACT
The study of complex objects based on models simulating the mechanisms implemented in nature, led to the emergence and development of such a section of artificial intelligence, neural networks. The most important features of the network include the parallel processing of information, the ability to learn and generalize accumulated knowledge, and the ability to implement them using the technology VLST. The article describes and analyzes the algorithms of training neural networks, such as the learning algorithm based on the correlation of error learning algorithm based on the postulates of Hebb and learning algorithm Boltzmann.
Ключевые слова: Искусственные нейронные сети; алгоритмы обучения искусственных нейронных сетей; алгоритм обучения Хебба; алгоритм обучения; основанный на корреляции ошибок; алгоритм обучения Больцмана.
Keywords: Artificial neural network learning algorithms of artificial neural networks; Hebbian learning algorithm; the learning algorithm based on the correlation of errors; the algorithm training Boltzmann.
Построение и исследование моделей сложных объектов на основе имитации механизмов, реализуемых в живой природе, привели к появлению и развитию такого раздела искусственного интеллекта, как нейтронные сети. Важнейшие особенности сети – параллельная обработка информации, способность к обучению и обобщению накопленных знаний, послужили росту интереса к нейронным сетям и прогрессу в их исследовании. Кроме названных особенностей нейронных искусственных сетей следует отметить возможность их реализации с применением технологии сверхбольшой степени интеграции (VLST). Поэтому одна из областей современной теории интеллектуальных вычислений (computational intelligence) тесно связана с построением и применением искусственных нейронных сетей. Интеллектуальность в данном случае понимается как способность применять знания, накопленные в процессе обучения и как умение обобщать информацию [1; 2; 3].
Нейронные сети – это распределенный параллельный процессор, состоящий из элементарных устройств обработки информации, накапливающих экспериментальные знания и предоставляющих их для последующей обработки [4; 7; 9]. Искусственную нейронную сеть представляют как сложный граф. Есть два вида нейронных сетей: однослойные (рисунок 1) и многослойные (рисунок 2).
Рисунок 1. Однослойная нейронная сеть
Рисунок 2. Многослойная нейронная сеть
У нейронной сети можно выделить несколько свойств, определяющих схожесть искусственной нейронной сети с её естественным аналогом [1; 4; 6]:
1. Знания поступают в нейронную сеть из окружающей среды, после чего используются для обучения.
2. Для накопления знаний применяются связи между нейронами, описываемые синоптическими весами.
Главным преимуществом нейронных сетей в обработке данных является: первое – это распараллеливание обработки информации и, во-вторых, способность к самообучению [5; 8; 9]. Также в нейронных сетях есть свойство обобщения, то есть способность получать результат на основе данных, которых не было в процессе обучения. С помощью нейронных сетей можно решать как сложные задачи, так и более простые. На практике решение сложных (масштабных) задач бывает затруднительно, поэтому более сложную задачу разбивают на несколько простых, которые решают последовательно.
Как было сказано ранее, искусственные нейронные сети, также, как и биологические, имеют способность к обучению. Обучение – это процесс, в котором свободные параметры нейронной сети настраиваются посредством моделирования среды, в которую эта сеть встроена [2; 6; 7]. Такое определение процесса обучения предполагает следующий алгоритм обучения:
1. В нейронную сеть поступают сигналы из внешней среды.
2. В результате этого, свободные параметры искусственных нейронов изменяются.
3. После изменения внутренней структуры нейронная сеть отвечает на поступившие сигналы согласно изменениям.
Данный алгоритм строится исключительно на определении обучения. Существует огромное количество алгоритмов, но не существует универсального алгоритма, который подходил бы для каждой нейронной сети.
Рассмотрим некоторые алгоритмы обучения нейронной сети.
Один из алгоритмов обучения основывается на коррекции ошибок [7; 10]. Суть этого алгоритма в следующем. Есть нейронная сеть, состоящая из N нейронов, каждый отдельный нейрон обозначим k. Есть входной сигнал yk(N), выходной сигнал dk(N), и желаемый результат mk(N). Каждый раз, когда будет формироваться выходной сигнал, он будет сравниваться с желаемым. Если выходной сигнал больше, то в результате получим сигнал ошибки ek(N):
ek(N)=mk(N)-dk(N).
Сигнал ошибки инициализирует механизм управления, цель которого заключается в применении последовательности корректировок к весам нейронов. Эти изменения предназначены для приближения выходного сигнала к желаемому. Эта цель достигается с помощью минимизации функции стоимости или индекса производительности E(N), определяемой в сигнале ошибки по формуле:
E(N)= где E(N) – текущее значение энергии ошибки.
Пошаговая корректировка синоптических весов нейрона продолжается до тех пор, пока система не достигнет устойчивого состояния. Только после этого процесс обучения останавливается.
Рассмотрим следующий метод обучения сети - обучение на основе памяти.
Такой вид обучения предполагает использование хранилища данных типа вход-выход [8; 11]. То есть, данный вид обучения основывается на всем прошлом опыте, который формулируется в данном хранилище. Не ограничивая общности, можно предположить, что выходной сигнал является скаляром. То есть, если есть два выхода и необходимо их как-то классифицировать, то берется ближайший вектор к тестовому вектору xtest. Все алгоритмы обучения на основе памяти включают в себя две первостепенные составляющие:
1. Критерий, используемый для определения окрестности вектора xtest.
2. Правило обучения, применяемое к примеру из окрестности тестового вектора.
Все алгоритмы обучения нейронных сетей отличаются друг от друга по способу реализации этих двух составляющих. В простейшем алгоритме обучения на основе памяти, который получил название правила ближайшего соседа в окрестность включается пример, который самый близкий к тестовому. Если есть вектор x, который считается ближайшим соседом вектора xtest, и выполняется условие d (xi, xtest), то d – евклидово расстояние между векторами xi и xtest. Вариацией классификатора на основе ближайшего соседа является классификатор k-ближайших соседей. Он описывается следующим образом:
1. Находим k классифицированных соседей, которые являются ближайшими к вектору xtest, где k – это некоторое число.
2. Вектор xtest относим к тому классу, который чаще других встречается среди k-ближайших соседей тестируемого вектора.
Таким образом, классификатор на основе k-ближайших соседей работает подобно устройству усреднения.
Следующий метод обучения, так называемый, постулат Хебба [10; 11; 12].
Постулат обучения Хебба является самым старым и самым известным среди все правил обучения. Данный постулат носит имя нейрофизиолога Хебба. Хебб был одним из ученных, предложивших метод обучения на основе ассоциативной памяти, то есть обучения на клеточном уровне. По его гипотезе, данный метод обучения должен был привести к постоянной модификации шаблона активности. На основе постулата обучения Хебба можно сформулировать следующее правило, которое состоит из двух частей:
1. Если два нейрона по обе стороны синапса (соединения) активизируются одновременно, то есть синхронно, то прочность такого соединения возрастает.
2. Если два нейрона по обе стороны синапса активизируются асинхронно, то такой синапс ослабляется или вообще отмирает.
Изначально Хебб выделил свои постулаты в нейробиологическом контексте. Функционирующий таким образом синапс называется синапсом Хебба. Если быть более точным, то синапс Хебба зависит от времени. Можно выделить четыре основных свойства, характеризующие синапс Хебба:
1. Зависимость от времени. То есть синапс Хебба зависит от точного времени возникновения входного сигнала и выходного сигнала.
2. Локальность. По своей природе синапс является узлом передачи данных, это свойство используется для выполнения синапсом Хебба локальных модификаций входного сигнала.
3. Интерактивность. Изменения синапса Хебба определяются сигналами на обоих его концах.
4. Корреляция. Обучение Хебба состоит в том, что условием изменения эффективности синоптической связи является зависимость между входным и выходным сигналом.
Для описания обучения Хебба с точки зрения математики, рассмотрим простой пример, в котором синоптический вес wkj, нейрона k с входным xj и выходным yk сигналами [7; 9; 11]. Изменение синоптического веса wkj в момент времени n можно представить следующим соотношением:
Δ wkj(n)=F(xj(n), yk(n)), где F – это некоторая функция, зависящая от входных и выходных сигналов. Сигналы xj(n) и yk(n) рассматриваются без учета размерности.
Есть несколько версий записи формулы Хебба, все они считаются формулами Хебба, или хеббовскими.
Так же Хебб выделил простейшую формулу обучения, которая имеет следующий вид:
Δ wkj(n)=η(xj(n), yk(n)), где η – положительная константа, которая определяет скорость обучения. Данное выражение ясно показывает природу синапса Хебба, так же её называют правилом умножения активности.
Рассмотрим следующий метод обучения нейронных сетей, так называемое, конкурентное обучение.
Данный вид обучения, как понятно из названия, представляет собой конкурентную модель нейронов, то есть нейроны сети будут конкурировать между собой за право быть активизированными. Благодаря этому свойству, такой вид обучения очень удобно использовать для задач изучения статистических свойств, которые используются в задачах классификации образов.
Правило конкурентного обучения строится на основе трех элементов:
1. Множество одинаковых нейронов формирует случайные веса на реакции нейронов по одному и тому же входному сигналу.
2. Определяется предельное значение веса каждого нейрона.
3. Формируется механизм, позволяющий нейронам конкурировать за право отклика на данное подмножество входных сигналов и определяющий единственный активный нейрон.
В такой системе каждый нейрон сети соответствует группе близких образов, то есть нейроны становятся детекторами признаков различных классов входных образов. Простейшая нейронная сеть с конкуренцией представляется как единственный слой выходных нейронов, в котором каждый нейрон соединён с входными нейронами. В связи с тем, что данный тип обучения может формировать группы, то такая нейронная сеть способна к кластеризации в процессе обучения.
Следующий метод обучения нейронных сетей – обучение Больцмана [7; 10; 11].
Этот метод назван в честь Людвига Больцмана. Данный алгоритм является стохастическим алгоритмом обучения, который основан на стохастической механике. Нейронная сеть на основе обучения Больцмана называется машиной Больцмана. В машине Больцмана все нейроны работают с бинарными сигналами. То есть у нейронов два состояния: (+1) – это активный режим нейронов и (-1) – выключенный режим нейронов. Такая машина описывается функцией E, значение которой определяется состоянием нейронов машины Больцмана. Эту функцию можно описать следующим выражением:
,
где: xj – состояние нейрона j,
wkj – синоптический вес связи нейронов j и k.
Нейроны машины Больцмана можно разбить на две группы по функциональности: видимые и скрытые. Видимые нейроны реализуют интерфейс между сетью и средой её функционирования, а скрытые работают независимо от внешней среды. Рассмотрим два режима функционирования такой сети:
1. Скованное состояние сети. Все видимые нейроны находятся в состояниях, предопределенных внешней средой.
2. Свободное состояние сети. Все нейроны могут свободно функционировать.
В основном все алгоритмы обучения делятся на два вида: на алгоритмы обучения с учителем и на алгоритмы обучения без учителя. Алгоритмы обучения с учителем можно рассматривать как наличие знаний об окружающей среде, представленной в виде пары вход-выход. Для такого алгоритма характерно то, что окружающая среда неизвестна для нейронной сети. То есть, из окружающей среды поступает информация, учитель на основе заложенных знаний вырабатывает желаемый отклик (оптимальный набор действий), после параметры сети изменяются с учетом обучающего вектора и сигнала ошибки (разность между желаемым результатом и полученным). Изменение параметров происходит пошагово с целью имитации нейронной сети на поведение учителя [7; 10; 12]. Любой алгоритм обучения с учителем – это алгоритм обучения на основе коррекции ошибок. Алгоритмы обучения без учителя означают, что нет контролирующего процесса настройки весовых коэффициентов.
Для многослойной нейронной сети обучение с учителем может рассматриваться как способность сети к обучению, то есть выработки нужного отклика от сети, так и как задача численной оптимизации. Функции, которые строятся на выявлении ошибок в нейронных сетях, в большинстве случаев являются функциями блуждающих точек, но в многослойной нейронной сети функция является в высшей степени нелинейной функцией, которая зависит только от вектора синоптических весов w.
Возможность и эффективность использования искусственных нейронных сетей могут существенно увеличиться за счет применения технологии обработки информации, основанной на нечетких множествах и нечетком логическом выводе. Этот подход ослабляет требования к точности представления исходных данных при моделировании, а также позволяет при описании сложных систем использовать переменные, значения которых определяются на интуитивном уровне [5; 7]. Используемая при этом парадигма выработки решений приводит к формированию лингвистических аргументов логических функций. Функции, описывающие реальные объекты, уточняются в процессе обучения. Правила вывода формируются также в процессе обучения. Это определяет взаимопроникновения и комплементарность нейронных моделей и систем, построенных на основе нечеткой логики. Использование лингвистических операторов и итерационного процесса обучения приводит к получению интеллектуальных логико-алгебраических моделей, определяемых термином Computational Intelligence.
Для повышения эффективности исследования пространства возможных решений часто используется такой класс алгоритмов обучения как эволюционные алгоритмы. Они основываются на эволюционной и генетической обусловленности изменения последовательности битов или чисел.
Нейронные сети и генетические алгоритмы возникли в результате наблюдения и попыток копирования естественных процессов, происходящих в живой природе [5; 8]. При сравнении особенностей нейронных сетей и генетических алгоритмов следует обратить внимание на существенно различную длительность протекания соответствующих естественных процессов, то есть на быструю обработку информации в нервной системе и очень медленный процесс естественной эволюции. Но при компьютерном моделировании эти различия не имеют существенного значения. Генетические алгоритмы применяются в системах искусственного интеллекта как совместно с нейронными сетями, так и в виде независимого альтернативного метода моделирования. Генетические алгоритмы – это процедуры поиска, основанные на механизмах естественного отбора и наследования [12].
Нейронные сети, нечеткие системы и генетические алгоритмы обладают важным общим свойством – способностью к обучению, что считается главным атрибутом интеллектуальности любой системы, в том числе живой.
Список литературы:
- Барский А.Б. Нейронные сети: распознавание, управление, принятие решений. – М.: Финансы и статистика, 2004. – 176 с.
- Каллан Роберт. Основные концепции нейронных сетей: Пер. с англ. – М.: Издательский дом «Вильямс», 2001.
- Комарцова Л.Г., Максимов А.В. Нейрокомпьютеры: Учеб. пособие для вузов. – 2-е изд.,перераб. и доп. – М.: Изд-во МГТУ им. Н.Э. Баумана, 2004. – 400 с.
- Мелихова О.А., Чумичев В.С., Джамбинов С.В., Гайдуков А.Б. Некоторые аспекты криптографического взлома и повышения надежности алгоритмов шифрования// Молодой ученный. – Казань, № 11(91), 2015. – С. 392–394.
- Мелихова О.А. Приложение матлогики к проблемам моделирования// Известия ЮФУ. Технические науки. – Таганрог: Изд-во ТТИ ЮФУ, 2014. № 7(156). – С. 204–214.
- Мелихова О.А., Гайдуков А.Б., Джамбинов С.В., Чумичев В.С. Методы поддержки принятия решений на основе нейронных сетей// Актуальные проблемы гуманитарных и естественных наук. – М., № 09 (80). Ч. 1. 2015. – С. 52–59.
- Мелихова О.А., Григораш А.С., Джамбинов С.В., Чумичев В.С., Гайдуков А.Б. Некоторые аспекты теории нейронных систем// Молодой ученый. – Казань. – № 16 (96), – 2015. – С. 196–199.
- Мелихова О.А. Методы построения интеллектуальных систем на основе нечеткой логики. Научное издание – Таганрог: издаельство ТРТУ 2007. – 92 с.
- Осовский С. Нейронные сети для обработки информации / Пер. с польского И.Д. Рудинского. – М.: Финансы и статистика, 2002. – 344 с.
- Рутковская Д., Пилиньский М., Рутковский Л. Нейронные сети, генетические алгоритмы и нечеткие системы: Пер. с польск. И.Д. Рудинского- М.: Горячая линия-Телеком, 2006. – 452 с.
- Уоссермен Ф. Нейрокомпьютерная техника: Теория и практика. М.: Мир, 1992. – 184 с.
- Kureychik V.V. Melikhova O.A. Gaydukov A.B. Chumichev V.S. Dzhambinov S.V. Bukach S.A. Proceedings of the International Scientific and Practical Conference "Innovative technologies in science, Vol. I (February 21–22, 2015, Dubai, UAE)". – Dubai.: Rost Publishing, 2015. – P. 57–67.
дипломов
Оставить комментарий