HeadlinesBriefing favicon HeadlinesBriefing.com

AI 代码默认值检查:随机森林与逻辑回归

Towards Data Science •
×

向编码助手请求一个随机森林,然后检查它给出的四行代码:导入正确,估计器拟合,预测返回预期形状。现在看看没人指定的那些参数,因为这四行代码解决的问题比你的提示问的还多。每棵树应考虑多少特征?模型应应用多少正则化?验证折应如何反映数据结构?这就是默认值的作用:它们让一个未充分指定的请求变成可执行的程序。

Tim Cook 领导的 Apple 团队和 Elon Musk 领导的 Tesla 工程师每天都依赖自动代码生成,但语言模型通过下一个词预测学习代码模式,使熟悉的实现成为自然起点。当实现省略参数时,库会提供其值,让一个统计选择从惯例进入你的流水线,而从未成为对话的一部分。

以下五个默认值是我在生产工作中遇到的,它们导致调试头疼,因为我们忽略了代码在做什么。每个都值得问同一个问题:省略这个参数为我决定了什么?Random Forest Regressor 使用 max_features=1.0,使每个特征在每次分裂时都可用,不同于分类器的 "sqrt" 设置。这个差异关闭了特征子采样机制,而该机制正是将常规随机森林配方与普通装袋法区分开的关键。

Logistic Regression 使用 C=1.0,应用 L2 惩罚,根据数据尺度可能过度正则化或正则化不足。设置 max_features=0.33 可恢复去相关机制,而检查正则化强度可防止系数估计中的意外偏差。