示例#1
0
        public ActiveModelData GetParameters()
        {
            ActiveModelData data = new ActiveModelData();

            //
            data.IterType      = m_cbIterationType.SelectedIndex;
            data.IterValue     = GetValue(m_eb_iterations.Text);
            data.MinibatchSize = (uint)GetValue(ebMinibatchSize.Text);

            //
            data.LearnerType   = (LearnerType)cbLearnerType.SelectedIndex;
            data.LearningRate  = GetValue(textLearningRate.Text);
            data.Momentum      = GetValue(txMomentum.Text);
            data.L1Regularizer = GetValue(txtL1.Text);
            data.L2Regularizer = GetValue(txtL2.Text);

            //
            data.NetworkType      = cbNetworkSettings.SelectedIndex;
            data.Neurons          = (int)GetValue(netSedit1.Text);
            data.HLayers          = (int)GetValue(netSEdit2.Text);
            data.Embeding         = (int)GetValue(netSEdit3.Text);
            data.DropRate         = GetValue(netSeditdrop.Text);
            data.UseStabilisation = checkStabilisation.Checked;
            data.UseDropRate      = checkDropRate.Checked;

            //
            data.ActivationHidden = (Activation)cActivationH.SelectedIndex;
            data.ActivationOutput = (Activation)cActivationO.SelectedIndex;

            //
            data.LossFunction       = (LossFunctions)cbEvalFunction.SelectedIndex;
            data.EvaluationFunction = (LossFunctions)cbEvalFunction.SelectedIndex;

            return(data);
        }
示例#2
0
        public void SetParameters(ActiveModelData data)
        {
            //
            m_cbIterationType.SelectedIndex = data.IterType;
            m_eb_iterations.Text            = data.IterValue.ToString(System.Globalization.CultureInfo.InvariantCulture);
            ebMinibatchSize.Text            = data.MinibatchSize.ToString();
            currentIteration.Text           = "0";
            //
            cbLearnerType.SelectedIndex = (int)data.LearnerType;
            textLearningRate.Text       = data.LearningRate.ToString(System.Globalization.CultureInfo.InvariantCulture);
            txMomentum.Text             = data.Momentum.ToString(System.Globalization.CultureInfo.InvariantCulture);
            txtL1.Text = data.L1Regularizer.ToString(System.Globalization.CultureInfo.InvariantCulture);
            txtL2.Text = data.L2Regularizer.ToString(System.Globalization.CultureInfo.InvariantCulture);

            //
            cbNetworkSettings.SelectedIndex = data.NetworkType;
            netSedit1.Text             = data.Neurons.ToString();
            netSEdit2.Text             = data.HLayers.ToString();
            netSEdit3.Text             = data.Embeding.ToString();
            netSeditdrop.Text          = data.DropRate.ToString();
            checkStabilisation.Checked = data.UseStabilisation;
            checkDropRate.Checked      = data.UseDropRate;

            //
            cActivationH.SelectedIndex = (int)data.ActivationHidden;
            cActivationO.SelectedIndex = (int)data.ActivationOutput;

            cbLossFunction.SelectedIndex = (int)data.LossFunction;
            cbEvalFunction.SelectedIndex = (int)data.EvaluationFunction;
        }
示例#3
0
        /// <summary>
        /// Deserilization of run condition
        /// </summary>
        /// <param name="p"></param>
        public void ActivatePanel(ActiveModelData data, ANNModel model)
        {
            SetParameters(data);

            //clear previous data if exist
            lossFunction.Clear();
            evalFunciton.Clear();
            actualData.Clear();
            predictedData.Clear();

            //prepare graphs
            PrepareGraphs(model);

            //update loss and eval
            for (int i = 0; i < model.LossData.Count; i++)
            {
                updateChartFitness(i, model.LossData[i], model.EvalData[i], false);
            }

            //update mdoel
            updateChartData(model.ActualT, model.PredictedT);
            zedFitness.RestoreScale(zedFitness.GraphPane);
            this.zedModel.RestoreScale(zedModel.GraphPane);
        }
示例#4
0
        private void ShowView(string guid)
        {
            try
            {
                Cursor.Current = Cursors.WaitCursor;
                var p = Controller.GetView(guid);
                this.Text             = "Start Page";
                Controller.ActiveView = p;

                if (p == null)
                {
                    //disable model commands
                    ribbonPanel3.Enabled = false;
                    ribbonPanel2.Enabled = false;
                    ribbonPanel5.Enabled = false;
                    return;
                }

                //
                if (p is ProjectController)
                {
                    var pController = (ProjectController)p;
                    this.Text = pController.Project.Name;

                    if (pController.Project.DataSet != null)
                    {
                        expPanel1.SetDataSet(pController.Project.DataSet);
                    }

                    //disable model commands
                    ribbonPanel3.Enabled = false;
                    ribbonPanel2.Enabled = false;
                    ribbonPanel5.Enabled = true;
                    //enable project commands
                }
                else if (p is ANNModel)
                {
                    var pModel = (ANNModel)p;
                    runPanel1.Reset(pModel);
                    if (pModel.ModelData == null)
                    {
                        runPanel1.ActivatePanel(ActiveModelData.GetDefaults2(), pModel);
                    }
                    else
                    {
                        runPanel1.ActivatePanel(pModel.ModelData, pModel);
                    }

                    testPanel1.ActivatePanel(pModel);
                    this.Text = pModel.Name;
                    //enable model commands
                    ribbonPanel3.Enabled = true;
                    ribbonPanel2.Enabled = true;
                    ribbonPanel5.Enabled = false;
                }
            }
            catch (Exception ex)
            {
                ReportException(ex);
                // throw;
            }
            finally
            {
                //back normal cursor
                Cursor.Current = Cursors.Default;
            }
        }
示例#5
0
 /// <summary>
 /// Start training process for the specified model
 /// </summary>
 /// <param name="model"></param>
 /// <param name="setData"></param>
 /// <param name="report"></param>
 /// <param name="token"></param>
 public void Run(ANNModel model, ActiveModelData setData, Action <int, float, float, (List <List <float> >, List <List <float> >, List <List <float> >), (List <List <float> >, List <List <float> >, List <List <float> >)> report, CancellationToken token)
示例#6
0
 internal void Run(ActiveModelData setData, Action <int, float, float, (List <List <float> >, List <List <float> >, List <List <float> >), (List <List <float> >, List <List <float> >, List <List <float> >)> report, CancellationToken token)
示例#7
0
 public void Reset(ANNModel model)
 {
     ResetChart();
     PrepareGraphs(model);
     SetParameters(ActiveModelData.GetDefaults());
 }