我想确认DAI遵循类似的结构来处理在训练中未遇到的分类变量,如答案h2o DRF unseen categorical values handling所示。我在H2O无人驾驶AI文档中找不到它。
还请说明该链接的某些部分是否已过时(如答案中所述),以及如果发生的情况不同,将如何处理该链接。请注意h2o DAI的版本。谢谢!
最佳答案
编辑此信息现在在文档here中进行了详细说明
以下是当您尝试在训练期间未看到的分类级别上进行预测时的说明。取决于您使用的DAI的版本,您可能无法访问某些算法,但是在给定算法的情况下,详细信息应适用于您的DAI的版本。
XGBoost,LightGBM,RuleFit,TensorFlow,GLM
无人驾驶AI的功能工程流水线将为数据中存在的每个分类级别计算一个数值,无论它是否为先前看到的值。对于频率编码,看不见的电平将替换为0。对于目标编码,将使用目标值的全局平均值。等等。
和
FTRL
FTRL模型无法区分类别值和数字值。无论FTRL在训练期间是否看到特定值,它都会逐行将所有数据散列为数值,然后进行预测。由于您可以将FTRL看作是认真学习数据集中所有可能的值,因此无法保证它将对看不见的数据做出准确的预测。因此,重要的是要确保训练数据集具有唯一值方面的合理“重叠”,并具有用于进行预测的值。
由于DAI使用的算法不同于H2O-3(XGBoost除外),因此最好将它们视为单独的产品,对看不见的水平或缺失的值可能有不同的处理-尽管在某些情况下有相似之处。
如评论中所述,H2O-3的DRF文档现在应该是最新的。
希望这个解释有所帮助!