详细内容或原文请订阅后点击阅览
超越直线:在 OLS、交互项和 Tweedie 回归之间进行选择
您是否应该坚持经典的普通最小二乘回归、引入交互项或转向 Tweedie 分布,完全取决于您的数据如何处理零和极端异常值的混乱现实。文章《超越直线:在 OLS、交互项和 Tweedie 回归之间进行选择》首先出现在《走向数据科学》上。
来源:走向数据科学一个机器学习模型,用于预测客户明年将在电子商务平台上花费多少钱。这项工作与往常一样是数据科学业务:加载数据、清理数据、理解数据并对结果进行建模。
我们想到的一个大问题:您从工具包中提取哪种算法?
对于回归模型,我认为我们倾向于默认使用 OLS 等经典方法,或者在其他时候,直接跳到 XGBoost 等复杂的集成方法。但根据经验,我发现广义线性框架通常正是您所需要的推理、速度和可解释性。
真正的挑战在于选择正确的口味。
选择错误的模型可能会导致模型输出不可能的预测,例如客户花费了负数的钱。
让我们分解这三种方法,以便您可以自信地为您的特定数据环境选择正确的工具。
数据集
本练习使用的数据集将是 French Motor 第三方责任索赔数据集,来自 R 包 CASDatasets,许可 GPL >2。
Christophe Dutang 和 Arthur Charpentier (2026).CASdatasets:保险数据集,R 包版本 1.2-1,DOI 10.57745/P0KHAG。
# 基础知识
将 pandas 导入为 pd
将 numpy 导入为 np# 数据可视化将 matplotlib.pyplot 导入为 plt将seaborn导入为snssns.set_style('darkgrid')将plotly.express导入为px# 统计数据将 statsmodels.api 导入为 sm将 statsmodels.formula.api 导入为 smf导入 scipy.stats 作为统计数据# 预处理和建模从 sklearn.linear_model 导入 TweedieRegressor从 feature_engine.encoding 导入 OneHotEncoder进口警告从 sklearn.metrics 导入mean_absolute_error进口警告warnings.filterwarnings('忽略')要获取数据集,您可以在本 sklearn 教程 [4] 中使用一个代码片段。例如,它会假设:
