Add comment of Decision tree

pull/2/head
benjas 5 years ago
parent e670c9a9b9
commit 588e865fb9

@ -74948,14 +74948,36 @@
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
"source": [ "source": [
"<img src=\"data/tree_small.png\" width=\"70%\">" "<img src=\"data/tree_small.png\" width=\"100%\">"
] ]
}, },
{ {
"cell_type": "code", "attachments": {},
"execution_count": null, "cell_type": "markdown",
"metadata": {},
"source": [
"把决策树看作是一系列“是/否”问题的最佳方式,如流程图。我们从顶部开始,叫做根,沿着树向下移动,移动方向由每个方程的答案决定。\n",
"\n",
"例如这里我们问的第一个问题是Site EUI是否小于或等于15.95如果答案是肯定的那么我们移到左边问一个问题Weather Normalized Site是否小于或等于3.85如果第一个问题的答案是否定的我们移到右边问一个问题Weather Normalized Site是否小于或等于26.85\n",
"\n",
"我们继续这个迭代过程,直到到达树的底部并最终成为叶子节点。这里,我们预测的值对应于节点中显示的值。\n",
"\n",
"\n",
"每个节点有四条不同的信息:\n",
"\n",
"1. question根据这个答案我们将向右或向左移动到树的下一层的下一个节点\n",
"2. friedman_mse给定节点中所有示例的错误度量\n",
"3. sample节点中的示例数\n",
"3. value节点中所有示例的目标预测\n",
"\n",
"我们可以看到随着树的深度增加我们将能够更好地拟合数据。对于一棵小树每个叶子节点中会有许多sample并且由于模型为节点中的每个sample估计相同的value因此可能会有较大的误差除非所有示例都具有相同的目标值。但是建造太大的树会导致过拟合。我们可以控制多个超参数这些参数决定树的深度和每个叶子中的sample数。在第二部分中当我们使用交叉验证进行优化时我们看到了如何选择这些超参数中的一些。\n",
"\n",
"虽然我们不能检查模型中的每一棵树,但只看一棵树确实能让我们了解我们的模型是如何做出预测的。事实上,这种基于流程图的方法看起来很像人类的决策方式,一次只回答一个关于单个值的问题。基于决策树的集成简单地采用单个决策树的思想,并结合多个个体的预测,以创建一个比单个估计器具有更小方差的模型。树木的组合往往是非常准确的,而且也是直观的解释!"
]
},
{
"cell_type": "markdown",
"metadata": {}, "metadata": {},
"outputs": [],
"source": [] "source": []
} }
], ],

Loading…
Cancel
Save