sklearn.linear_model.LogisticRegression 参数

 

class sklearn.linear_model.LogisticRegression(penalty=’l2’, dual=False, tol=0.0001, C=1.0, fit_intercept=True, intercept_scaling=1, class_weight=None, random_state=None, solver=’liblinear’, max_iter=100, multi_class=’ovr’, verbose=0, warm_start=False, n_jobs=1)

penalty :str ‘l1’或‘l2’,默认是‘l2’;penalty参数的选择会影响我们损失函数优化算法的选择。即参数solver的选择,如果是L2正则化,那么4种可选的算法{‘newton-cg’, ‘lbfgs’, ‘liblinear’, ‘sag’}都可以选择。但是如果penalty是L1正则化的话,就只能选择‘liblinear’了。

{‘newton-cg’, ‘lbfgs’, ‘sag’} 对于高维数据收敛得更快,并且这些solver的multi_class选择multinomial会比选择默认的one-vs-rest表现的更好。 当样本集和特征集都很大的时候,‘sag’会更快。综合来说,‘sag’常常是最好的选择。

dual : bool,默认False;通常样本数量大于特征数量都选false。

tol : float,默认1e-4;判断迭代收敛的阈值。

C : float,默认1.0;正则化参数,必须是正数,取值越小,正则化越强。

fit_intercept : bool,默认True;描述 decision function 是否需要常数b。

intercept_scaling : float,默认1;只有当 solver = ‘liblinear’ 时才有用。

class_weight : dict or ‘balanced’,默认None;类别权重参数,如果默认,就给每个类别相同权重1;‘balanced’ 参数是让他自动调节权重,样本量越多权重越低,样本量越少权重越高。

random_state : int, RandomState instance or None, optional, 默认None;随机数生成器的指定。

solver : {‘newton-cg’, ‘lbfgs’, ‘liblinear’, ‘sag’, ‘saga’};损失函数的优化算法选择。

max_iter : int, 默认100;指定最大迭代次数。

multi_class : str, {‘ovr’, ‘multinomial’}, 默认 ‘ovr’;分类方式的选择。

warm_start : bool, 默认False;设置true就利用上一次的训练结果继续训练,false就从头开始;对于solver = ‘liblinear’ 没什么用

n_jobs : int, 默认1;指定CPU数量,如果赋值-1,就用上所有CPU。

你可能感兴趣的:(机器学习)