Exemplo n.º 1
0
        private void btn_Train_Click(object sender, EventArgs e)
        {
            //return;//暂时不支持训练集回测
            long len  = long.Parse(this.txt_DataLength.Text);
            int  deep = int.Parse(this.txt_LearnDeep.Text);
            ExpectList <TimeSerialData> el = new ExpectReader().ReadHistory <TimeSerialData>(long.Parse(this.txt_BegExpect.Text), len + deep + 1);

            //MLDataFactory mldf = new MLDataFactory(ExpectList.getExpectList(el));
            DataCategroyType = (Type)this.ddl_categryFunc.SelectedValue;
            MLType           = (Type)this.ddl_MLFunc.SelectedValue;
            MLDataCategoryFactoryClass mldf = (MLDataCategoryFactoryClass)ClassOperateTool.getInstanceByType(DataCategroyType);

            mldf.Init(ExpectList.getExpectList(el));
            for (int i = 0; i < 10; i++)
            {
                //MLInstances<int, int> TrainSet = mldf.getAllSpecColRoundLabelAndFeatures(i,deep, chkb_AllUseShift.Checked ? 1 : 0);
                MLInstances <int, int>       TrainSet   = mldf.getCategoryData(i, deep, chkb_AllUseShift.Checked ? 1 : 0);
                MachineLearnClass <int, int> SelectFunc = (MachineLearnClass <int, int>)ClassOperateTool.getInstanceByType(MLType);//获取机器学习类型
                SelectFunc.OnTrainFinished += OnTrainFinished;
                SelectFunc.OnPeriodEvent   += OnPeriodEvent;
                SelectFunc.OnSaveEvent     += SaveData;
                SelectFunc.GroupId          = i;
                SelectFunc.FillTrainData(TrainSet);
                SelectFunc.InitTrain();
                SelectFunc.TrainIterorCnt = int.Parse(txt_IteratCnt.Text);
                SelectFuncs.Add(SelectFunc);
                this.txt_begT.Text = DateTime.Now.ToLongTimeString();
                this.Cursor        = Cursors.WaitCursor;
                RunningThread      = new Thread(SelectFunc.Train);
                RunningThread.Start();
                ThreadCnt++;
            }
        }
Exemplo n.º 2
0
 public bool FillTrainData(List <List <FeatureT> > FeatureData, List <LabelT> LabelData)
 {
     if (TrainData == null)
     {
         TrainData = new MLInstances <LabelT, FeatureT>();
     }
     try
     {
         if (FeatureData.Count != LabelData.Count)
         {
             return(false);
         }
         if (FeatureData.Count == 0 || LabelData.Count == 0)
         {
             return(false);
         }
         MLInstances <LabelT, FeatureT> _TrainData = new MLInstances <LabelT, FeatureT>();
         for (int i = 0; i < FeatureData.Count; i++)
         {
             _TrainData.Add(new MLInstance <LabelT, FeatureT>(LabelData[i], FeatureData[i]));
         }
         FillTrainData(_TrainData);
     }
     catch (Exception ce)
     {
         return(false);
     }
     return(true);
 }
Exemplo n.º 3
0
        public MLInstances <int, int> getAllSpecColRoundLabelAndFeatures(int col, int Deep, int AllowUseShift)
        {
            MLInstances <int, int> ret = new MLInstances <int, int>();

            for (int i = Deep + 1; i < Data.Count; i++)
            {
                ret.Add(getSpecRowRoundLabelFeatures(i, col, Deep, AllowUseShift));
            }
            return(ret);
        }
Exemplo n.º 4
0
 public bool FillTrainData(MLInstances <LabelT, FeatureT> _TrainData)
 {
     TrainData = _TrainData;
     return(true);
 }