仅针对用户定义的一些特征进行平滑
作者: m-maggi创建于 2025年8月7日更新于 2026年5月13日
标签enhancement
你好,感谢您提供的优秀包。我想只将 `smoothing_rounds` 参数用于模型的一部分特征,其余变量的 `smooting_rounds` 应为 0。这是因为我知道哪些特征是平滑的,哪些特征我想要以"不平滑"的方式建模。我查看了这里的示例 https://interpret.ml/docs/Python/examples/interpretable-regression-synthetic.html 和这里的示例 https://interpret.ml/docs/Python/examples/custom-interactions.html。 目前,我正在合并两个模型,一个模型中我排除了所有非平滑特征,另一个模型中我排除了所有平滑特征(我使用 `exclude` 参数来实现此操作)。我遵循了"自定义交互"示例中的步骤,调整了二元分组权重/缩放/添加截距。我不太了解这些算法: 所描述的模型合并是否足够,还是需要一个迭代过程,其中 mod_smooth 和 mod_non_smooth 每次都使用 1 次 boosting 训练,并使用 `init_score` 使用之前迭代的值进行拟合? 使用这种过程,平滑模型和非平滑模型都会不断更新,而不是只训练一个模型,然后再使用 `init_score` 来训练第二个模型。
内容来源: interpretml/interpret