【问题标题】:Convert Categorical Features (Enum) in H2o to Boolean将 H2o 中的分类特征(枚举)转换为布尔值
【发布时间】:2018-12-01 22:14:03
【问题描述】:

在我的 Pandas 数据框中,我有很多布尔功能 (True/False)。如果我使用df.dtypes,Pandas 会正确地将它们表示为bool。如果我将数据框传递给 h2o (h2o.H2OFrame(df)),则布尔特征表示为 enum。因此它们被解释为具有 2 个类别的分类特征。

有没有办法将特征类型从enum 更改为bool?在 Pandas 中我可以使用 df.astype('bool'),在 H2o 中是否有等价物?

一个想法是在将 df 转换为 H2o-Frame 之前将 True/False 编码为它们的数字表示 (1/0)。但 H2o 现在将其识别为 int64

提前感谢您的帮助!

【问题讨论】:

    标签: python pandas enums boolean h2o


    【解决方案1】:

    枚举类型用于具有两个或多个类别的分类变量。所以它包括布尔值。 IE。 H2O 中没有明显的 bool 类别,您无需在此处修复任何内容。

    顺便说一下,如果你有很多布尔特征,因为你手动完成了 one-hot 编码,不要这样做。而是给 H2O 原始(多级分类)数据,它会在需要时在幕后进行 one-hot 编码。这更好,因为对于决策树等算法,它们可以直接使用多级分类数据,因此效率更高。

    请参阅http://docs.h2o.ai/h2o/latest-stable/h2o-docs/data-science/algo-params/categorical_encoding.html 了解您可以尝试的一些替代方案。当生产中缺少该列时添加缺少的类别。

    (但是“当您尝试在训练期间未见的分类级别进行预测时会发生什么?”http://docs.h2o.ai/h2o/latest-stable/h2o-docs/data-science/deep-learning.html#faq 似乎没有描述您看到的行为?)

    另请参阅http://docs.h2o.ai/h2o/latest-stable/h2o-docs/data-science/algo-params/use_all_factor_levels.html(如果您希望它是真还是假,我无法从该描述中得出结论,因此请尝试两种方式!)

    更新:设置use_all_factor_levels = F,每个布尔输入只有一个输入神经元(加上 NA 一个),而不是两个。如果您的分类输入几乎都是布尔类型,我建议您设置它。如果您的分类输入大多具有很多级别,我不会(因为总的来说,它不会对输入神经元的数量产生太大影响,但它可能会使网络更容易训练)。

    为什么失踪(北美)?

    如果我有一个布尔输入,例如“isBig”,将为它创建 3 个输入神经元。如果你看varimp()你可以看到有名字:

    isBig.1
    isBig.0
    isBig.missing(NA) 
    

    假设您现在将其投入生产,并且用户没有为 isBig 输入提供值(或提供 NA,或提供非法值,例如“2”)。这是 NA 输入神经元被触发的时候,表示我们不知道它是否大。

    说实话,我认为这不会比同时激发 .0 和 .1 神经元,或者都不激发它们更有用。但是,如果您使用的是use_all_factor_levels=F,那么它有用的。否则,所有 NA 数据都会被视为“不大”而不是“可能很大或不大”。

    【讨论】:

    • 感谢您的回答。我只是想知道,因为我的 h2o 深度学习模型(单热编码)正在为 bool-Features 生成虚拟特征,并且还添加了一个“缺失”类别的特征,尽管我没有任何缺失值留在我的数据框中。我的想法是,这来自错误地将 bool 解释为枚举。为什么深度学习模型会为“缺失”类别添加特征?
    • 但是为没有任何缺失值的布尔特征添加了一个“缺失(NA)”类别。训练或测试数据中没有缺少该特征。为什么会这样?我只是想了解并清楚我的模型中到底有什么(以及为什么)特征。
    • @dnks23 我在答案中添加了几个部分。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-02
    • 1970-01-01
    相关资源
    最近更新 更多