![]() |
|
... Обучение, самоорганизация и эволюция как методы в искусственном интеллекте Нейронные сети. Самообучение и самоорганизация. Самоорганизация — термин более широкий, поскольку включает в себя не только самообучение (изменение значений весов), но и возможности изменения структуры связей, количества нейронов. Самообучение — в данном случае обучение без учителя, когда сеть сама учится классифицировать подаваемые ей образы без внешней оценки. Такие сети применяют для решения задач распознавания образов, оптимизации, управления, сжатия данных. Коснемся самообучения по методу Хебба и конкурентного самообучения сетей Кохонена. Прямое распространение информации в таких сетях аналогично рассмотренному. По методу Хебба усиливаются связи между возбужденными нейронами [2]: сигнальный метод обучения Хебба: ![]() дифференциальный метод обучения Хебба: ![]() Цикл подачи обучающих образов продолжается до тех пор, пока выходные значения сети не стабилизируются с заданной точностью. Такая сеть способна обобщать одинаковые образы, относя их к одному классу. Для представления результатов обучения сети в удобной форме сеть можно дополнить одним слоем и обучить этот слой по методу обратного распространения ошибки. В сетях Кохонена применяется конкурентное обучение — изменяются веса только одного нейрона (победителя), выходное значение которого было максимально для данного слоя [9]. Для адекватной подстройки весов входные значения и веса необходимо постоянно поддерживать в нормализованном виде, подстройка весов выглядит так: ![]() Чтобы избежать ситуации, когда некоторые нейроны могут оказаться исключенными из процесса обучения вообще, можно изменять веса непобедивших нейронов с намного меньшим шагом или вести статистику побед, уменьшая возможности победы для слишком частых победителей [9]. После обучения в процессе функционирования сети Кохонена активируется только один победивший нейрон, выходы всех остальных — нулевые. Какие преимущества дает самоорганизация ИНС [4]: Применение принципов самоорганизации позволяет синтезировать многослойные нейронные сети минимальной конфигурации на неполной, непредставительной обучающей выборке. Для синтеза нейронной сети, обеспечивающей минимальное число ошибок на обучающей выборке, не требуется заранее оценивать значимость входных переменных (признаков), задавать число слоев и нейронов в них, а также определять синаптические связи. Конфигурация обученной нейронной сети будет минимальной. Минимальная конфигурация необходима по двум причинам: Нейронная сеть оптимальной сложности обладает наибольшей обобщающей (и следовательно прогностической) способностью. Такую нейронную сеть трудно переобучить. Решающие правила, реализуемые нейронной сетью оптимальной сложности, существенно легче интерпретировать, если представить их в символьной форме логических выражений, понятных пользователю. Такие сети также предоставляют механизм извлечения трудноформализуемых знаний. Обучив сеть на примерах из некоторой трудноформализуемой области и получив минимальную конфигурацию сети, можно затем синтезировать формальное представление знаний, приобретенных сетью. Генетический алгоритм. Эволюция и поиск. Генетический алгоритм (ГА), позаимствованный у природных аналогов, является наиболее ярким представителем эволюционных методов и представляет собой мощнейшее поисковое средство [2,7,10,11,12], имеющее важное значение при решении различных проблем. Поскольку качество решения обычно оценивается некоторой оценочной функцией, ГА также называют методом оптимизации многоэкстремальных функций. Никакой дополнительной информации о решаемой задаче ГА больше не имеет. Решение, получаемое при помощи ГА, по своему характеру субоптимально, но это не мешает применять ГА для поиска глобальных экстремумов. В процессе эволюции популяция вырабатывает качества, необходимые для выживания и приспособления, и которые одновременно и являются оптимальным решением. ГА отлично себя зарекомендовали на NP-трудных задачах (рис. 6), например таких, как задача коммивояжера. В [11] указывается такая характеристика оценки пригодности ГА, как минимизация количества вычислений целевой функции. ![]() рис. 6 ![]() рис. 7 Таблица 1.
В общем виде генетический алгоритм таков [2,7,10]: Задается функция оптимальности ![]() ![]()
Оператор отбора. Служит для создания промежуточной популяции ![]() ![]() Воспроизведение. Служит для создания следующей популяции на основе промежуточной ![]() ![]() Оператор кроссинговера. Производит обмен генетического материала между родителями для получения потомков. Простейший одноточечный кроссинговер (рис. 8) производит обмен частями, на которые хромосома разбивается точкой кроссинговера, выбираемой случайно. Двухточечный кроссинговер обменивает кусок строки, попавшей между двумя точками. Предельным случаем является равномерный кроссинговер, в результате которого все биты хромосом обмениваются с некоторой вероятностью. Этот оператор служит для исследования новых областей пространства и улучшения существующих (приспособление). ![]() рис. 8 Оператор мутации. К каждому биту хромосомы с небольшой вероятностью ![]() ![]() рис. 9 Существует также оператор воспроизведения, называемый инверсией, который заключается в реверсировании бит между двумя случайными позициями, однако для большинства задач он не имеет практического смысла и поэтому неэффективен [10]. Важно понять, почему ГА вообще работоспособен и почему он настолько эффективен. Во-первых, различные параметры в реальных системах в большинстве своем слабосвязаны [2], т.е. постепенное изменение одного из них не требует радикального изменения второго для восстановления оптимальности (рис. 7), что позволяет исследовать пространство. Во-вторых, функции оптимальности все-таки имеют спуски и подъемы и не являются сплошным изрезанным полем, что создает почву для постепенного приспособления. Для исследования эффективности ГА используем понятие шаблона [7,10,11,12]. Шаблон определяется с помощью элементов множества ![]() ![]() ![]() ![]() ![]() Существует теорема Холланда о шаблонах, из которой следует, что короткие (по отношению к кроссинговеру), низкого порядка (по отношению к мутации) и имеющие оптимальность выше средней шаблоны увеличивают свое представительство в последовательности поколений экспоненциально. Такой шаблон называется строительным блоком. ![]() рис. 10 Отметим наиболее актуальные проблемы ГА и интересные модификации ГА. Неудачный выбор упорядочивания и кодирования битов в хромосоме может вызвать преждевременное схождение к локальному оптимуму, ведя алгоритм по ложному пути [10]. Для преодоления этого недостатка можно выбирать способ кодирования, основываясь на дополнительной информации о задаче. Существуют также мобильные ГА, с переменной длиной хромосом. Для некоторых задач такое представление естественно, для других надо вводить специальные правила чтения хромосом. Вместо оператора кроссинговера используются оператор разрезания строк (CUT), вероятность которого повышается с увеличением длины строки, и оператор сцепления строк (SPLICE), который выбирает из популяции два куска и сцепляет их в один кусок. Популяция представляет собой совокупность пере- и недоопределенных строк. Правила чтения таких строк могут быть, например, такими: в переопределенной строке при чтении слева направо не учитываются уже использованные гены, а в недоопределенных строках отсутствующие места заимствуются у лучшего элемента. Проблема баланса исследования новых областей и приспособления к найденным [12]. Это необходимо для предотвращения преждевременной сходимости к локальному оптимуму. В [12] используются модифицированные способы отбора хромосом в промежуточную популяцию (отказ от вероятностных принципов в пользу элитного и отбора с вытеснением) и выбора родительской пары (случайный, селективный, на основе близкого или дальнего родства). Влияние длины хромосомы на преждевременную сходимость. В [11,12] используется символьная модель для разбиения пространства поиска на диапазоны с целью уменьшения длины хромосомы. Интересные результаты может дать сочетание ГА с другими методами [7,10]. Заключение Кроме приведенных методов, существуют и другие, используемые для различных задач, связанных с обучением, самоорганизацией, поиском. Хотелось бы еще отметить наличие такого мощного метода, как метод группового учета аргументов — МГУА (Group Method of Data Handling, GMDH), который тоже относится к разряду эволюционных [2,13], и голографическую нейросетевую парадигму [3], привлекающую более глубокие принципы функционирования мозга. Приведенные методы являются частью целого среди методов такого класса и иллюстрируют неотъемлемые принципы создания систем нового поколения. В науке происходит накопление критической информации, которое в ближайшее время должно привести к переходу на качественно иной уровень, ведущий к следующей ступени развития искусственных информационных систем [6]. Литература
P.S. Оригинал этой (и предыдущей) статьи, а также простенький пример к методу обратного распространения можно скачать на http://bdv78.newmail.ru Интересующие вас вопросы, связанные с искусственным интеллектом, можно задать на AI-Forum'е: http://www.pool-7.ru/alexkuck/aiforum. Автор выражает огромную благодарность Сергею Балтаку за неоценимую информационную поддержку. Если будут пожелания — возможно дальнейшее развитие этой темы, в частности обзор других видов нейросетей, доступное объяснение основных принципов их функционирования, применение нейросетей на практике; другие методы искусственного интеллекта. Дмитрий Брилюк bdv78@newmail.ru http://bdv78.newmail.ru (c) компьютерная газета © Компьютерная газета
|
|