• главная
  • Карта сайта
  • Контакты

Реализация гибридного сочетания ГА+ИНС

Реализация требуемого сочетания ГА+НС осуществляется с помощью классов пространства имен NNetGATraining (Рис.2.3.).

Рис.2.3. Диаграмма классов пространства имен NNetGATraining

Центральным классом здесь является класс NeuroNetChromosome, производный от класса RealChromosome и реализующий необходимую дополнительную специфику.

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

Подробно рассмотрим, как создаются объекты этого класса:

public NeuroNetChromosome([] netStructure,[] netWeights,pActFunction,alpha,trainingSet)

: base(netWeights, alpha)

{.netStructure = netStructure;.netWeights = netWeights;= pActFunction; net = MakeNet();

//вычисление функции приспособленности как ошибки сети на обучающем множестве

Trainer trainer = new Trainer(net, trainingSet); = trainer.NetError();

}

Конструктор получает параметр netWeight - это массив вещественных чисел, который в этом классе выполняет 2 функции:

· является фенотипом РГА-хромосомы (поэтому он передается в базовый конструктор класса RealChromosome);

· является набором весов нейронной сети, которую представляет данный объект NeuroNetChtomosome.

Конструктор на основании этого массива создает соответствующую сеть. Для этого конструктор получает множество дополнительных параметров.

Целочисленный массив netStructure определяет топологию сети. Например, если он содержит элементы 4, 2 и 3, то это значит, что сеть состоит из трех слоев: в первом - 4 нейрона, во втором - 2, и в третьем -3.

Закрытый метод MakeNet создает на основе этой топологии и других дополнительных параметров нейронную сеть с заданными в netWeights весами.

Теперь остается только вычислить функцию приспособленности такой хромосомы, как функционал ошибки сети (2 последние строчки конструктора).

Еще один специфический метод класса NeuroNetChtomosome - переопределяет генетическую операцию скрещивания:

public IChromosome CrossOver(IChromosome chr)

{rChr= (RealChromosome)(base.CrossOver(chr));new NeuroNetChromosome(,.PhenoAttributes,,,);

}

Класс NNPopulationBuilder создает первоначальную популяцию из хромосом-нейросетей.

 Меню сайта

  • Главная
  • Подбор торгового персонала
  • Портрет современного менеджера
  • Преодоление стрессов на работе
  • Применение SWOT-анализа
  • Принципы организации
  • Маркетинг: заметки, статьи, материалы

 Производительность труда сотрудника

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

 Процесс коммуникации в организации

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


Вверх

Copyright © 2013 - Все права принадлежат - www.markadvice.ru