我正在使用sklearn随机回归,如Randomized Logistic Regression。由于随机Logistic回归使用L1惩罚,因此需要设置正则化参数C(或Lasso中的alpha)。sklearn随机回归的正则化参数设置
为了找到C的好价值,我通常使用如下所示的简单GridSearchCV。
但RandomizedLogisticRegression()不支持GridSearchCV,因为它包含引导。相反,我尝试在GridSearchCV中使用典型的LogisticRegression。
params = {'C':[0.1, 1, 10]}
logi = LogisticRegression(penalty='l1')
clf = GridSearchCV(logi, params, cv=10)
我可以通过这种方式得到C,但是,当我将此C值,以随机回归没有选择属性。也许由GridSearchCV选定的C很低。
所以,我想知道在使用随机化回归时是否有其他好方法来确定C(或alpha)的公平值。
之前有一个similar question,但我认为答案是典型的回归。
任何人都可以给我一个想法吗?
交叉验证如何? – Riyaz
不幸的是,使用LogisticRegressionCV()产生与GridSearchCV()类似的结果。最好的C值太小了,每个特征的系数都是0. – ToBeSpecific