{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
""
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 集成学习和随机森林方法"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"---"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### 介绍"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"本次实验介绍了集成学习的概念及主要方法,包括 Bootstraping、Bagging、随机森林,随后计算随机森林中各个特征的重要性,找出对模型贡献较大的特征。"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### 知识点"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"- 集成\n",
"- Bootstraping\n",
"- Bagging\n",
"- 随机森林\n",
"- 特征重要性"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"---"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 集成"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"之前的几个实验中,介绍了不同的分类算法,以及验证、评估模型的技术。现在,假设已经为某一特定问题选中了最佳的模型,想进一步提升其准确率,就需要应用一些更高级的机器学习技术:集成(Ensemble)。集成是使用一系列学习器进行学习,并使用某种规则把各个学习结果进行整合从而获得比单个学习器更好的学习效果的一种机器学习方法。在集成中,最终的整体输出比任何单个部分的表现更重要。"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"某种意义上,孔多塞陪审团定理形象的描述了上面提到的集成概念。该定理的内容为:如果评审团的每个成员做出独立判断,并且每个陪审员做出正确决策的概率高于 0.5,那么整个评审团做出正确的总体决策的概率随着陪审员数量的增加而增加,并趋向于一。另一方面,如果每个陪审员判断正确的概率小于 0.5,那么整个陪审团做出正确的总体决策的概率随着陪审员数量的增加而减少,并趋向于零。"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"该定理的公式为:"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"$$ \\mu = \\sum_{i=m}^{N}{N\\choose i}p^i(1-p)^{N-i} $$"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"其中,"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"- $N$ 为陪审员总数。\n",
"- $m$ 是构成多数的最小值,即 $m=\\operatorname{floor}(N / 2)+1$。\n",
"- $ {N \\choose i}$ 是组合数。\n",
"- $ p$ 为评审员做出正确决策的概率。\n",
"- $ \\mu$ 是整个评审团做出正确决策的概率。"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"由上式可知,若 $ p > 0.5$,则 $ \\mu > p$。此外,若 $ N \\rightarrow \\infty $,则 $ \\mu \\rightarrow 1$。"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"让我们看看另一个集成的例子:群体的智慧。1906 年,Francis Galton 访问了普利茅斯的一个农村集市,在那里他看到一个比赛。800 个参与者尝试估计一头屠宰的牛的重量。所有参与者的预测的平均值为 1197 磅,与牛的真实重量 1198 磅十分接近。"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"机器学习领域采用类似的思路以降低误差。"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Bootstrapping"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Leo Breiman 于 1994 年提出的 Bagging(又称 Bootstrap Aggregation,引导聚集)是最基本的集成技术之一。Bagging 基于统计学中的 Bootstraping(自助法),该方法令复杂模型的统计评估变得更加可行。"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Bootstrap 方法的流程如下:假设有尺寸为 N 的样本 X,从该样本中有放回地随机抽取 N 个样本,以创建一个新样本。换句话说,从尺寸为 N 的原样本中随机选择一个元素,并重复此过程 N 次。选中所有元素的可能性是一样的,因此每个元素被抽中的概率均为 $ \\frac{1}{N}$。"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"假设用 Bootstrap 方法从一个袋子中抽球,每次抽一个。在每一步中,将选中的球放回袋子,这样下一次抽取是等概率的,即,从同样数量的 N 个球中抽取。注意,因为我们把球放回了,新样本中可能有重复的球。把这个新样本称为 $ X_1$。重复这一过程 M 次,创建 M 个 Bootstrap 样本 $ X_1, \\dots, X_M$。最后,我们的样本数量就从原先的 1 个扩充到了 M 个,就有充足的样本来计算原始分布的多种统计数据。"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
""
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"看一个例子,这个例子使用之前的 telecom_churn 数据集。我们曾讨论过这一数据集的特征重要性,其中最重要的特征之一是呼叫客服次数(Customer service calls)。可视化「呼叫客服次数」这一特征,看看其分布。"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import warnings\n",
"\n",
"import numpy as np\n",
"import pandas as pd\n",
"import seaborn as sns\n",
"from matplotlib import pyplot as plt\n",
"\n",
"plt.style.use('ggplot')\n",
"plt.rcParams['figure.figsize'] = 10, 6\n",
"%matplotlib inline\n",
"warnings.filterwarnings('ignore')"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"