6.1 决策树算法概述

韩梅梅是某互联网公司的女码农,平时生活圈子很小,周围同事追求她的也不少,但是没有一个是她满意的,于是她开始在交友网站上发布个人信息。她把自己筛选约会对象的逻辑进行梳理,如图6-1所示。

决策树 表现了对象属性与对象值之间的一种映射关系。决策树中每个节点表示某个对象,而每个分叉路径则代表某个可能的属性值,而每个叶节点则对应从根节点到该叶节点所经历的路径所表示的对象值。数据挖掘中,决策树是一种经常要用到的技术,可以用于数据分类,同样也可以用于预测。

下面是个简单的例子:


>>> from sklearn import tree 
>>> X = [[0, 0], [1, 1]] 
>>> Y = [0, 1] 
>>> clf = tree.DecisionTreeClassifier() 
>>> clf = clf.fit(X, Y)

结果预测为:


>>> clf.predict([[2., 2.]]) array([1])

图6-1 韩梅梅约会男网友的决策树