private static List <INeuron> CreateLayer(int layerSize, List <IInput> inputs) { var layerBias = new BiasInput(1.0d); var layer = new List <INeuron>(); for (var i = 0; i < layerSize; i++) { var neuron = new Neuron.Neuron(Activation); neuron.RegisterInput(layerBias); inputs.ForEach(neuron.RegisterInput); layer.Add(neuron); } return(layer); }
public Sinaps(Neuron neuron) { fromNeuron = neuron; value = ((float)rand.Next(interval.X, interval.Y)) / multiplier; // value = 0.2f; }
private static List<INeuron> CreateLayer(int layerSize, List<IInput> inputs) { var layerBias = new BiasInput(1.0d); var layer = new List<INeuron>(); for (var i = 0; i < layerSize; i++) { var neuron = new Neuron.Neuron(Activation); neuron.RegisterInput(layerBias); inputs.ForEach(neuron.RegisterInput); layer.Add(neuron); } return layer; }
static void Main(string[] args) { string x; bool fired = false; Console.WriteLine("Dendritů:"); int input = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Hodnota pro výstřel:"); int input2 = Convert.ToInt32(Console.ReadLine()); Neuron n = new Neuron(input, input2); do { foreach (Dendrit d in n.dendrits) { if (!fired) { if (n.dendrits.Sum(pkg => pkg._v) >= n.maxV) { SpaceWrite("Vystřeleno"); fired = true; } else { Console.WriteLine("Vstup:"); int value = Convert.ToInt32(Console.ReadLine()); if (value > 1) { value = 1; } d._v = value * d.w; if (value > 0) { d.w++; d.Increase = true; } } } } int sum = n.dendrits.Sum(pkg => pkg._v); SpaceWrite("Suma = " + sum + " Hodnota výstřelu = " + n.maxV); foreach (Dendrit d in n.dendrits) { if (d.Increase) { Console.WriteLine("Hodnota dendritu: " + d._v + " váha: " + (d.w - 1) + "+1"); d.Increase = false; } else { Console.WriteLine("Hodnota dendritu: " + d._v + " váha: " + (d.w - 1)); } d._v = 0; } if (sum >= n.maxV) { SpaceWrite("Vystřeleno"); Debug.WriteLine(sum + " / " + n.maxV); fired = true; } else if (!fired) { Debug.WriteLine(sum + " / " + n.maxV); SpaceWrite("Opakovat ? (a/n)"); } x = Console.ReadLine(); } while (x != "n"); }
public Sinaps(NeuronInput input, Neuron neuron) { fromNeuron = neuron; frominput = input; value = ((float)rand.Next(interval.X, interval.Y)) / multiplier; }