可生成图片类型(推荐)
可生成数据表类型(推荐)
(→参数配置) |
|||
(未显示2个用户的8个中间版本) | |||
第7行: | 第7行: | ||
|productionstate={{图标文件|Win}} / {{图标文件|W10}} Win10及以上可用 | |productionstate={{图标文件|Win}} / {{图标文件|W10}} Win10及以上可用 | ||
|productionstatedesc=在[[Update:DecisionLinnc 1.0.0.8|V1.0]]部署 | |productionstatedesc=在[[Update:DecisionLinnc 1.0.0.8|V1.0]]部署 | ||
|nodeenglishname= | |nodeenglishname=Boosting_CatBoost | ||
|abbreviation= | |abbreviation=CatBoost | ||
|funcmaincategory=机器学习 | |funcmaincategory=机器学习 | ||
|funcsubcategory=[[DataML Lv1 Cat::分类训练器]] | |funcsubcategory=[[DataML Lv1 Cat::分类训练器]] | ||
第27行: | 第27行: | ||
|nextnode=[[Logistic分类器]] | |nextnode=[[Logistic分类器]] | ||
}} | }} | ||
==算法概述== | ==算法概述== | ||
CatBoost是Yandex开发的开源软件库。它提供了一个梯度增强框架,其中尝试使用与经典算法相比的排列驱动替代方案来解决分类特征<ref>Zhang, Yixiao; Zhao, Zhongguo; Zheng, Jianghua (2020). "CatBoost: A new approach for estimating daily reference crop evapotranspiration in arid and semi-arid regions of Northern China." ''Journal of Hydrology'' 588: 125087. Elsevier.</ref>。它适用于Linux、Windows、macOS,并且可用于 Python、R,并且使用 catboost 构建的模型可用于C++、Java、C#、Rust、Core ML中的预测、ONNX和PMML。源代码已根据Apache 许可证获得许可,并可在 GitHub 上获取。 | |||
==示例代码-CatBoost分类节点== | ==示例代码-CatBoost分类节点== | ||
第45行: | 第44行: | ||
) | ) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
如果想使用完全代码请参考:https://github.com/catboost/tutorials/ | 如果想使用完全代码请参考:https://github.com/catboost/tutorials/ | ||
拟合后,模型可以用于预测样本的类别,可以在[[通用预测模块]]实现内外部测试集的预测。 | 拟合后,模型可以用于预测样本的类别,可以在[[通用预测模块]]实现内外部测试集的预测。 | ||
第58行: | 第57行: | ||
===参数配置=== | ===参数配置=== | ||
* 设置随机数:控制模型的随机性。 | * 设置随机数:控制模型的随机性。 | ||
* | * 评估算法:训练中使用的指标。指定的值还决定了要解决的机器学习问题。可选Logloss, 交叉熵, Precision, Recall, F1, MCC。 | ||
* | * 树深:树的最大深度。 | ||
* 迭代次数:使用CatBoost解决机器学习问题时可以构建的最大迭代次数。 | |||
* | * 学习率:默认0.1。 | ||
* | |||
===注意事项=== | ===注意事项=== | ||
第74行: | 第69行: | ||
== 参考文献 == | == 参考文献 == | ||
{{reflist}} | {{reflist}} | ||
{{Navplate AlgorithmNodeList}} | {{Navplate AlgorithmNodeList}} | ||
[[Category:分类训练器]] | [[Category:分类训练器]] |
节点状态 | / Win10及以上可用
在V1.0部署
|
---|---|
CatBoost | |
节点开发者 | 决策链算法研发部 (Dev.Team-DPS) |
节点英文名 | Boosting_CatBoost |
功能主类别 | 机器学习 |
英文缩写 | CatBoost |
功能亚类别 | 分类训练器 |
节点类型 | 数据挖掘 |
开发语言 | Python |
节点简介 | |
CatBoost是一种基于梯度提升树的机器学习算法,由Yandex开发。它专门用于处理分类问题,并具有许多独特的特性和优势。 CatBoost旨在提供高性能、可扩展且易于使用的机器学习解决方案。 | |
端口数量与逻辑控制(PC) | |
Input-入口 | 2个 |
Output-出口 | 3个 |
Loop-支持循环 | 否 |
If/Switch-支持逻辑判断 | 否 |
输入输出 | |
相关节点 | |
上一节点 | XGBoost |
下一节点 | Logistic分类器 |
相关网站 |
CatBoost是Yandex开发的开源软件库。它提供了一个梯度增强框架,其中尝试使用与经典算法相比的排列驱动替代方案来解决分类特征[1]。它适用于Linux、Windows、macOS,并且可用于 Python、R,并且使用 catboost 构建的模型可用于C++、Java、C#、Rust、Core ML中的预测、ONNX和PMML。源代码已根据Apache 许可证获得许可,并可在 GitHub 上获取。
该节点使用Python编写,调用catboost包[2]。以下为示例代码:
from catboost import CatBoostClassifier
model = CatBoostClassifier(
iterations=15,
verbose=3
)
model.fit(
X_train, y_train,
cat_features=cat_features,
eval_set=(X_validation, y_validation),
)
如果想使用完全代码请参考:https://github.com/catboost/tutorials/
拟合后,模型可以用于预测样本的类别,可以在通用预测模块实现内外部测试集的预测。
查找其他类别的节点,请参考以下列表