Esempio n. 1
0
        protected NetworkStructure GetLayers(int[] layers, Bias bias, IContinuousActivator func)
        {
            var l = layers.Length;

            Link[][]           structure = new Link[l][];
            FullLayerConnector connector = new FullLayerConnector();

            for (var i = 0; i < l - 1; i++)
            {
                if (i == 0)
                {
                    structure[i] = Utility.Generate <Link>(layers[i]).ToArray();
                }
                int j = i + 1;
                structure[j] = Utility.Generate <Neuron>(layers[j]).ToArray();
                connector.Connect(structure[i], (NeuronBase[])structure[j], bias);
            }
            SetIdentity(structure);
            foreach (Link[] layer in structure)
            {
                foreach (Link link in layer)
                {
                    if (link is NeuronBase)
                    {
                        ((NeuronBase)link).Func = func;
                    }
                }
            }
            return(new NetworkStructure(structure, bias));
        }
Esempio n. 2
0
 protected NetworkStructure GetLayers(int[] layers,Bias bias,IContinuousActivator func)
 {
     var l=layers.Length;
     Link[][] structure=new Link[l][];
     FullLayerConnector connector=new FullLayerConnector();
     for(var i=0;i<l-1;i++) {
         if(i==0)
             structure[i]=Utility.Generate<Link>(layers[i]).ToArray();
         int j=i+1;
         structure[j]= Utility.Generate<Neuron>(layers[j]).ToArray();
         connector.Connect(structure[i],(NeuronBase[])structure[j],bias);
     }
     SetIdentity(structure);
     foreach(Link[] layer in structure)
         foreach(Link link in layer)
             if(link is NeuronBase)
                 ((NeuronBase)link).Func=func;
     return new NetworkStructure(structure,bias);
 }