/// <summary> /// Сгенерировать нейроны сети. /// </summary> /// <param name="attributes">Количество параметров входящего вектора.</param> /// <param name="neuronsCount">Количество нейронов.</param> public void GenerateNeurons(List <NetworkAttribute> attributes, int neuronsCount) { Neurons.Clear(); Weights.Clear(); InputAttributes.Clear(); InputAttributes.AddRange(attributes.Select(a => new InputAttributeBase { InputAttributeNumber = a.OrderNumber, Name = a.Name }) .ToList()); for (int i = 0; i < neuronsCount; i++) { Neurons.Add(new NeuronBase { NeuronNumber = i }); } foreach (var inputAttribute in InputAttributes) { foreach (var neuron in Neurons) { var randomWeight = NormalizationType.GetNeuronWeight(attributes.Count); Weights.Add(new WeightBase { InputAttributeNumber = inputAttribute.InputAttributeNumber, NeuronNumber = neuron.NeuronNumber, Value = randomWeight }); } } }