Esempio n. 1
0
        private void LearnButton_Click(object sender, RoutedEventArgs e)
        {
            NetworkParameters networkParameters = new NetworkParameters()
            {
                BiasesEnabled  = (bool)BiasesCheckbox.IsChecked,
                ClassesNumber  = (int)ClassNumberSlider.Value,
                LearningRate   = (double)LearningRateSlider.Value,
                Seed           = (double)SeedSider.Value,
                NumberOfEpochs = (int)NumberOfEpochsSlider.Value,
                Momentum       = (double)MomentumSlider.Value,
                Layers         = new List <NetworkLayer>(this.NetworkLayers)
            };

            if (ClassificationProblemTypeRadio.IsChecked == true)
            {
                networkParameters.Problem = ProblemType.CLASSIFICATION;
            }
            else if (RegressionProblemTypeRadio.IsChecked == true)
            {
                networkParameters.Problem = ProblemType.REGRESSION;
            }

            if (MseErrorRadio.IsChecked == true)
            {
                networkParameters.ErrType = ErrorType.MSE;
            }
            else if (MaeErrorRadio.IsChecked == true)
            {
                networkParameters.ErrType = ErrorType.MAE;
            }
            else if (ClassicErrorRadio.IsChecked == true)
            {
                networkParameters.ErrType = ErrorType.CLASSIC;
            }
            else if (CrossEntropyRadio.IsChecked == true)
            {
                networkParameters.ErrType = ErrorType.CROSS_ENTROPY;
            }

            LearningParameters learningParameters = new LearningParameters()
            {
                Points = new List <Structs.Point>(this.trainPoints)
            };

            try
            {
                Python.Learn(networkParameters, learningParameters);
            }
            catch (Exception exc)
            {
                MessageBox.Show(exc.Message);
            }
        }