Ejemplo n.º 1
0
        public override NeuronLayer CreateInputLayer(int countNeurons)
        {
            //if (inputSignal.Count == countNeurons)
            //{
                NeuronLayer layer = new NeuronLayer();

                for (int i = 0; i < countNeurons; i++)
                {
                    Synapse synapse = new Synapse();
                    Neuron neuron = new Neuron(new LinearFunction());

                    //synapse.SetSignal(inputSignal[i]);
                    synapse.SetWeight(1);
                    neuron.SetShift(0);

                    synapse.SetParentNeurons(null, neuron);

                    neuron.AddInput(synapse);

                    layer.AddNeuron(neuron);
                }

                network.SetInputLayer(layer);

                return layer;
            //}
            //else
            //{
            //    MessageBox.Show("lol ... countNeurons не равно signal.Count");
            //    return null;
            //}
        }
Ejemplo n.º 2
0
        /// <summary>
        ///  соединяет текущий нейрон с нейроном переданным в качестве параметра
        /// </summary>
        public void ConnectNeuron(Neuron neuron)
        {
            Synapse newSynapse = new Synapse();
            newSynapse.SetParentNeurons(this, neuron);

            outputs.Add(newSynapse);
            neuron.inputs.Add(newSynapse);
        }
Ejemplo n.º 3
0
 // добавить выходной синапс
 public void AddOutput(Synapse outputSynapse)
 {
     outputs.Add(outputSynapse);
 }
Ejemplo n.º 4
0
 // добавить список входных синапсов
 //public void AddInput(List<Synapse> inputs)
 //{
 //    this.inputs = inputs;
 //}
 // добавить входной синапс
 public void AddInput(Synapse inputSynapse)
 {
     inputs.Add(inputSynapse);
 }
Ejemplo n.º 5
0
        public override NeuronLayer CreateOutputLayer(int countNeurons)
        {
            NeuronLayer layer = new NeuronLayer();

            for (int i = 0; i < countNeurons; i++)
            {
                Neuron neuron = new Neuron(new SigmoidFunction());
                Synapse synapse = new Synapse();

                synapse.SetWeight(1);

                synapse.SetParentNeurons(neuron, null);
                neuron.AddOutput(synapse);

                layer.AddNeuron(neuron);
            }

            network.SetOutputLayer(layer);

            return layer;
        }