提交 7b2a6730 编写于 作者: W wizardforcel

2020-12-15 21:40:04

上级 f8a12a5d
# 1
# 人工智能简介
# 1 人工智能简介
在本章中,我们将讨论**人工智能****AI**)的概念及其在现实世界中的应用。 我们在日常生活中花费了大量时间与智能系统进行交互。 这可以采取以下形式:在互联网上搜索某些内容,进行生物特征识别的面部识别或将口语单词转换为文本。 人工智能是这一切的核心,它正在成为我们现代生活方式的重要组成部分。 所有这些系统都是复杂的实际应用程序,而 AI 通过数学和算法解决了这些问题。 在整本书中,我们将学习可用于构建此类应用程序的基本原理。 我们的总体目标是使您能够应对日常生活中可能遇到的具有挑战性的新 AI 问题。
......@@ -134,7 +132,7 @@
**模拟器**:模拟器着重于发现示例之间相似之处的技术。 最著名的模拟器模型是 *K 最近邻*算法。
# 使用图灵测试定义情报
# 使用图灵测试定义智能
传说中的计算机科学家和数学家*阿兰·图灵*提出了图灵测试以提供智能的定义。 这是测试计算机是否可以学习模仿人类行为的测试。 他将聪明的行为定义为在对话中达到人类智能的能力。 这种表现应该足以诱使询问者认为答案来自人。
......@@ -173,7 +171,7 @@
认知建模用于各种 AI 应用程序,例如深度学习,专家系统,自然语言处理,机器人等。
# 建立理性代理
# 建立理性智能体
人工智能的许多研究都集中在构建理性主体上。 什么是理性代理? 在此之前,让我们在 AI 的上下文中定义*合理性*一词。 合理性是指遵守一组规则并遵循其逻辑含义以实现理想的结果。 这需要以使执行该操作的实体获得最大利益的方式执行。 因此,如果在给定的一组规则下采取行动以实现其目标,则该行动者被称为理性行动。 它只是根据可用信息感知并采取行动。 当将机器人发送到未知地形时,该系统在 AI 中被大量用于设计机器人。
......@@ -201,7 +199,7 @@
即使 GPS 只是通用的,它也只能解决明确定义的问题,例如证明几何和逻辑上的数学定理。 它还可以解决单词拼图和下棋。 原因是这些问题可以在合理范围内形式化。 但是在现实世界中,由于您可以采取多种可能的途径,因此这很快变得很棘手。 如果它试图通过计算图表中的步数来强行解决问题,则完全无法计算 。
## 解决 GPS 问题
## 使用 GPS 解决问题
让我们看看如何构造一个给定的问题以使用 GPS 解决它:
......@@ -232,7 +230,7 @@
今天存在许多机器学习的应用程序。 它用于图像识别,机器人技术,语音识别,预测股市行为等。 为了理解机器学习并构建完整的解决方案,您将必须熟悉来自不同领域的许多技术,例如模式识别,人工神经网络,数据挖掘, 统计等。 上。
## 型号类型
## 模型类型
AI 世界中有两种类型的模型:分析模型和学习模型。 在我们拥有可以计算的机器之前,人们曾经依靠分析模型。
......@@ -310,7 +308,7 @@ $ python3 --version
您应该看到已输出的版本号。
# 安装软件
# 安装包
在本书中,我们将使用各种软件包,例如 NumPy,SciPy,scikit-learn 和 matplotlib。 在继续之前,请确保安装这些软件包。
......@@ -323,7 +321,7 @@ $ python3 --version
如果您使用的是 Windows,则应该已安装 Python3 的`SciPy-stack`兼容版本。
# 正在加载数据
# 加载数据
为了构建学习模型,我们需要代表世界的数据。 现在我们已经安装了必要的 Python 软件包,让我们看看如何使用这些软件包与数据进行交互。 通过键入以下命令,输入 Python 命令提示符:
......
# 2
# 人工智能的基本用例
# 2 人工智能的基本用例
在本章中,我们将讨论**人工智能****AI**)的一些用例。 这绝不是详尽的清单。 许多行业已受到 AI 的影响,但尚未受影响的那些行业的清单每天都在缩短。 具有讽刺意味的是,机器人,自动化和 AI 无法接手的某些工作是薪水较低,需要较少“大脑”力量的工作。 例如,在我们能够代替发型师和水管工之前还需要一段时间。 这两项工作都需要机器人还需要掌握很多技巧和细节。 我知道,我的妻子要花很长时间才能将她的头发信任除当前发型师以外的任何人,更不用说机器人了。
......@@ -429,7 +427,7 @@ Deepfake 是术语“深度学习”和`fake`的混合。 这是一种合并视
最初在伦敦科幻电影节的 48 小时挑战赛上放映,并于 2016 年 6 月由技术新闻网站 Ars Technica 在线发布。
# 承和交易分析
# 承和交易分析
什么是承保? 简而言之,承保是过程,机构通过该过程确定机构是否要承担财务风险以换取保费。 需要承保的交易示例如下:
......
# 3
# 机器学习管道
# 3 机器学习管道
模型训练只是机器学习过程中的一小部分。 数据科学家经常花费大量时间来清理,转换和准备数据,以使其准备好供机器学习模型使用。 由于数据准备是一项非常耗时的活动,因此,我们将介绍最先进的技术来促进该活动以及其他组成良好设计的生产机器学习管道的组件。
......@@ -188,7 +186,7 @@
现在,让我们探讨数据准备的关键操作之一-数据清理。 我们需要确保数据是干净的。 数据将很可能不是完美的,并且数据质量将不会达到最佳。 数据可能由于以下原因而不合适:
## 缺
## 缺
我们的数据经常包含缺失值,或者缺失值被零或 N/A 代替。 我们该如何处理这个问题? 以下是处理缺失值的六种不同方法:
......@@ -204,7 +202,7 @@
识别重复项的解决方案是使用模糊匹配而不是精确匹配。 模糊匹配是一种计算机辅助技术,可对数据相似性进行评分。 它广泛用于执行模糊匹配。 讨论模糊匹配不在本书讨论范围之内,但对读者进一步研究该主题可能很有用。
## 功能缩放
## 特征缩放
数据集通常包含大小不等的特征。 要素大小的这种变化通常会对预测的准确性产生不利影响(但并非总是如此;例如,随机森林不需要要素缩放)。 许多机器学习算法使用数据点之间的欧几里得距离进行计算。 如果不进行此调整,则数量级高的要素将对结果产生过重的影响。
......@@ -215,7 +213,7 @@
* 标准化(Z 分数标准化)
* 缩放到单位长度
## 值不一致
## 不一致的值
数据可能经常包含不一致的值。 此外,数据可能以多种方式不一致。 数据不一致的一个示例是街道地址修饰符。 考虑以下数据点:
......@@ -232,7 +230,7 @@
有时,我们可能想考虑混合方法并同时使用这两种方法。 例如,一个人的身高应始终为正值。 因此,我们可以为此编写一条规则。 对于具有更多可变性的其他值,我们可以使用机器学习方法。
## 日期格式不一致
## 不一致的日期格式
* 11/1/2016
* 11/01/2016
......@@ -315,7 +313,7 @@
可以想象,这些特征使股票表现显着不同。 如果我们使用具有 30 年历史的数据来训练模型,则很可能无法使用当今的数据来执行模型。
### 营运表现
### 运营表现
最终,机器学习管道仍然是软件系统。 因此,监视资源消耗仍然很重要,包括:
......
# 4
# 特征选择和特征工程
# 4 特征选择和特征工程
特征选择(也称为变量选择,属性选择或变量子集选择)是一种用于从初始数据集中选择特征子集(变量,尺寸)的方法。 特征选择是构建机器学习模型过程中的关键步骤,并且可能对模型的性能产生巨大影响。 使用正确且相关的特征作为模型的输入还可以减少过拟合的机会,因为拥有更多相关的特征会减少模型使用不添加信号作为输入的嘈杂特征的机会。 最后,减少输入功能会减少训练模型所需的时间。 学习选择哪些功能是数据科学家开发的一项技能,通常仅来自数月和数年的经验,并且可以说是一门艺术,而不是一门科学。 功能选择很重要,因为它可以:
......@@ -21,7 +19,7 @@
* 了解特征工程的概念及其与特征选择的区别
* 了解手动特征工程和自动特征工程之间的区别。 什么时候适合使用每个?
# 功能选择
# 特征选择
在上一章的中,我们探讨了机器学习管道的组件。 管道的关键组成部分是确定哪些要素将用作模型的输入。 对于许多模型,一小部分输入变量提供了大部分的预测能力。 在大多数数据集中,由少数几个要素负责大部分信息信号是很常见的,而其余的要素则主要是噪声。
......@@ -64,7 +62,7 @@ Zestimate 算法的确切细节是专有的,但是我们可以做一些假设
* 单变量选择
* 具有热图的相关矩阵
## 功能重要性
## 特征重要性
可以使用此方法确定数据集每个特征的重要性。
......@@ -138,7 +136,7 @@ print(scores.nlargest(5,'score')) #print the 5 best features
图 2:最佳功能图
## 相关热图
## 相关热图
当特征的不同值之间存在关系时,两个特征之间存在相关性。 例如,如果房价随着平方英尺的增加而上涨,则这两个特征被认为是正相关的。 可能存在不同程度的相关性。 如果一个特征相对于另一个特征一致地改变,则这些特征被认为是高度相关的。
......@@ -179,7 +177,7 @@ g=sns.heatmap(data[top_corr_features].corr(),annot=True,cmap="RdYlGn")
存在更多形式化和较少的直观方法来自动选择特征。 存在许多这些方法,并且在 scikit-learn 软件包中实现了许多方法。 接下来提到对这些方法进行分类的一种方法。
### 基于包装的方法
### 基于包装的方法
使用包装器方法时,使用以下步骤可将特征选择的问题实质上减少为搜索问题:
......@@ -220,7 +218,7 @@ g=sns.heatmap(data[top_corr_features].corr(),annot=True,cmap="RdYlGn")
到此结束本章的第一部分。 您应该准备好应对自己的功能选择项目。 现在,准备好进入特征工程领域。 特征选择与我们如何减少变量数量以提高准确性有关。 特征工程则相反。 它问:我们如何创建新变量以使我们的模型更具性能?
# 功能工程
# 特征工程
根据最近在《福布斯》杂志上进行的调查,数据科学家将其 80% 的时间用于数据准备:
......@@ -441,7 +439,7 @@ print(data)
图 11:帽异常行输出
# 一键编码
# 单热编码
单热编码是机器学习中用于特征工程的一种常用技术。 一些机器学习算法无法处理分类特征,因此单热编码是一种将这些分类特征转换为数值特征的方法。 假设您有一个标记为“状态”的功能,该功能可以采用三个值(红色,绿色或黄色)之一。 由于这些值是分类的,因此不存在哪个值是*较高**较低*的概念。 我们可以将这些值转换为数值,从而赋予它们这种特性。 例如:
......@@ -508,7 +506,7 @@ print(data)
图 12:单热编码输出
# 对数
# 对数
对数转换(或对数转换)是常见的特征工程转换。 对数转换有助于展开高度偏斜的值。 应用对数转换后,数据分布将被标准化。
......
# 5
# 使用监督学习的分类和回归
# 5 使用监督学习的分类和回归
在本章中,我们将使用监督学习技术来学习数据的分类和回归。 在本章的最后,您将对这些主题有更好的理解:
......
# 6
# 集成学习的预测分析
# 6 集成学习的预测分析
在本章中,我们将学习集成学习以及如何将其用于预测分析。 在本章的最后,您将对这些主题有更好的理解:
* 决策树和决策树分类器
* 整体学习学习模型
* 集成学习学习模型
* 随机森林和极随机森林
* 预测的置信度估计
* 处理阶级失衡
......@@ -139,7 +137,7 @@ plt.show()
决策树是使用单个模型进行预测的示例。 通过组合和汇总多个模型的结果,有时可以创建更强大的模型和更好的预测。 一种方法是使用集成学习,这将在下一节中讨论。
# 什么是整体学习?
# 什么是集成学习?
**集成学习**涉及建立多个模型,然后以使其产生比模型单独产生的结果更好的方式组合它们。 这些单独的模型可以是分类器,回归器或其他模型。
......@@ -147,11 +145,11 @@ plt.show()
那么为什么要使用集成学习呢? 为了获得理解,让我们使用一个真实的例子。 您想购买的新电视,但您不知道最新的型号是什么。 您的目标是使钱物有所值,但您对此主题的知识不足,无法做出明智的决定。 当您必须做出类似决定时,您可能会得到该领域内多位专家的意见。 这将帮助您做出最佳决定。 通常,您可以不依靠一种意见,而可以结合这些专家的个人决定来做出决定。 这样做可最大程度地减少错误或次优决策的可能性。
## 建立具有整体学习的学习模型
## 使用集成学习建立学习模型
选择模型时,常用的程序是选择训练数据集上误差最小的模型。 这种方法的问题在于,它并不总是有效。 该模型可能会出现偏差或过拟合训练数据。 即使使用交叉验证来训练模型,它也可能在未知数据上表现不佳。
整体学习模型之所以有效,是因为它们降低了选择不良模型的总体风险。 这使它能够以多种方式训练,然后在未知数据上表现良好。 使用集成学习构建模型时,各个模型需要表现出一定的多样性。 这使他们能够捕获数据中的各种细微差别。 因此整体模型变得更加准确。
集成学习模型之所以有效,是因为它们降低了选择不良模型的总体风险。 这使它能够以多种方式训练,然后在未知数据上表现良好。 使用集成学习构建模型时,各个模型需要表现出一定的多样性。 这使他们能够捕获数据中的各种细微差别。 因此整体模型变得更加准确。
通过为每个模型使用不同的训练参数来实现多样性。 这允许各个模型为训练数据生成不同的决策边界。 这意味着每个模型将使用不同的规则进行推断,这是验证结果的有效方法。 如果模型之间存在一致性,则可以增加预测的可信度。
......@@ -161,13 +159,13 @@ plt.show()
**随机森林**是集成学习的实例,其中使用决策树构造单个模型。 然后,将这种决策树集合用于预测输出值。 我们使用训练数据的随机子集来构建每个决策树。
这将确保各种决策树之间的多样性。 在第一部分中,我们讨论了构建良好的整体学习模型时最重要的属性之一是确保各个模型之间存在多样性。
这将确保各种决策树之间的多样性。 在第一部分中,我们讨论了构建良好的集成学习模型时最重要的属性之一是确保各个模型之间存在多样性。
随机森林的优势之一是它们不会过拟合。 过拟合是机器学习中的常见问题。 非参数和非线性模型在学习目标函数时具有更大的灵活性,因此过拟合的可能性更大。 通过使用各种随机子集构建一组多样化的决策树,我们确保模型不会过拟合训练数据。 在树的构造过程中,将节点连续拆分,并选择最佳阈值以减小每个级别的熵。 此拆分未考虑输入数据集中的所有要素。 取而代之的是,它在考虑中的特征的随机子集中选择最佳分割。 添加此随机性往往会增加随机森林的偏差,但由于求平均值,方差会减小。 因此,我们最终得到了一个健壮的模型。
**极随机森林**将随机性提高到一个新水平。 除了采用特征的随机子集外,还随机选择阈值。 选择这些随机生成的阈值作为分割规则,这将进一步减小模型的方差。 因此,与使用随机森林获得的决策边界相比,使用极随机森林获得的决策边界趋于平滑。 极随机森林算法的某些实现还可以实现更好的并行化,并更好地扩展规模。
## 建立随机森林和极随机森林分类器
## 建立随机森林和极随机森林分类器
让我们看看如何可以基于随机森林和极其随机森林构建分类器。 构造两个分类器的方法非常相似,因此使用输入标志来指定需要构建哪个分类器。
......@@ -388,7 +386,7 @@ $ python3 random_forests.py --classifier-type erf
可以看出,输出由`t`与先前的结果组成。
# 处理班级失衡
# 处理类别失衡
分类器仅与用于训练的数据一样。 现实世界中面临的一个普遍问题是数据质量问题。 为了使分类器表现良好,每个分类器需要看到相等数量的点。 但是,当在现实世界中收集数据时,并不总是能够确保每个类都具有完全相同数量的数据点。 如果一个类别的数据点数是另一类别的 10 倍,则分类器倾向于偏向更多类别。 因此,我们需要确保考虑到这种不平衡算法。 让我们看看如何做到这一点。
......@@ -647,7 +645,7 @@ for metric in metrics:
这是用于召回的不同组合,使成为一体,因为精度和召回率是对和不同参数组合进行界定的不同指标。
# 计算相对特征重要性
# 计算特征相对重要性
在将与包含 N 维数据点的数据集一起使用时,必须理解,并非所有功能都同样重要。 有些比其他更具歧视性。 如果我们有此信息,则可以使用它来减少维数。 这对于降低复杂度和提高算法速度很有用。 有时,一些功能是完全多余的。 因此,可以轻松地将它们从数据集中删除。
......@@ -764,7 +762,7 @@ plt.show()
根据这一分析,特征`LSTAT`是该数据集中最重要的特征。
# 使用极为随机的森林回归器预测流量
# 使用极随机森林回归器预测流量
让我们将在上一节中学习的概念应用于一个实际问题。 [我们将使用可用数据集](https://archive.ics.uci.edu/ml/datasets/Dodgers+Loop+Sensor)。 该数据集包含对在洛杉矶道奇体育场(Lod Angeles Dodgers Stadium)进行的棒球比赛中道路上经过的车辆进行计数的数据。 为了使数据易于分析,我们需要对其进行预处理。 预处理后的数据在文件`traffic_data.txt`中。 在此文件中,每一行均包含逗号分隔的字符串。 让我们以第一行为例:
......@@ -879,7 +877,7 @@ print("Predicted traffic:", int(regressor.predict([test_datapoint_encoded])[0]))
在本章中,我们学习了集成学习及其在现实世界中的使用方式。 我们讨论了决策树以及如何基于决策树构建分类器。
我们了解了随机森林和极随机森林,它们是由多个决策树组成的。 我们讨论了如何基于它们构建分类器。 我们了解了如何估计预测的置信度。 我们还学习了如何处理班级失衡问题。
我们了解了随机森林和极随机森林,它们是由多个决策树组成的。 我们讨论了如何基于它们构建分类器。 我们了解了如何估计预测的置信度。 我们还学习了如何处理班级失衡问题。
我们讨论了如何找到最佳训练参数以使用网格搜索来构建模型。 我们学习了如何计算相对特征的重要性。 然后,我们将集成学习技术应用于一个实际问题,在该问题中,我们使用一个非常随机的森林回归量来预测流量。
......
# 7
# 通过无监督学习检测模式
# 7 通过无监督学习检测模式
在本章中,我们将学习无监督学习以及如何在现实世界中使用它。 到本章末,您将对以下主题有更好的理解:
......@@ -174,7 +172,7 @@ plt.show()
涵盖了 K 均值算法之后,我们现在将继续另一种方法:MeanShift 算法。
## 使用均值漂移算法估计聚类
## 使用均值漂移算法估计群集
**均值漂移**是用于无监督学习的功能强大的算法。 这是一种经常用于聚类的非参数算法。 它是非参数的,因为它不对基础分布进行任何假设。 这与参量技术形成对比,参量技术假定基础数据遵循标准概率分布。 MeanShift 在对象跟踪和实时数据分析等领域中找到了许多应用程序。
......
# 8
# 建筑推荐系统
# 8 构建推荐系统
在本章中,我们将学习如何建立一个推荐系统来推荐人们可能喜欢看的电影。 我们将了解 K 最近邻分类器,并了解如何实现它。 我们使用这些概念来讨论协同过滤,然后使用它来构建推荐系统。
......
# 9
# 逻辑编程
# 9 逻辑编程
在本章中,我们将学习如何使用逻辑编程编写程序。 我们将讨论各种编程范例,并查看如何使用逻辑编程构造程序。 我们将学习逻辑编程的组成部分,并了解如何解决这一领域的问题。 我们将实现 Python 程序来构建各种解决各种问题的求解器。
......@@ -123,7 +121,7 @@ $ pip3 install sympy
如果在`logpy`的安装过程中出现错误,则可以从[这个页面](https://github.com/logpy/logpy)的源代码安装它。 一旦成功安装了这些软件包,就可以继续进行下一部分的。
# 匹配数学表达式
# 匹配数学表达式
我们一直遇到数学运算。 逻辑编程是比较表达式并找出未知值的有效方法。 让我们看看如何做到这一点。
......@@ -272,7 +270,7 @@ List of first 7 prime numbers: (2, 3, 5, 7, 11, 13, 17)
您可以确认输出值正确。
# 解析
# 解析
现在,我们对逻辑编程有了更多的了解,让我们使用它来解决一个有趣的问题。 考虑以下族谱:
......
# 10
# 启发式搜索技术
# 10 启发式搜索技术
在本章中,我们将学习启发式搜索技术。 启发式搜索技术用于搜索解决方案空间以得出答案。 使用指导搜索算法的试探法进行搜索。 这种启发式算法可使算法加快处理速度,否则将需要很长时间才能得出解决方案。
......@@ -245,7 +243,7 @@ $ python3 greedy_search.py --input-string 'Artificial Intelligence with Python'
现在我们已经涵盖了一些流行的搜索技术,我们将继续使用这些搜索算法来解决一些实际问题。
# 解决约束问题
# 解决带约束的问题
我们已经讨论了如何制定 CSP。 让我们将应用于实际问题。 在此问题中,我们有一个名称列表,每个名称可以采用一组固定的值。 这些人之间还存在一系列需要满足的约束。 让我们来看看如何做。
......@@ -486,7 +484,7 @@ if __name__=='__main__':
您可以检查没有两个相邻的区域具有相同的颜色。
# 构建 8 难题求解器
# 构建 8 拼图求解器
8 拼图是 15 拼图的变体。 您可以在[这个页面](https://en.wikipedia.org/wiki/15_puzzle)上进行检查。 您将看到一个随机的网格,目标是将其恢复为原始的有序配置。 您可以在[这个页面](http://mypuzzle.org/sliding)上玩游戏以熟悉。
......
# 11
# 遗传算法和遗传编程
# 11 遗传算法和遗传编程
在本章中,我们将学习遗传算法。 首先,我们将描述什么是遗传算法,然后将讨论进化算法和遗传编程的概念,并了解它们与遗传算法的关系。 我们将学习遗传算法的基本构建模块,包括交叉,变异和适应度函数。 然后,我们将使用这些概念来构建各种系统。
......@@ -66,7 +64,7 @@
为了应用交叉和突变,我们需要选择标准。 *选择的概念*受自然选择理论的启发。 在每次迭代期间,GA 都会执行选择过程。 优胜劣汰的个体使用此选择过程进行选择,较弱的个体被终止。 优胜劣汰概念的生存就在这里发挥作用。 使用计算`i`个个体适应性的函数进行选择过程。
# 生成具有预定义参数的位模式
# 使用预定义参数生成位模式
现在我们知道了 GA 的基本概念,下面让我们看看如何使用它来解决一些问题。 我们将使用一个名为`DEAP`的 Python 包。 您可以在[这个页面](http://deap.readthedocs.io/en/master)中找到的所有详细信息。 让我们继续运行以下命令来安装它:
......@@ -349,7 +347,7 @@ if __name__ == "__main__":
如上图所示,进化过程在 60 代(零索引)之后结束。 完成后,将挑选最佳个体,并将其打印在输出中。 最佳个体中有 45 个,这是对的结果的确认,因为目标总和是评估函数中的`45`
# 可视化演变
# 可视化进化
让我们看看如何可视化演变过程。 在`DEAP`中,有一种称为**协方差矩阵适应演化策略****CMA-ES**)的方法可以可视化演化。 是一种进化算法,用于解决连续域中的非线性问题。 CMA-ES 技术是可靠的,经过充分研究的,并且在进化算法中被认为是“最新技术”。 通过深入研究源代码来看看它是如何工作的。 以下代码是`DEAP`库中显示的示例的微小变化。
......
......@@ -767,7 +767,7 @@ Ys = ocsvm.fit_predict(Xs)
Liu FT,Ting KM 和 Zhou Z 在文章《隔离森林》中提出了一种非常强大的异常检测方法。 它基于整体学习的总体框架。 由于该主题范围很广,并且主要涵盖在有监督的机器学习书籍中,因此,如果有必要,我们邀请读者检查建议的资源之一。 相反,在这种情况下,我们将在不非常强力引用所有基础理论的情况下描述模型。
Liu FT,Ting KM 和 Zhou Z 在文章《隔离森林》中提出了一种非常强大的异常检测方法。 它基于集成学习的总体框架。 由于该主题范围很广,并且主要涵盖在有监督的机器学习书籍中,因此,如果有必要,我们邀请读者检查建议的资源之一。 相反,在这种情况下,我们将在不非常强力引用所有基础理论的情况下描述模型。
首先,我们说森林是一组称为**决策树**的独立模型。 顾名思义,它们比算法更实用,是对数据集进行分区的一种实用方法。 从根开始,为每个节点选择一个特征和一个阈值,并将样本分为两个子集(非二叉树不是这样,但是通常,所有涉及的树都是这些模型都是二叉树),如下图所示:
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册