图6.2 支持向量与间隔
0
或1
输入: 训练集D={(X1,Y1) , (X2,Y2),.. . , (Xm, Ym)}
属性集A={a1, a2, ..., ad}
输出: 以node为根结点的决策树
TreeGenerate(D,A):
生成结点node;
if D 中样本金属于同一类别C then
将node 标记为C 类叶结点return #递归返回,情形(1)
end if
if A= 0 ORD 中样本在A上取值相同 then
将node 标记为叶结点,其类别标记为D 中样本数最多的类; return #递归返回,情形(2)
end if
从A中选择最优划分属性向_a
for _a_v in _a:
为node 生成一个分支; 令D_v 表示D 中在_a上取值为_a_v的样本子集;
if D_v为空 then
将分支结点标记为叶结点,其类别标记为D 中样本最多的类; return #递归返回,情形(3)
else
以TreeGenerate(D_v, A-{_a})为分支结点 #从A中去掉_a
end if
end for