浏览过网上的其他帖子,发现大多都是进行环境的配置,并没有对结果进行分析。故写此文(其他文章写过的内容,我就不赘述了)。
环境:Python 3.6
源代码:https://gitee.com/zhyantao/DeepLearning/tree/master/DecisionTree
使用工具Graphviz可视化决策树后,可以得到如下所示的一个PDF文件:
与之对应的CSV表格如下所示:
解析
- 对于①,可以发现在csv文件中,有4个age=middle_aged并且标记buy=1,故samples=4, value[不买=0,买=4]
- 对于②,除了上面的4个,还剩下10个,在这10个中,credit_rating=excellent的一共有5个,有3个买,剩下的2个不买。故②处的samples=3,value=[不买=0, 买=3]
注意:
- 信息熵(entropy)作为不确定性的度量,其值越大,代表不确定性越强。因此当entropy=0时,结果时一个确定的值。
- 对于决策树,通过 sklearn 自带的方法,确定了age作为根节点