我有一个有趣的小问题:有一个lambda正则化参数xgboost。嗯..他们称之为.. lambda ..这在尝试实际使用该参数时提出了一个问题:
models["xgboost"] = XGBRegressor(lambda=Lambda,n_estimators=NTrees
learning_rate=LearningRate, max_depth=MaxDepth,
max_features=MaxFeatures,rate_drop=0, loss="huber",eta=Eta,
gamma=Gamma,subsample=Subsample,colsample_bytree=Colsample_bytree,
eval_metric=eval_metric)
Run Code Online (Sandbox Code Playgroud)
嗯..lambda是我们所知的python 关键字。所以我们还没有让编译器..高兴..
lambda=Lambda)
^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)
我研究了是否python支持转义变量名。因为它不受支持。那么..如何设置这个参数(不使用位置..)
您正在寻找的 XGBRegressor 参数是reg_lambda,因为您正在使用 xgboost 的scikit-learn API。
然后您可能想知道为什么xgb有一个名为 的参数lambda,它可以正常工作。原因是因为变量作用域是train方法的局部范围。
| 归档时间: |
|
| 查看次数: |
5880 次 |
| 最近记录: |