public Work() { p = new Perceptron(); }
private void TrainButtonClick(object sender, RoutedEventArgs e) { if ((bool)SetBaisCheckBox.IsChecked) { if (baisMatTextBox.Text.Equals("random")) { work.SetRandomBais(); } else { work.GetBais(baisMatTextBox.Text); } } if (!(bool)SetWeightManuallyCheckBox.IsChecked) { work.SetRandomWeights(); } //if(activationCombo.SelectedIndex==0) //p = work.Train(ThreasholdTextBox.Text, LearningRateTextBox.Text, epochsTextBox.Text, TimeTextBox.Text, ActivationFunction.BipolarBinary); //if(activationCombo.SelectedIndex == 1) // p = work.Train(ThreasholdTextBox.Text, LearningRateTextBox.Text, epochsTextBox.Text, TimeTextBox.Text, ActivationFunction.UnipolarBinary); if (isBipolar(work.p.DesiredOutput)) { p = work.Train(ThreasholdTextBox.Text, LearningRateTextBox.Text, epochsTextBox.Text, TimeTextBox.Text, ActivationFunction.BipolarBinary); } if (isUniBipolar(work.p.DesiredOutput)) { p = work.Train(ThreasholdTextBox.Text, LearningRateTextBox.Text, epochsTextBox.Text, TimeTextBox.Text, ActivationFunction.UnipolarBinary); } Train train = new Train(); train.resultEpochsTextBlock.Text = p.ResultNeededEpochsToTrain + 1 + ""; train.resultTimeTextBlock.Text = p.ResultNeededTimeToTrain + ""; string result = ""; for (int i = 0; i < p.Weights.Length; i++) { for (int j = 0; j < p.Weights[0].Length; j++) { result += p.Weights[i][j] + ","; } result += "\n"; } train.resultWeightsMatrix.Text = result; result = ""; if (p.WithBais) { for (int i = 0; i < p.Bais.Length; i++) { if (i > 0) { result += "," + p.Bais[i]; } else { result += p.Bais[i]; } } } train.resultBaisMatrixTextBlock.Text = result; MainTap.Items.Add(train); MainTap.SelectedIndex = 5; DrawNetwork(); }