我正在使用emguCV来使用OpenCV机器学习算法。我可以成功训练一个RTree(我获得了成功),但是当我试图预测它时,我总是-1。然后我试图获得变量重要性矩阵和树计数,矩阵变为空(我指定了构建它的参数),树计数为0.
有没有人对我做错了什么有任何想法? PS,如果我使用决策树,我可以得到预测。
我有6个变量和大约11000个样本。 以下是我使用的参数:
MCvRTParams param = new MCvRTParams();
param.maxDepth = 8;// max depth
param.minSampleCount = 10;// min sample count
param.regressionAccuracy = 0;// regression accuracy: N/A here
param.useSurrogates = true; //compute surrogate split, no missing data
param.maxCategories = 15;// max number of categories (use sub-optimal algorithm for larger numbers)
param.cvFolds = 10;
//param.use1seRule = true;
param.truncatePrunedTree = true;
//param.priors = priorsHandle.AddrOfPinnedObject(); // the array of priors
由于
答案 0 :(得分:0)
尝试将regressionAccuracy设置为非零数字。如果节点内的精度优于regressionAccuracy,regressionAccuracy将停止拆分节点。如果将其设置为零,它将立即停止在根节点。