路德维希预处理
Ludwig preprocessing
我是 运行 模特 Ludwig。
数据集是Adult Census:
特征
workclass 几乎有 70% 的 Private 实例,Unknown (?) 可以用这个值来估算。
native_country,90% 的实例是美国,可用于估算未知 (?) 值。由于值分布更广,因此不能说职业列。
capital_gain 有 72% 的实例具有小于 50K 的零值和 19% 的实例具有大于 50K 的零值。
capital_loss 有 73% 的实例具有小于 50K 的零值和 21% 的实例具有大于 50K 的零值。
当我定义模型时,对于上述情况最好的方法是什么?
{
"name": "workclass",
"type": "category"
"preprocessing": {
"missing_value_strategy": "fill_with_mean"
}
},
{
"name": "native_country",
"type": "category"
"preprocessing": {
"missing_value_strategy": "fill_with_mean"
}
},
{
"name": "capital_gain",
"type": "numerical"
"preprocessing": {
"missing_value_strategy": "fill_with_mean",
}
},
{
"name": "capital_loss",
"type": "numerical"
"preprocessing": {
"missing_value_strategy": "fill_with_mean"
}
},
问题:
1) 类别特征如何定义:如果找到?,用X替换。
2) 对于数值特征如何定义:如果找到0,用均值代替?
Ludwig 目前正在考虑 CSV 文件中的缺失值,例如使用两个连续的逗号作为替换策略。在您的情况下,我建议通过替换零和 ?缺少值或取决于特征的类型。您可以在 pandas 中使用以下内容轻松完成此操作:
df[df.my_column == <value>].my_column = <new_value>
。
另一种方法是在您的代码中执行替换(例如用平均值替换 0),这样 Ludwig 就不必这样做,您可以完全控制替换策略。
我是 运行 模特 Ludwig。
数据集是Adult Census:
特征
workclass 几乎有 70% 的 Private 实例,Unknown (?) 可以用这个值来估算。
native_country,90% 的实例是美国,可用于估算未知 (?) 值。由于值分布更广,因此不能说职业列。
capital_gain 有 72% 的实例具有小于 50K 的零值和 19% 的实例具有大于 50K 的零值。
capital_loss 有 73% 的实例具有小于 50K 的零值和 21% 的实例具有大于 50K 的零值。
当我定义模型时,对于上述情况最好的方法是什么?
{
"name": "workclass",
"type": "category"
"preprocessing": {
"missing_value_strategy": "fill_with_mean"
}
},
{
"name": "native_country",
"type": "category"
"preprocessing": {
"missing_value_strategy": "fill_with_mean"
}
},
{
"name": "capital_gain",
"type": "numerical"
"preprocessing": {
"missing_value_strategy": "fill_with_mean",
}
},
{
"name": "capital_loss",
"type": "numerical"
"preprocessing": {
"missing_value_strategy": "fill_with_mean"
}
},
问题:
1) 类别特征如何定义:如果找到?,用X替换。
2) 对于数值特征如何定义:如果找到0,用均值代替?
Ludwig 目前正在考虑 CSV 文件中的缺失值,例如使用两个连续的逗号作为替换策略。在您的情况下,我建议通过替换零和 ?缺少值或取决于特征的类型。您可以在 pandas 中使用以下内容轻松完成此操作:
df[df.my_column == <value>].my_column = <new_value>
。
另一种方法是在您的代码中执行替换(例如用平均值替换 0),这样 Ludwig 就不必这样做,您可以完全控制替换策略。