示例#1
0
        public void DumpSetting()
        {
            Logger.WriteLine("Model File: {0}", ModelFile);
            Logger.WriteLine("Hidden Layer Type: {0}", ModelType.ToString());
            Logger.WriteLine("Output Layer Type: {0}", OutputLayerType.ToString());

            if (ModelDirection == 0)
            {
                Logger.WriteLine("RNN Direction: Forward");
            }
            else
            {
                Logger.WriteLine("RNN Direction: Bi-directional");
            }

            Logger.WriteLine("Learning rate: {0}", LearningRate);
            Logger.WriteLine("Dropout: {0}", Dropout);
            Logger.WriteLine("Max Iteration: {0}", MaxIteration);
            Logger.WriteLine("Hidden layers: {0}", HiddenLayerSizeList.Count);
            Logger.WriteLine("RNN-CRF: {0}", IsCRFTraining);
            Logger.WriteLine("SIMD: {0}, Size: {1}bits", System.Numerics.Vector.IsHardwareAccelerated,
                             Vector <double> .Count * sizeof(double) * 8);
            Logger.WriteLine("Gradient cut-off: {0}", GradientCutoff);
            if (SaveStep > 0)
            {
                Logger.WriteLine("Save temporary model after every {0} sentences", SaveStep);
            }
        }
示例#2
0
 /// <summary>
 /// Выходной слой.
 /// </summary>
 /// <param name="inputs">Входные значения.</param>
 /// <param name="type">Тип выходного слоя (по-умолчанию распознавание чисел).</param>
 /// <param name="countOfNeurons">Количество нейронов.</param>
 public OutputLayer(List<double> inputs, OutputLayerType type = OutputLayerType.NumberRecognizing,
     int countOfNeurons = 10)
 {
     _inputs = inputs;
     _type = type;
     _countOfNeurons = countOfNeurons;
 }
示例#3
0
        /// <summary>
        /// Конструктор выходного слоя для распознавания чисел.
        /// </summary>
        /// <param name="neurons">Нейроны.</param>
        /// <param name="modeType">Тип мода сети.</param>
        /// <param name="type">Тип распознавания.</param>
        public OutputLayer(List<Neuron> neurons, NetworkModeType modeType,
            OutputLayerType type = OutputLayerType.NumberRecognizing)
        {
            if (!type.Equals(OutputLayerType.NumberRecognizing) &&
                !modeType.Equals(NetworkModeType.Recognizing))
                throw new Exception("Данный конструкто предназначен только для распознавания чисел.");

            _type = type;
            _layerNeurons = neurons;
        }