gpt4 book ai didi

python - 如何在Python中创建一个易于解释的具有分类特征的回归模型?

转载 作者:行者123 更新时间:2023-11-30 09:18:39 24 4
gpt4 key购买 nike

我有一个如下所示的数据集,其中每一行都是一个用户。

gender   age_group c1  c2     c3    total_cost
F 0-10 10 F1234 3456 135.2
F 65-100 10 G5143 876 523.6
M 18-35 15 F3457 876 98.5
F 0-10 10 F1234 545 1052.1
M 35-65 20 G5143 3456 345.8

我需要提供一个模型/摘要,说明哪些因素会影响每个年龄组和性别组合的total_cost 的方差。这必须在 python 中完成,并且每个特征在每个模型中的贡献的可解释性是关键。

c1、c2 和 c3 是模型的特征,是分类的(不是数字),可以有大约 1000 个不同的类别。

我最初的想法是创建一个决策树,以使其更易于解释,但 DecisionTreeRegressor scikit 似乎不支持分类变量。 One-hot 编码可以工作,但由于某些功能可能有数千个类别,这似乎对可解释性没有任何帮助。

对于更易于解释的模型,我有哪些选择?另外,由于我需要为性别和年龄组的每种组合创建不同的模型,那么这样做的好方法是什么?最终模型应该能够针对给定的性别和年龄组自动选择合适的模型。

最佳答案

如果 one-hot-encoding 对可解释性没有帮助,可能是因为观察数量的类别太多,而某些类别可能很少出现。我知道这可能是不言而喻的,但它建议使用降维算法,例如 PCA。

使用 one-hot-encoding 转换您的 c1 功能(以及随后的所有其他功能)并运行 Multiple Correspondence Analysis 。它本质上是分类特征的 PCA。 Python 实现是here .

关于python - 如何在Python中创建一个易于解释的具有分类特征的回归模型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48223192/

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