Обучение упреждающих нейронных сетей с использованием генетических алгоритмов

Дэвид Дж. Монтана и Лоренс Дэвис, корпорация "Системы и технологии BBN"

Перевод с английского: Пащевский П.Д.


Источник: 10 Mouiton St. Cambridge, MA 02138 .
Обучение упреждающих нейронных сетей с использованием генетических алгоритмов


АННОТАЦИЯ

Многослойные упреждающие нейронные сети обладают рядом свойств, которые делают их особенно хорошо подходящими для комплекса задач классификации шаблонов. Однако, их применение в некоторых задачах реального мира было затруднено из-за отсутствия обучающего алгоритма который надежно находит почти глобально оптимальное множество весовых коэффициентов в относительно короткое время. Генетические алгоритмы представляют собой класс процедур оптимизации, которые хороши при изучении большого и комплексного пространства интеллектуальным способом поиска значений, близких к глобальому оптимуму. Следовательно, они хорошо подходят для задачи обучения упреждающих сетей. В этой статье мы описываем множество экспериментов, проведенных на задаче классификации данных от изображения эхолота. Эти опыты: 1) иллюстрируют достигнутое повышение с помощью генетического алгоритма, а не прямое распространение; 2) хранение результатов выполнения эволюции генетического алгоритма, с добавлением большего и большего количества предметно-ориентированных знаний в нее.

1. ВВЕДЕНИЕ

Нейронные сети и генетические алгоритмы два метода для оптимизации и обучения, каждый из которых имеет свои сильные и слабые стороны. два в целом развивались вместе различным путям. Однако в последнее время были предприняты попытки объединить две технологии. Дэвис (1988) показал, как любая нейронная сеть может быть переписана как тип генетического алгоритма называемого системой классификаторов и наоборот. Уитли (1988) безуспешно пытался обучать упреждающую нейронную сеть с использованием генетических алгоритмов. В этой статье мы описываем различные генетические алгоритмы для упреждающих сетей. Это не только удается в нашей задаче, но она обучать прямого распространения, стандартные algonthm подготовки. на трудном, примере. Этот успех приходит от адаптации генетических алгоритмов к области обучения нейронных сетей. Мы подтвердили успех эволюции и конечный успех этого алгоритма на серии экспериментов. Статья построена следующим образом. Разделы 2 и 3 - это обзор нейронных сетей и генетических соответственно с особым акцентом на их сильные и слабые стороны. Раздел 4 описывает данные, на которых экс- penments проводились. Раздел 5 рассказывает подробнее о генетическом алгоритме, который мы использовали для выполнения оптимизации весовых коэффициентов нейронной сети. Раздел 6 описывает эксперименты , которые мы выполняли и анализ их результатов. Раздел 7 содержит выводы о нашей работе и предложения для будущей работы.

2. НЕЙРОННЫЕ СЕТИ

Нейронные сети - это алгоритмы для оптимизации и обучения, основанные на свободной концепции вдохновления исследованиями природы мозга. Как правило, они состоят из пяти компонентов: 1.ориентированный граф известный как топология сети к слоям которой мы обращаемся как к ссылкам(?). 2.переменных состояния, связанных с каждым узлом. 3.вещественный вес, связанный с каждой ссылкой. 4.вещественных смещений, связанные с каждым узлом. 5.передаточная функция для каждого узла определяет состояния узла в зависимости от А) своего смещения , Б) веса ее входящих ссылок, и В) состояний, х, узлов подключенных к нему по этим ссылкам. Эта передаточная функция обычно осоответствует формуле Упреждающую сети являются одними из тех, чьи топологии не имеет замкнутых путей. Их входные узлы не имеют дуг к ним, и их выходные узлы не имеют дуги от них. Все другие узлы скрыты. Когда состояния всех входных узлов установлены, состояния всех других узлов в сети можно также установить в значения распространяющиеся через сеть. Работы упреждающей сети состоит из расчета выходов данного набора входных данных следующим образом. Многослойная упреждающая сеть такова, что любой путь от входного узела к выходному узелу проходит через одинаковое количество дуг.n- й слой такой сети состоит из всех узлов, которые являются n-дуговыми проходящими через входной узел. В скрытом слое содержатся скрытые узлы. Такие сети являются полностью связными, если каждый узел в слое I связан со всеми узлами в слое I + L для всех I. Многослойные сети прямого распространения стали очень популярны по нескольким причинам. С одной стороны, они применялись на практике для обобщения , т. е. при обучении по относительно редкому множеству точек данных они часто дают правильный вывод для входных значений не из обучающей выборки. Во-вторых, алгоритма обратного распространения называемого такая, которая может часто хороший набор весовых коэффициентов (и смещения) при разумном количестве обучений [Rumelhart 1986al. Метод обратного распространения ошибки является разновидностью градиентного поиск. Как правило, он использует критерий оптимизации наименьших квадратов. Ключом к обратному распространению является метод вычисления градиента ошибки по отношению к весовым коэффициентам для данного входа путем распространения ошибки в обратном направлении через сеть. Есть некоторые недостатки у обратного распространения. С одной стороны, есть "проблема масштабирования". Метод обратного распространения ошибки хорошо работает на простых задачах обучения. Однако, с увеличением сложности задачи (за счет увеличения размерности и / или большей сложности данных), производительность обратного распространения быстро падает. Это делает его невыполнимым для многих задач реального мира, включая описанные в Разделе 4. Снижение производительности возникает из того факта, что комплексные пространства имеют почти глобальный минимум, которые редко встречаются среди локальных минимумов. Метод градиентного поиска, как правило, попадает на локальные минимумы. С достаточно высоким коэффициентом усиления (или импульса), обратноме распространение может избежать этих локальных минимумов. Тем не менее, он оставляет их, не зная, будет ли следующий найденный им лучше или хуже. Когда почти глобальный минимумов хорошо скрыт среди локальных минимумов, обратное распространение может в конечном итоге прыгать между локальными минимумами без особого общего усовершенствования, в результате чего, очень медленно обучается. Второй недостаток у обратного распространения следующий. Для вычисления градиента требуется дифференцируемость. Поэтому обратное распространения не может справиться с разрывными критерии оптимальности или разрывными передаточными функциями узла. Это исключает его использования для некоторых наиболее часто встречающихся типов узлов и простых критериях оптимальности. Для более полного описания нейронных сетей, Мы рекомендуем читателю (Rumelhart 1986b].

3. ГЕНЕТИЧЕСКИЕ АЛГОРИТМЫ

Генетические алгоритмы это алгоритмы для оптимизации и обучения, основанные на некоторых особенности биологической эволюции. Они требуют пяти компонентов: 1 способ кодирования решений проблемы на хромо хромосом. 2. функции оценки, которая возвращает рейтинг для каждой хромосомы переданной ей. 3. способ инициализации популяции хромосом. 4. Операторы, которые могут применяться к родителямпри при воспроизведении чтобы изменить их генетический состав. Могут быть включены операторы мутации, кроссовера (т.е. рекомбинации генетического материала), и предметно-ориентированные операторы. 5. Настройка параметров алгоритма, операторов, и так далее. С учетом этих пяти компонентов, генетический алгоритм работает в соответствии со следующими шагами: 1. популяции инициализируется, используя процедуру в С3. результат инициализации - набор хромосом как это определено в С2. 2. Каждый член популяции оценивается с использованием функции в С I. Оценки могут быть нормализованы; Важно сохранить относительное рейтинжирование. 3. воспроизводства популяции происходит до выполнения критерия остановки. Воспроизведение состоит из числа итераций следующих трех шагов: (a) Одинjого или нескольких родителей выбралют для репродукции. Селекция является стохастической, но родителям с наивысшими оценками отдают предпочтение в выборе Параметр C5 может влиять на селекционный процесс. (b)Операторы C4 применяются для родителей производить на свет детей. Параметр C5 помочь определится, какие операторы использовать. (с) дети оцениваются и добавляются в популяцию. В некоторых версиях генетических алгоритмов, вся популяция заменяется в каждом цикле воспроизводства. В других, будут меняться только подмножества популяции. огда генетический алгоритм выполняется с использованием представления, что полезно кодирует решения проблемы и операторов, которые могут генерировать лучше детей от хороших родителей. Алгоритм может произвести популяцию все лучших и лучших индивидов, сходящихся в конце концов к результатам, близким к глобальной оптимальным. Во многих случаях (таких, как в примере, который обсуждается в этой статье), стандартные операторы, мутации и кроссовера, достаточны для выполнения оптимизации. В таких случаях, в генетических алгоритмах может служить оптимизатором функция "черного ящика" не требующих от своего создателя ввода каких-либо знаний из области. Однако, как показано в данной работе, знание области может часто быть использовано для улучшения производительности генетического алгоритма за счет включения новых операторов. Генетические алгоритмы не должны иметь те же проблемы с масштабирование как у обратного распространения. Одной из причин этого является то, что они в целом улучшили текущее положение лучшим кандидатом монотонно. Они делают это, сохраняя текущего лучшего индивида как часть их популяции в то время как они ищут лучших кандидатов. Во вторых, в генетических алгоритмах , как правило, не беспокоятся о локальных минимумах. Операторы мутации и кроссовера могут шагать от впадины через холмк еще ниже впадины не труднее, чем по убыванию прямо в во впадину. Поле для генетических было создано Джоном Холландом. Его первая книга [Холланд 19751 была одной из первых вех лучшее введение для заинтересованного читателя [Гольдберг 1988].

4. ДАННЫЕ

Данные, используемые в экспериментах были в одной стадии обработки данных пассивного сонара из массивов подводных акустических приемников. B B N строил экспертной системы для обнаружения и рассужения о интересных сигналах в существующей среде из широкого спектра акустических шумов и помех, в океане. Главный вклад в expen системы (как и в операторы гидролокатора) lofargrams, которые (как спектр гистограмм) являются основанные на интенсивности образы изображающие распределения акустической энергии в зависимости от частоты и времени. Узкополосные энергия появляется на lofargrams как • линии'' которые, как правило, преимущественно вертикальные. линия имеет определенные характеристики, которые обеспечивают ключи к операторам гидролокатора и к тому, что он производит Вывод алгоритмов которые захватывают все, что никогда не удавалось видеть операторам в реальных линиях несмотря на большой объем работы в этой области. Таким образом, мы пытаются использовать нейронные сети в задаче характеристики четкости. Для начала, мы создали базу данных из около 1200 прямоугольных кусочков фиксированного размера lofargrams, каждый центрирован по линии типа, определенного экспертом. Около 30% их были из линий типа, в которых мы были особенно заинтересованы, и около 70% были из ряда различных других типов. Один из экспериментов , которые мы выполнили для проверки, действительно ли упреждающая сеть могла бы классифицировать линии частей либо как интересно либо не основываясь на четырех параметрах, которые наша система в настоящее время использует для характеристики таких частей. У сеть было четыре входа, один выход, первый и второй слои из семи были скрыты, и десять узлов, соответственно, суммарно 126 весовых коэффициентов. Мы использовали подмножество примеров размером 236 в качестве обучающего множества. Работа именно этой сети, что сравнительная, в разделе 6 описана не было.

НАШ ГЕНЕТИЧЕСКИЙ АЛГОРИТМ

Перейдем теперь к обсуждению генетического алгоритма, который мы создали для разработки нейронной сети оптимизации весовых коэффициентов. Мы начнем с описания пяти компонентов алгоритма, перечисленных в разделе 3. 1) Кодирование Хромосомы : весовым коэффициентам (и смещения) нейронная сеть кодируются как список действительных чисел; 2) Оценка функции: Назначение весовым коэффициентам к хромосом по ссылкам в сети данной архитектуры, запустить сеть на множество примеров, и возвращение сумма квадратов ошибок; 3) Процедуры инициализации: весовые коэффициенты начальных членов популяции выбраны случайным образом с вероятностью распределение задается Т . Это отличается от начального распределения вероятности весов, обычно использующегося в прямом распространении, которым является равномерное распределение между -1,0 и 1,0. Наши распределения вероятностей отражает эмпирические наблюдения исследователей, что оптимальные решения стремятся содержать весов с малых по абсолютной величине, но может иметь весов со сколь угодно большим абсолютным значениям. Поэтому мы семян начальной популяции с генетическим материалом, который позволяет генетический алгоритм для изучения полный перечень всех возможных решений но как правило в пользу тех решений, которые априорной наиболее вероятно. 4)Операторы: Мы создали большое количество различных типов генетических операторов. Целью большинства экспериментов осуществляется было выяснить, как различные операторы выполняют в различных ситуациях и, таким образом, чтобы иметь возможность выбрать хороший набор операторов, для окончательного алгоритма. операторов может быть сгруппированы в три основные категории: мутации, кроссоверы, и градиентов (см. рисунок 2). Оператор мутации принимает один из родителей и случайно изменяет некоторые из записей в его хромосомы для создания ребенка. Кроссовер оператор принимает двух родителей и создает одного или двух детей содержащий некоторые генетического материала от каждого родителя. оператор градиента принимает один из родителей и производит ребенка, добавив к его записи кратного градиента по оценке функции. Перейдем теперь к обсуждению каждого из операторов индивидуально, одной категории в то время. Объективное-мутировние-весов: для каждого входа в хромосомы, этот оператор будет с фиксированной вероятностью р = 0,1 замены его случайное значение, выбранное из инициализации распределение вероятностей. ПРЕДВАРИТЕЛЬНОЕ ED-мутировние-весов: для каждого входа в хромосомы, этот оператор будет с фиксированной вероятностью р =0,1 плюс случайная величина выбранная из начального распределение вероятностей. Мы ожидаем, что предопределенная мутации будет лучше, чем объективная по следующей причине. С самого начала запуска, выбирались родители которые выбрали, имеют тенденцию быть лучше, чем в среднем. Таким образом, веса этих родителей, как правило, лучше, чем случайных параметров. Следовательно, смещения распределения вероятностей по текущей стоимости Вес должен дать лучшие результаты, чем распределение вероятностей сосредоточена на нуль. МУТИРОВАНИЕ-УЗЛОВ: Этот оператор выбирает N без входных узлов сети, которые представляют хромосомы родителей. Для каждого из входящих ссылок на эти п узлов, оператор добавляет к ссылкам случайные значения веса из начального распределения вероятностей. Затем он кодирует этоу Новую сеть на дочернюю хромосому. Интуиция здесь является то, что входящие ссылки на узел форме логических подгруппа всех звеньев в условиях работы сети. По удерживающего его изменения в небольшое число из этих подгрупп, это сделает ее улучшения более вероятно, приведет к хорошим оценки. В наших экспериментах, N = 2. МТИРОВАНИЕ-слабых-узлов: концепция узла сила отличается от концепции ошибки используется в обратного распространения. Например, узел может иметь нулевую ошибку, если АИЛ его связи выходе равны нулю, но такие узел не способствовали ничего положительного в сети и, таким образом, не сильный узел. Концепция сила заключается в классификатор системы и была введена в нейронных сетей в [Davis 1988]. Определим силу скрытого узла в упреждающей сети как разность между оценкой сети нетронутыми и оценка сети с, что узел лоботомии (т.е. с его ссылками выхода равными нулю). Мы разработали эффективный способ расчета силы узла узла здесь не обсуждается. Tlie оператора мутировние-слабые узлы принимает сети, которая представляет хромосомы родителей и вычисляет сила каждого скрытого узла. Затем он выбираем слабых узлов и выполняет мутации на каждой из своих входящих и исходящих ссылок. Эта мутация является несмещенной, если узел отрицательно и предвзято, если узел сила положительным. Затем он кодирует этой новой сети на хромосоме как ребенка. интуиции за этого оператора является то, что некоторые узлы, которые не только не очень полезно для сети но на самом деле может быть больно он. Выполнение мутации на эти узлы, скорее всего, выход больше выгоды, чем мутации на узел, который уже делает хорошую работу. Обратите внимание, что поскольку этот оператор не будет в состоянии улучшить узлы, которые уже делаем, а она не должна быть единственным источником разнообразия в популяции. В наших экспериментах, M = L. Кроссовер-весов: Этот оператор помещает значение в каждой позиции хромосомы ребенка от случайного выбора один из двух родителей и с использованием значения в том же положение на хромосоме, что родителей. Кроссовер-узлы: для каждого узла в сети закодирована на ребенка хромосомы, этот оператор выбирает один из сетей двух родителей и находит соответствующий узел в этой сети. Затем он ставит вес каждого входящего ссылка на узел родителей в соответствующих связь ребенка сети. Интуиция здесь является то, что сетей успеха из-за синергизма между их различными весами, и это синергизм Больший из весом от входящей ссылками на тот же узел. Поэтому, как генетические matenal передается по всему, эти логические подгруппы должны оставаться вместе. Кроссовер-Особенности: различные узлы в нейронных сети выполняют разные роли. Для полностью связаны, слоистые сети, роль которых в данном узле может играть зависит только на каком уровне он находится в, а не на своей позиции в том, что слоя. В самом деле, мы можем обмениваться роль из двух узлов и B в том же слое сети следующим образом. Цикл по всем С узлами связаны (либо входящие или исходящие ссылки) к (а значит, и к В). Exchange вес на ссылку между С и с, что на связь между С и В. Не обращая внимания на внутреннюю структуру, новая сеть идентичных в старой сети, т. е. с учетом же вклад, который они будут производить при сохранении объема. Дети производимые по ранее обсуждавшемся кроссоверам сильно зависит от внутренней структуры родителей. Кроссовер- ОСОБЕННОСТИ оператор снижает эту зависимость о внутренней структуре, выполнив следующие действия. Для каждого узел в сети первых родителей, он пытается найти узел в второго родителя сети, которая играет такую ??же роль, показав, количество входов в обеих сетях и сравнивая ответы различных узлов. Затем он переставляет сети второго родителя, с тем чтобы узлы играют же роли, в том же положении. На данный момент, она образует ребенка так же, как кроссовер-узлов. Наибольшее улучшение получил от этого оператора по сравнению с другими кроссовер Операторы должны прийти в начале запуска перед всеми Члены населения начинают искать так. HILLCL1MB: Этот оператор рассчитывает градиент каждый член обучающего множества и суммы их вместе, чтобы получить полный градиент. Затем он нормализует этот градиент путем деления по величине. Дети получается из родителей, принимая шаг в направлении, определяемом нормированный градиент размер размер шага, где шаг размер параметр, который адаптируется всей работать в следующих способом. Если оценки Дети хуже, чем родителей, размер шага является размноженных по параметру размер шага распада = 0,4; если ребенок лучше, чем родители, размер шага умножается за шагом-размер-расширения = 1,4. Этот оператор отличается от прямого распространения одним из следующих способов: 1) веса корректируются только после расчета градиента для всех членов множество подготовки и 2) градиент нормирована так, что размер шага не пропорционально размеру градиента. 5) Настройка параметров: Есть ряд параметров, значения которых могут значительно повлиять на производительность алгоритма. Если не указано иначе, мы все эти постоянным по работает. Теперь мы обсудим некоторые важные параметры по отдельности. Родитель-скалярный: Этот параметр определяет с тем, что Вероятность каждого отдельного выбрана в качестве родителя. второй лучший человек родитель-скалярном раза чаще как лучше быть выбраны, третьей лучшей является родителем-скалярной раза чаще, чем второе место, и т.д. значение, как правило, линейно интерполируются между 0,92 и 0,89 за ход выполнения. ОПЕРАТОР-вероятностей: Этот список параметров определяет, с какой вероятностью каждого оператора в оператора бассейн выбран. Как правило, эти значения были инициализированы так что все операторы имеют равные вероятности выбора. адаптации механизма изменения этих вероятностей по ход выполнения с учетом выполнения операторов, увеличение вероятности отбора для операторов , что дела идут хорошо и снижения его для выполнения операторов плохо. Это экономит пользователя от необходимости ручной настройки эти вероятности. Размер популяции : Это само за себя параметр, как правило, установлено в 50. Пример итерации генетического алгоритма показан на рисунке 3.

6. ЭКСПЕРИМЕНТЫ

В этом разделе мы обсудим ряд экспериментов, которые привели нас к окончательной версии генетического алгоритма и еще один Эксперимент сравнения генетического алгоритма обратного распространения. Для оценки algonthm с заданным набором операторов и настройки параметров, мы провели серию из десяти независимых проходит запись оценки лучший индивидуальный в зависимости от числа итераций. После этого мы усредненные результаты с тем чтобы уменьшить изменения введены по стохастический характер algonthm. Даже после усреднения некоторые различия остаются, и поэтому это приговор отделить случайные отклонения от существенных различий между усредненной работает. Эксперимент 1: Этот эксперимент был предназначен для сравнения выступления трех различных версиях мутации. Объективное-мутировние-веса, BIASEDMUTATE-ВЕС и мутировние-узлов. Для этого мы проводится три серии опытов, каждый с тем же параметром Настройки и с кроссовером-веса, как один из операторов. Единственное различие между запусками было Версия мутации использовать. Результаты изображены на рисунке 4. Как и предполагалось, существует четкое упорядочение в терминах производительность: 1) мутировние-узлов, 2) предвзято - мутировние - ВЕС и 3) Объективные-мутировние-весов. Эксперимент 2: Этот эксперимент был предназначен для сравнить выступления трех различных версиях из кроссовером-весов. CROSSOVERNODES и кроссовер-ОСОБЕННОСТИ. Для этого мы провели три серии опытов, каждый с тем же параметром Настройки и мутировние-узлы в качестве одного из операторов. Единственное различие между запусками была версия Кроссовер используется. Результаты изображены на рисунке 5. Они показывают, что нет большой разницы в производительности между различных типов кроссоверов. Эксперимент 3: Этот эксперимент попытались определить Эффективность MUTATEWEAKEST оператора специального назначения- Узлов. Чтобы сделать это, по сравнению усредненные работать только с двумя операторами мутировние-узлов и кроссовер-функций для усредненного работать с этих двух операторов плюс мутировние-слабых узлов. Результаты изображены на рисунке 6. Имея MUTATEWEAKEST- УЗЛЫ улучшение производительности в начале из работает, но уменьшилась производительность в середине и в конце. Это может означать, что нам нужно изменить наше определение узла . Эксперимент 4: Этот эксперимент исследована эффективность из Хилл-альпинизм режим для использования в конце генетического алгоритма выполнения. Хилл-альпинизм режим Хилклимб в качестве единственного оператора и имеет параметр PARENTSCALAR =0,0 (так что лучший индивидуальный всегда выбирается как родитель). Эксперимент по сравнению усредненный пробег 800 итераций с мутировние-узлов и CROSSOVERNODES для усредненных запустить из 500 итераций с этими двумя операторов и 300 итераций в холма восхождения режиме. Результаты показаны на рисунке 7. Обратите внимание на быстрый прогресс сразу После ввода холма восхождения следует быстро период практически никакого прогресса. Это отражает скорость Хилл-альпинизм режиме на восхождение местных холмов и его неспособностью никуда идти как только он попадает в пике. Ясно, что хилклаймбингу режим несет в себе большой риск локальных минимумов и Поэтому следует использовать только при относительно определенных, что глобальный минимум находится рядом. Эксперимент 5: Этот эксперимент по сравнению производительности стандартных прямого распространения с нашего генетического алгоритма для подготовки наших упреждающей сети. Мы использовали прямого распространения алгоритму, описанному в [Rumelhart 1986a] с скорость обучения (например, прибыль) в размере 0,5. генетического алгоритма.

7. ЗАКЛЮЧЕНИЕ И РАБОТА В БУДУЩЕМ

Мы выполнили ряд вещей, с нашей работой При использовании генетических алгоритмов для сети прямого поезда. В состоявшемся генетических алгоритмов, мы показали, реальные применения генетического алгоритма для больших и сложная задача. Мы также показали, как добавление domainspecific знания в генетический алгоритм может увеличить его производительность. В состоявшемся нейронных сетей, мы ввели новый тип обучения алгоритм, который по нашим данным превосходит прямого распространения алгоритма. Наш алгоритм имеет дополнительное преимущество, которое позволяет работать на узлах с разрывными функциями передачи и разрывными ошибке критериев. Работы, описанные здесь только касается поверхности потенциал использования генетических алгоритмов для поезда нейронных сетей. В области сети прямого распространения, Есть множество других операторов, с которыми можно экспериментировать. Возможно, наиболее перспективными являются те, которые включают в себя прямого распространения как все или часть их работы. Другая проблема в том, как изменить генетический алгоритм так, что она имеет дело с поток постоянно меняется подготовки данных, а не фиксированной обучающих данных. Это требует модификации генетического алгоритма для обработки случайной функции оценки. Наконец, как общего назначения, инструмент оптимизации, генетические алгоритмы должны быть применимы к любому типу нейронной сети (а не только сети прямого распространения, узлы которых имеют гладкую передачу функции), для которых функции оценки могут быть получены. наличие генетических алгоритмов для обучения может помочь в развитие других типов нейронных сетей.

Литература

  1. [Davis 19881 L. Davis, "Mapping Classifier Systems into Neural Networks,'' to appear in Proceedings of the 1988 Conference on Neural Information Processing Systems, Morgan Kaufimann.
  2. (Goldberg 1988] D. Goldberg, Genetic Algorithms in Machine Learning. Optimization, and Search, Addison- Wesley (I988).
  3. [Holland 1975] J. Holland, Adaptation in Natural and Artificial Systems, University of Michigan Press (1975).
  4. [Rumelhart 1986a] D.E. Rumelhart, G.E. Hinton and R.J. Williams, "Learning Representations by Back- Propagating Errors,''' Nature 323, pp. 533-536 (1986).
  5. I Rumelhart 1986b] D.E. Rumelhart and J.L. McClelland (Eds.), Parallel Distributed Processing: Explorations in the Microstructure of Cognition. MIT Press (1986).
  6. [Whitley 1988] D. Whitley, "Applying Genetic Algorithms to Neural Network Problems," International Neural Network Society p. 230 (1988).