public bool Sub(CancellationToken token) { if (!token.IsCancellationRequested) { while (!perceptron.Entrenamiento(configuracion.DatosDeEntrada, configuracion.DatosDeSalida, configuracion.CiclosDeInteraccion, configuracion.ErrorAceptable, configuracion.SaltosDelta, token)) { perceptron = new Percepcion(configuracion.Entradas, configuracion.NeurnasPorCapa, configuracion.Salidas); } return(true); } else { return(false); } }
private void Boton_ConfirmarPerceptron_Click(object sender, RoutedEventArgs e) { int[] bufferNeuronas = new int[textBoxesConfiguracion.Count]; for (int i = 0; i < textBoxesConfiguracion.Count; i++) { if (Convert.ToInt32(textBoxesConfiguracion[i].Text) <= 0) { bufferNeuronas[i] = 1; } else { bufferNeuronas[i] = Convert.ToInt32(textBoxesConfiguracion[i].Text); } } configuracion.NeurnasPorCapa = bufferNeuronas; Grid_Entrenamiento.IsEnabled = true; perceptron = new Percepcion(configuracion.Entradas, configuracion.NeurnasPorCapa, configuracion.Salidas); }
private void Button_AbrirEntrenamiento_Click(object sender, RoutedEventArgs e) { OpenFileDialog openFileDialog = new OpenFileDialog(); openFileDialog.Filter = "Archivos de Entrenamiento (*.rednn)|*.rednn;"; Rednn rednn = new Rednn(); try { openFileDialog.ShowDialog(); rednn = Serializacion.Deserializar <Rednn>(openFileDialog); perceptron = rednn.Percepcion; configuracion = rednn.Configuracion; EstablecerControles(configuracion); txt_Capas.TextChanged -= txt_Capas_TextChanged; txt_Capas.Text = configuracion.Capas.ToString(); foreach (TextBox item in textBoxesConfiguracion) { item.TextChanged -= Text_TextChanged; } WrapPanel_TextBox.Children.Clear(); textBoxesConfiguracion.Clear(); for (int i = 0; i < configuracion.NeurnasPorCapa.Length; i++) { GroupBox group = new GroupBox(); TextBox textBox = new TextBox(); group.Header = "Capa " + (i + 1); group.Height = 200; group.Width = 200; group.Margin = new Thickness(25); textBox.SetValue(HintAssist.IsFloatingProperty, true); textBox.SetValue(HintAssist.HintProperty, "Neuronas"); //textBox.Margin = new Thickness(25, 25, 25, 25); textBox.Foreground = Brushes.White; textBox.BorderBrush = new SolidColorBrush(Color.FromRgb(133, 133, 133)); textBox.FontSize = 20; textBox.Foreground = Brushes.White; textBox.HorizontalAlignment = HorizontalAlignment.Center; textBox.VerticalAlignment = VerticalAlignment.Center; textBox.Text = configuracion.NeurnasPorCapa[i].ToString(); group.Content = textBox; WrapPanel_TextBox.Children.Add(group); } foreach (GroupBox box in WrapPanel_TextBox.Children) { textBoxesConfiguracion.Add((TextBox)box.Content); } foreach (TextBox text in textBoxesConfiguracion) { text.TextChanged += Text_TextChanged; } txt_Capas.TextChanged += txt_Capas_TextChanged; } catch (Exception a) { MessageBox.Show(a.Message); } }
private void Boton_Entrenamiento_Click(object sender, RoutedEventArgs e) { SeEntrena = !SeEntrena; if (SeEntrena) { Boton_Entrenamiento.Content = "Detener"; graficaLow.Reset(); tokenSource = new CancellationTokenSource(); token = tokenSource.Token; perceptron = new Percepcion(configuracion.Entradas, configuracion.NeurnasPorCapa, configuracion.Salidas); perceptron.MarcadorDeError += Perceptron_MarcadorDeError; Task.Factory.StartNew(() => Sub(token), token); } else { Boton_Entrenamiento.Content = "Entrenar"; tokenSource.Cancel(); } //SeEntrena = !SeEntrena; //if (!SeEntrena) //{ // tokenSource.Cancel(); //} //else //{ // grafica.Reset(); // perceptron = new Percepcion(configuracion.Entradas, configuracion.NeurnasPorCapa, configuracion.Salidas); // perceptron.MarcadorDeError += Perceptron_MarcadorDeError; // Task.Factory.StartNew(() => Sub(token), token); //} //tokenSource.Cancel(); //if (SeEntrena) //{ // Percepcion.Entrenar = true; //grafica.Reset(); //perceptron = new Percepcion(configuracion.Entradas, configuracion.NeurnasPorCapa, configuracion.Salidas); //perceptron.MarcadorDeError += Perceptron_MarcadorDeError; //var tarea = Task.Factory.StartNew(() => Sub(token), token); //} //else //{ // tokenSource.Cancel(); //} //if (SeEntrena) //{ // Task.Factory.StartNew(() => // { // if (!token.IsCancellationRequested) // { // Percepcion.Entrenar = true; // grafica.Reset(); // perceptron = new Percepcion(configuracion.Entradas, configuracion.NeurnasPorCapa, configuracion.Salidas); // perceptron.MarcadorDeError += Perceptron_MarcadorDeError; // Sub(); // } // else // { // Percepcion.Entrenar = false; // } // }, token); //} //else //{ // tokenSource.Cancel(); //} //SeEntrena = !SeEntrena; //Thread.Sleep(100); //tokenSource = new CancellationTokenSource(); //token = tokenSource.Token; //if (SeEntrena) //{ // Percepcion.Entrenar = true; // grafica.Reset(); // perceptron = new Percepcion(configuracion.Entradas, configuracion.NeurnasPorCapa, configuracion.Salidas); // Task.Factory.StartNew(() => Sub(token), token); // perceptron.MarcadorDeError += Perceptron_MarcadorDeError; //} //else //{ // tokenSource.Cancel(); // Percepcion.Entrenar = false; //} }