可生成图片类型(推荐)
可生成数据表类型(推荐)
Zeroclanzhang(讨论 | 贡献) 无编辑摘要 |
|||
(未显示2个用户的17个中间版本) | |||
第5行: | 第5行: | ||
|simpleicon=Decision Tree_Pure.svg | |simpleicon=Decision Tree_Pure.svg | ||
|developer=Dev.Team-DPS | |developer=Dev.Team-DPS | ||
|productionstate= | |productionstate={{图标文件|Win}} / {{图标文件|W10}} Win10及以上可用 | ||
|productionstatedesc=在[[DecisionLinnc | V1.0]]部署 | |productionstatedesc=在[[Update:DecisionLinnc 1.0.0.8|V1.0]]部署 | ||
|nodeenglishname= | |nodeenglishname=Decision Tree | ||
|abbreviation= | |abbreviation=DT | ||
|funcmaincategory=机器学习 | |funcmaincategory=机器学习 | ||
|funcsubcategory=[[DataML Lv1 Cat::分类训练器]] | |funcsubcategory=[[DataML Lv1 Cat::分类训练器]] | ||
第20行: | 第20行: | ||
|nodeavailableplotlist=nodenoplotoutput | |nodeavailableplotlist=nodenoplotoutput | ||
|nodeavailabletablelist=Table_For_Downstream | |nodeavailabletablelist=Table_For_Downstream | ||
|nodeconfiguration=VariableList; | |nodeconfiguration=VariableList;DropMenu;Text | ||
|nodeinputports=WorkFlow-Control ➤;Transfer-Table ■ | |nodeinputports=WorkFlow-Control ➤;Transfer-Table ■ | ||
|nodeoutputports=WorkFlow-Control ➤;Transfer-Model ▶;Transfer-Table ■ | |nodeoutputports=WorkFlow-Control ➤;Transfer-Model ▶;Transfer-Table ■ | ||
|statsapewikiurl=https://wiki.statsape.com/决策树 | |statsapewikiurl=https://wiki.statsape.com/决策树 | ||
|previousnode=[[ | |previousnode=[[采样方法]] | ||
|nextnode=[[支持向量机]] | |nextnode=[[支持向量机]] | ||
}} | }} | ||
==算法概述== | ==算法概述== | ||
决策树通常用于运筹学,特别是决策分析,以帮助确定最有可能达到目标的策略,但也是机器学习中的一种流行工具<ref>{{cite journal |author=De Ville, Barry |title=Decision trees |journal=Wiley Interdisciplinary Reviews: Computational Statistics |volume=5 |number=6 |pages=448--455 |year=2013 |publisher=Wiley Online Library }}</ref>。机器学习中的决策树是一种用于分类和回归的非参数监督学习方法。目标是创建一个模型,通过学习从数据特征推断出的简单决策规则来预测目标变量的值。树可以看作是分段常数近似。 | 决策树通常用于运筹学,特别是决策分析,以帮助确定最有可能达到目标的策略,但也是机器学习中的一种流行工具<ref>{{cite journal |author=De Ville, Barry |title=Decision trees |journal=Wiley Interdisciplinary Reviews: Computational Statistics |volume=5 |number=6 |pages=448--455 |year=2013 |publisher=Wiley Online Library }}</ref>。机器学习中的决策树是一种用于分类和回归的非参数监督学习方法。目标是创建一个模型,通过学习从数据特征推断出的简单决策规则来预测目标变量的值。树可以看作是分段常数近似。 | ||
第52行: | 第50行: | ||
该节点使用Python编写,调用scikit-learn包<ref>{{cite journal |author=Kramer, Oliver |title=Scikit-learn |journal=Machine learning for evolution strategies |pages=45--53 |year=2016 |publisher=Springer }}</ref>。以下为示例代码: | 该节点使用Python编写,调用scikit-learn包<ref>{{cite journal |author=Kramer, Oliver |title=Scikit-learn |journal=Machine learning for evolution strategies |pages=45--53 |year=2016 |publisher=Springer }}</ref>。以下为示例代码: | ||
<syntaxhighlight lang="Python"> | <syntaxhighlight lang="Python"> | ||
from sklearn import tree | |||
X = [[0, 0], [1, 1]] | |||
Y = [0, 1] | |||
clf = tree.DecisionTreeClassifier() | clf = tree.DecisionTreeClassifier() | ||
clf = clf.fit(X, Y) | clf = clf.fit(X, Y) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==节点使用指南== | 拟合后,模型可以用于预测样本的类别,可以在[[通用预测模块]]实现内外部测试集的预测。 | ||
=='''节点使用指南'''== | |||
* 最适用的场景:决策树可用于解决分类问题,其中目标是将数据分为不同的类别或预测数据的类别。 | |||
* 处理的数据类型:结局变量为二分类,特征变量大多数为连续型的变量。 | |||
===变量配置=== | |||
* 选择特征变量:作为特征进行学习的变量(X),多选。 | |||
* 选择目标变量:作为结局的二分类变量(y),单选。 | |||
===参数配置=== | |||
* 设置随机数:控制模型的随机性。 | |||
* 拆分策略:用于在每个节点选择分裂的策略,包含最佳分割和随机分割。 | |||
* 损失函数算法选择:衡量分割质量的函数。支持的标准为 | |||
** 'gini':基尼纯度(Gini impurity), | |||
** 'log_loss', | |||
** 'entropy':信息熵。 | |||
* 最大深度:树的最大深度。如果没有,则扩展节点,直到所有叶子都是纯的或直到所有叶子包含少于"最小拆分样本数"的样本。 | |||
* 最小拆分样本数:分裂内部节点所需的最小样本数。 | |||
* 叶节点最小样本数:叶节点所需的最小样本数。该参数仅当任何深度的分割点在左右分支中至少留下训练样本时,才会被考虑。这可能具有使模型平滑的效果,尤其是在回归中。 | |||
* 最大特征数:寻找最佳分割时要考虑的特征数量。 | |||
* 最大叶节点数:以最佳优先的方式种植一棵树。最佳节点定义为杂质的相对减少。如果没有,则叶节点数量不受限制。 | |||
* 最小不纯度衰减阈值:如果分裂导致杂质减少大于或等于该值,则节点将被分裂。 | |||
===注意事项=== | |||
* 不支持带空值运算,用[[多重插补]]或[[插补空值]]进行插补, | |||
* 节点不出图, | |||
* 导入该节点的数据端口为训练数据集,导入前注意转换。 | |||
== 参考文献 == | == 参考文献 == | ||
{{reflist}} | {{reflist}} | ||
{{Navplate AlgorithmNodeList}} | {{Navplate AlgorithmNodeList}} | ||
[[Category:分类训练器]] | [[Category:分类训练器]] |
节点状态 | / Win10及以上可用
在V1.0部署
|
---|---|
决策树 | |
节点开发者 | 决策链算法研发部 (Dev.Team-DPS) |
节点英文名 | Decision Tree |
功能主类别 | 机器学习 |
英文缩写 | DT |
功能亚类别 | 分类训练器 |
节点类型 | 数据挖掘 |
开发语言 | Python |
节点简介 | |
决策树算法是一种基于树结构的有监督机器学习算法,用于解决分类和回归问题。它基于一系列的决策规则来学习和预测数据的目标变量。 决策树通过对特征进行逐步分割来构建树结构,每个内部节点表示一个特征,每个叶节点表示一个预测类别或数值。 | |
端口数量与逻辑控制(PC) | |
Input-入口 | 2个 |
Output-出口 | 3个 |
Loop-支持循环 | 否 |
If/Switch-支持逻辑判断 | 否 |
输入输出 | |
相关节点 | |
上一节点 | 采样方法 |
下一节点 | 支持向量机 |
相关网站 |
决策树通常用于运筹学,特别是决策分析,以帮助确定最有可能达到目标的策略,但也是机器学习中的一种流行工具[1]。机器学习中的决策树是一种用于分类和回归的非参数监督学习方法。目标是创建一个模型,通过学习从数据特征推断出的简单决策规则来预测目标变量的值。树可以看作是分段常数近似。
决策树的一些优点是:
决策树的缺点包括:
该节点使用Python编写,调用scikit-learn包[2]。以下为示例代码:
from sklearn import tree
X = [[0, 0], [1, 1]]
Y = [0, 1]
clf = tree.DecisionTreeClassifier()
clf = clf.fit(X, Y)
拟合后,模型可以用于预测样本的类别,可以在通用预测模块实现内外部测试集的预测。
查找其他类别的节点,请参考以下列表