0

我尝试使用 docker 版本使用 Driverless AI。当我尝试导入我的数据时,我在识别哪些数据是实数和分类变量时遇到了问题。

如何解决这个问题?

4

1 回答 1

1

DAI 文档常见问题解答中描述了分类和用户控制的处理。为了您的方便,我将在这里重新发布:

无人驾驶 AI 如何处理分类变量?如果整数列真的应该被视为分类列怎么办?

如果一列有字符串值,那么 Driverless AI 会将其视为分类特征。无人驾驶 AI 如何将分类变量转换为数字有多种方法。这些包括:

  • 一种热编码:为每个值创建虚拟变量
  • 频率编码:将类别替换为在数据中出现的频率
  • 目标编码:用平均目标值替换类别(包括防止过度拟合的额外步骤)
  • 证据权重:计算每个类别的证据权重 ( http://ucanalytics.com/blogs/information-value-and-weight-of-evidencebanking-case/ ) 无人驾驶 AI 将尝试多种方法来表示该列并确定哪些代表是最好的。

如果该列包含整数,Driverless AI 将尝试将该列视为分类列和数字列。如果唯一值的数量小于 50,它将把任何整数列视为分类和数字。

这可以在 config.toml 文件中配置:

# Whether to treat some numerical features as categorical
# For instance, sometimes an integer column may not represent a numerical feature but
# represent different numerical codes instead.
num_as_cat = true

# Max number of unique values for integer/real columns to be treated as categoricals (test applies to first statistical_threshold_data_size_small rows only)
max_int_as_cat_uniques = 50

(注:Driverless AI 还会使用 Benford 定律检查任何数值列的分布是否与典型数值数据的分布有显着差异。如果列分布不符合 Benford 定律,我们也会尝试将其视为分类,即使存在是 50 多个唯一值。)

于 2019-04-29T19:34:08.113 回答