gpt4 book ai didi

python - Tensorflow 的决策森林如何处理分类数据?

转载 作者:行者123 更新时间:2023-12-05 04:19:38 25 4
gpt4 key购买 nike

我正在评估两种不同的无监督机器学习算法,隔离森林和 LSTM 自动编码器模型,以识别大型时间序列数据中的异常。该数据集主要包括分类数据,例如 Ip 地址、云订阅 ID、租户 ID、userAgent 和客户端应用程序 ID。

当读取 tutorial 时在 Tensorflow 的决策树 (TF-DF) 模型的实现中,它提到该模型 native 处理非标签分类值,并且

there is no need for preprocessing in the form of one-hot encoding, normalization or extra is_present feature.

有谁知道 Tensorflow 如何在幕后处理分类特征(假设他们做了一些转换成数字表示)?

最佳答案

Tl;dr:有一种在决策树/森林中使用分类特征的自然方式,不需要编码。 Tensorflow 决策森林使用这个和许多标准转换来处理分类特征。

Tensorflow 决策森林 (TF-DF) 构建决策树/决策森林模型。单个决策树沿其特征递归地拆分数据集。沿着分类特征的拆分可以自然地通过所谓的集合条件来执行。例如,一棵树可以表达类似 userAgents\in\{“Mozilla/5.0”, “InternetExplorer/10.0”\} 的条件。其他类型的条件是 also possible .如果数据集包含分类特征,Tensorflow 决策森林 (TF-DF) 可以构建集合条件。

更具体地说,Tensorflow Decision Forests 使用 C++ 库 Yggdrasil Decision Forests (YDF) 在引擎盖下进行任何高级计算。盐电报价three different algorithms用于找到良好的数据分类拆分。例如,Random 算法将随机尝试许多可能的分割并选择最佳分割。

出于性能和质量原因,YDF 还对分类特征进行了预处理:如果分类值非常罕见,YDF 可能会将其视为“不在字典中”,“罕见”的阈值为 user-configurable .此外,YDF 通过降低项目频率将分类特征映射到整数,并将映射存储为模型的一部分。请注意,这纯粹是一种内部编码;算法知道特征是分类的,因此整数编码的典型问题不适用。

最后,Tensorflow 决策森林 (TF-DF) 使用 Keras,它期望分类任务具有整数标签。因此,TF-DF 用户必须自己对标签进行编码或使用内置的 pd_dataframe_to_tf_dataset .

请注意,此答案仅适用于 Tensorflow 决策森林。 Tensorflow 的其他部分可能需要手动编码。

关于python - Tensorflow 的决策森林如何处理分类数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74744899/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com