默认情况下,fitctree
和fitrtree
使用标准车算法[1]来创建决策树。也就是说,它们执行以下步骤:
从所有输入数据开始,检查每个预测器上所有可能的二进制分割。
选择具有最佳优化准则的分割。
分割可能导致子节点的观察值太少(小于MinLeafSize
参数)。为了避免这种情况,软件选择一个分裂,产生最佳的优化标准服从MinLeafSize
约束。
实施分割。
递归地重复两个子节点。
说明还需要另外两项:优化准则和停止规则的描述。
停止规则:停止分裂时,任何以下hold:
节点是纯。
对于分类,如果一个节点只包含一个类的观察值,那么它就是纯节点。
对于回归,如果该节点中观察到的响应的均方误差(MSE)低于整个数据中观察到的响应的均方误差(MSE)乘以每个节点对二次误差的容忍(QuadraticErrorTolerance
参数)。
少于MinParentSize
在此节点的观察。
这个节点上的任何分割都会产生小于的子节点MinLeafSize
观察。
该算法将MaxNumSplits
节点。
优化准则:
回归:均方误差(MSE)。选择一个分裂,以最小化MSE的预测相比,训练数据。
分类:三种措施之一,视情况而定SplitCriterion
名称-值对:
gdi的
(默认的基尼多样性指数)
“两个”
“异常”
有关详细信息,请参见ClassificationTree
更多关于。
有关可选的分割预测器选择技术,请参见选择分割预测器选择技术。
对于连续预报器,树可以在为该预报器找到的任意两个相邻的惟一值中间分割。为一个分类预测l级别,一个分类树需要考虑2l1-1分割来找到最优分割。或者,您可以选择启发式算法来找到一个好的分割,如中所述分类树中分类谓词的分裂。
对于双核及以上系统,fitctree
和fitrtree
使用英特尔并行化训练决策树®线程构建块(TBB)。有关Intel TBB的详细信息,请参阅https://software.intel.com/en-us/intel-tbb。
[1] Breiman, L., J. H. Friedman, R. A. Olshen和C. J. Stone。分类和回归树。佛罗里达:查普曼和霍尔出版社,1984年。
ClassificationTree
|RegressionTree
|fitctree
|fitrtree