Читайте также: |
|
Схема непосредственного кодирования означает, что каждая связь нейронной сети непосредственно задается его двоичным представлением. При таком подходе двоичная последовательность (хромосома), представляющая связи нейронной сети, имеет вид комбинации строк (или столбцов) матрицы С. Пример рассматриваемого способа кодирования для п = 5 приведен на рис. 15.
Рис. 15. Пример непосредственного кодирования матрицы связей для нейронной сети.
Если значение п обозначает количество нейронов в сети, то связи между этими нейронами будут представляться двоичной последовательностью, имеющей длину п2. Очевидный недостаток такого способа кодирования заключается в стремительном увеличении длины генотипа при расширении нейронной сети. Однако в обсуждаемую схему представления можно легко внести ограничения, которые сократят длину хромосом. В частности, могут приниматься во внимание только однонаправленные связи, что позволит учитывать только те элементы матрицы С, которые задают связи данного узла (нейрона) со следующим узлом. В этом случае хромосома для примера на рис. 15 будет иметь вид 0110110011.
Схема непосредственного кодирования может одновременно примяться для определения, как связей, так и их весов. Этот способ кодирования применяется, главным образом, для небольших нейронных сетей.
Схема косвенного кодирования - это способ сокращения длины описания связей, который заключается в кодировании только наиболее важных свойств, но не каждой связи нейронной сети. По этой причине заметным достоинством схемы косвенного кодирования становится компактное представление связей. Такая схема выглядит более обоснованной с биологической точки зрения. Согласно современной нейрологии, невозможно прямо и независимо описать закодированной в хромосомах генетической информацией всю нервную систему. Такой вывод следует, например, из факта, что генотип человека состоит из гораздо меньшего количества генов, чем число нейронов в его мозге. Известны различные методы косвенного кодирования.
Второй этап эволюционного проектирования архитектуры нейронной сети состоит (в соответствии с типовым циклом эволюции) из следующих шагов:
1) Декодирование каждой особи текущей популяции для описания архитектуры нейронной сети.
2) Обучение каждой нейронной сети с архитектурой, полученной на первом шаге, с помощью заранее заданного правила (некоторые его параметры могут адаптивно уточняться в процессе обучения). Обучение должно начинаться при различных случайно выбираемых начальных значениях весов и (при необходимости) параметров правила обучения.
3) Оценивание приспособленности каждой особи (закодированной архитектуры) по достигнутым результатам обучения, т.е. по наименьшей целой среднеквадратичной погрешности обучения либо на основе тестирования, если наибольший интерес вызывает способность к обобщению, наименьшая длительность обучения или упрощение архитектуры (например, минимизация количества нейронов и связей между ними).
4) Репродукция особей с вероятностью, соответствующей их приспособленности или рангу в зависимости от используемого метода селекции.
5) Формирование нового поколения в результате применения таких генетических операторов, как скрещивание, мутация и/или инверсия.
Блок-схема, иллюстрирующая эволюцию архитектур, представлена на рис. 16.
Рис. 16. Блок-схема генетического алгоритма для поиска наилучшей архитектуры нейронной сети (случай эволюции архитектур).
Если говорить об обучении сети (шаг 2), то наиболее часто встречается развитие топологии однонаправленных сетей с применением алгоритма обратного распространения ошибки с целью локального обучения. Известны работы, в которых описывается применение генетического алгоритма для одновременной адаптации и весов и топологии. В других исследованиях допускались соединения в пределах одного слоя, обратные связи, а также обучение на основе конкуренции (competetive learning) и по Хеббу.
Достоинством эволюционного подхода считается тот факт, что функцию приспособленности можно легко определить специально для эволюции сети со строго определенными свойствами. Например, если для оценивания приспособленности использовать результаты тестирования вместо результатов обучения, то будет получена сеть с лучшей способностью к обобщению.
Эволюция правил обучения
Известно, что для различных архитектур и задач обучения требуются различные алгоритмы обучения. Поиск оптимального (или почти оптимального) правила обучения, как правило, происходит с учетом экспертных знаний и часто - методом проб и ошибок. Поэтому весьма перспективным считается развитие автоматических методов оптимизации правил обучения нейронных сетей. Развитие человеческих способностей к обучению от относительно слабых до весьма сильных свидетельствует о потенциальной возможности применения эволюционного подхода в процессе обучения искусственных нейронных сетей.
Схема хромосомного представления в случае эволюции правил обучения должна отражать динамические характеристики. Статические параметры (такие как архитектура или значения весов сети) кодировать значительно проще. Попытка создания универсальной схемы представления, которая позволила бы описывать произвольные виды динамических характеристик нейронной сети, заведомо обречена на неудачу, поскольку предполагает неоправданно большой объем вычислений, требуемых для просмотра всего пространства правил обучения. По этой причине на тип динамических характеристик обычно налагаются определенные ограничения, что позволяет выбрать общую структуру правила обучения. Чаще всего устанавливается, что для всех связей нейронной сети должно применяться одно и то же правило обучения, которое может быть задано функцией вида
где t - время, Δw - приращение веса, Xij - так называемые локальные переменные, θi1i2...ik - вещественные коэффициенты.
Главная цель эволюции правил обучения заключается в подборе соответствующих значений коэффициентов θi1i2...ik.
Рис. 17. Блок-схема генетического алгоритма для поиска наилучшего правила обучения (случай эволюции правил обучения).
Большое количество компонентов уравнения может сделать эволюцию слишком медленной и практически неэффективной, поэтому в условия часто вводятся дополнительные ограничения, основанные на эвристических посылках. Блок-схема, иллюстрирующая эволюцию архитектур, представлена на рис. 17.
Представим типовой цикл эволюции правил обучения.
1) Декодирование каждой особи текущей популяции для описания правила обучения, которое будет использоваться в качестве алгоритма обучения нейронных сетей.
2) Формирование множества нейронных сетей со случайно сгенерированными архитектурами и начальными значениями весов, а также оценивание этих сетей с учетом их обучения по правилу, полученному на шаге 1, в категориях точности обучения или тестирования, длительности обучения, сложности архитектуры и т.п.
3) Расчет значения приспособленности каждой особи (закодированного правила обучения) на основе полученной на шаге 2 оценки каждой нейронной сети, что представляет собой своеобразный вид взвешенного усреднения.
4) Репродукция особей с вероятностью, соответствующей их приспособленности или рангу в зависимости от используемого метода селекции.
5) Формирование нового поколения в результате применения таких генетических операторов, как скрещивание, мутация и/или инверсия.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Рутковская Д., Пилиньский М., Рутковский Л. Нейронные сети, генетические алгоритмы и нечеткие системы: Пер. с польск. И. Д. Рудинского. - М.: Горячая линия -Телеком, 2007. - 452 с: ил.
2. Eberhart R. C, The role of genetic algorithms in neural network query-based learning and explanation facilities, Proceedings of International Workshop on Combinations of Genetic Algorithms and Neural Networks, COGANN-92, 1992, pp. 169-183.
3. Fogel D. В., Evolutionary Computation. Towards a New Philosophy of Machine Intelligence, IEEE Press, 1995.
4. Goldberg D. E., Algorytmy genetyczne i ich zastosowania, WNT, Warszawa, 1995.
5. Harp S. A., Samad Т., Guha A., Towards the genetic synthesis of neural networks, in: Proceedings of the Third International Conference on Genetic Algorithms and Their Applications; Schaffer J. D. (ed.), Morgan Kauffmann, San Mateo, CA, 1989, pp. 360-369.
6. Holland J. H., Adaptation in Natural and Artificial Systems, Ann Arbor: University of Michigan Press, 1975.
7. Michalewicz Z., Genetic Algorithms + Data Structures = Evolution Programs, Springer-Verlag, 1992.
8. Miller G. F, Todd P. M., Hagde S. U., Designing neural networks using genetic algorithms, in: Proceedings of the Third International Conference on Genetic Algorithms and Their Applications, Schaffer J. D. (ed.), Morgan Kauffmann, San Mateo, CA, 1989, pp. 379-384.
9. Schaffer J. D., Whitley L, Eshelman J., Combinations of Genetic Algorithms and Neural Networks: A Survey of the State of the Art, Proceedings of International Workshop on Combinations of Genetic Algorithms and Neural Networks, COGANN-92, 1992.
10. Whitley D., Applying genetic algorithms to neural network learning, Proceedings of the Seventh Conference of the Society of Artificial Intelligence and Simulation of Behavior, Sussex, England, Pitman Publishing, 1989, pp. 137-144.
11. Whitley D., Starkweather Т., Bogart C, Genetic algorithms and neural networks: Optimizing connections and connectivity, Parallel Computing, 1990, nr 14, pp. 347-361.
12. Yao X., A review of evolutionary artificial neural networks, International Journal of Intelligent Systems, 1993, pp. 539-567.
13. FlexTool (GA) M2.1, Flexible Intelligence Group, L.L.C, Tuscaloosa, AL 35486-1477, USA.
14. Evolver - the Genetic Algorithm Problem Solver, Axcelis, Inc., 4668 Eastern Avenue N.. Seattle, WA 98103, USA.
Дата добавления: 2015-11-14; просмотров: 30 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
ОСНОВЫ ТЕОРИИ УПРАВЛЕНИЯ: ГЕНЕТИЧЕСКИЕ АЛГОРИТМЫ 3 страница | | | Радио и сотовые средства связи. |