2015-08-02 5 views
0

У меня проблема с значением k_fold для класса SVM в C# (с использованием emgucv). все значения чисел просто сделать исключение, как показано ниже:Создание значения k_fold из образца SVM class

Emgu.CV.Util.CvException был необработанное HResult = -2146233088
Message = OpenCV: В то время как кросс-валидация один или несколько классов были вывалился образца. Попробуйте увеличить
Источник = Emgu.CV ErrorMessage = При перекрестной проверке одного или нескольких из классы были выпадают из образца. Попробуйте увеличить

увеличить/изменить значение k_fold бесполезно. пожалуйста, помогите мне исправить их?

ответ

0

Решите с ним model.Train(datalatih, kelas, null, null, s). Это мой код

using (SVM model = new SVM()) 
      { 
       SVMParams s = new SVMParams(); 
       s.KernelType = Emgu.CV.ML.MlEnum.SVM_KERNEL_TYPE.LINEAR; 
       s.SVMType = Emgu.CV.ML.MlEnum.SVM_TYPE.C_SVC; 
       s.C = 1; 
       s.TermCrit = new MCvTermCriteria(100, 0.00001); 

       // Lakukan pelatihan 
       model.Train(datalatih, kelas, null, null, s); 

       // Tes Uji SVM 
       for (int i = 0; i < 30; i++) 
       { 
        datauji.Data[0, i] = uji[i]; 
       } 
       float hasil = model.Predict(datauji); 

       return Tuple.Create((int)hasil); 
      }