コード例 #1
0
ファイル: NeuralMath.cs プロジェクト: artgl42/NeuralNetwork
        internal static float[] InitializeBiasWeights(uint neuronsCount, InitializerBias biasInitializer)
        {
            float[] _randomWeights = new float[neuronsCount];

            for (int neuron = 0; neuron < neuronsCount; neuron++)
            {
                _randomWeights[neuron] = GetWeights(biasInitializer);
            }

            return(_randomWeights);

            float GetWeights(InitializerBias initializer)
            {
                float _weight = 0;

                switch (initializer)
                {
                case InitializerBias.Zeros:
                    _weight = 0F;
                    break;

                case InitializerBias.Ones:
                    _weight = 1F;
                    break;

                case InitializerBias.Random:
                    _weight = (float)Math.Round(_random.NextDouble(), 5);
                    break;
                }
                return(_weight);
            }
        }
コード例 #2
0
 internal NeuralLayerFactory(uint sens, uint[] neurons, bool isBiasNeurons, InitializerWeights weightsInitializer, InitializerBias biasInitializer)
 {
     _sensorsCount       = sens;
     _neurons            = neurons;
     _isBiasNeurons      = isBiasNeurons;
     _weightsInitializer = weightsInitializer;
     _biasInitializer    = biasInitializer;
 }
コード例 #3
0
 public Builder SetBiasNeurons(bool isBiasNeurons, InitializerBias biasInitializer = default(InitializerBias))
 {
     IsBiasNeurons   = isBiasNeurons;
     BiasInitializer = biasInitializer;
     return(this);
 }
コード例 #4
0
ファイル: NeuralLayer.cs プロジェクト: artgl42/NeuralNetwork
 internal NeuralLayer(uint synapsesCount, uint neuronsCount, bool isBiasNeuron, InitializerWeights weightsInitializer, InitializerBias biasInitializer)
 {
     _SynapsesCount = synapsesCount;
     _NeuronsCount  = neuronsCount;
     _NeuronWeights = NeuralMath.InitializeNeuronWeights(_SynapsesCount, _NeuronsCount, weightsInitializer);
     if (isBiasNeuron)
     {
         _BiasWeights = NeuralMath.InitializeBiasWeights(neuronsCount, biasInitializer);
     }
 }
コード例 #5
0
ファイル: HiddenLayer.cs プロジェクト: artgl42/NeuralNetwork
 internal HiddenLayer(uint synapsesCount, uint neuronsCount, bool isBiasNeuron, InitializerWeights weightsInitializer, InitializerBias biasInitializer)
     : base(synapsesCount, neuronsCount, isBiasNeuron, weightsInitializer, biasInitializer)
 {
 }