[数据挖掘之scikit-learn] sklean.linear_model.LogisticRegression实例详解

概述

逻辑回归是一种分类方法,原理详见小瓜讲机器学习——分类算法(一)logistic regression(逻辑回归)算法原理详解

5.1 sklearn.linear_model.LogisticRegression
sklearn.linear_model.LogisticRegression(penalty='l2', dual=False, tol=0.0001, C=1.0, fit_intercept=True, intercept_scalling=1, class_weight=None, 
											random_state=None, solver='warn', max_iter=100, multi_class='warn', verbose=0, warm_start=False, 
											n_jobs=None, l1_ratio=None)

参数说明:
1.penalty:正则化策略,可选‘l1’和’l2’
2.dual:选择目标函数是原始形式还是对偶问题;
3.tol:迭代终止精度;
4.C:正则化系数;
5.fit_intercept:是否计算截距,如果False,训练过程会假设数据已经中心化了;
6.intercept_scalling
7.class_weight:训练样本中的各类别样本的权重系数
8.random_state:随机种子
9.solver:损失函数的迭代计算方法

  • ‘newton-cg’:使用牛顿法
  • ‘lbfgs’:使用L-BFGS拟牛顿法
  • ‘liblinear’:使用
  • ‘sag’:随机梯度下降法

10.max_iter:最大迭代次数
11.multi_class:多类别分类策略

  • ‘ovr’:采用one-vs-rest策略进行多分类
  • ‘multinomial’:直接采用多分类逻辑回归模型

12.verbose:是否输出训练过程
13.warm_start:是否使用前一次的训练结果继续训练
14.n_jobs:指定任务时的CPU数量
15.l1_ratio:

属性说明:

1.coef_:权重系数
2.intercept:截距
3.n_iter:实际迭代次数
4.classes_

5.2 LogisticRegression示例
import numpy as np
from sklearn import linear_model, datasets
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler

iris = datasets.load_iris()
feature_X = iris.data
label_Y = iris.target

train_subset, test_subset, train_label, test_label = train_test_split(feature_X, label_Y, test_size=0.3, random_state=0)

#标准化特征
sc = StandardScaler()
sc.fit(train_subset)

train_subset_std = sc.transform(train_subset)
test_subset_std = sc.transform(test_subset)

#训练模型
lgr = linear_model.LogisticRegression(C=2, penalty='l2')
lgr.fit(train_subset_std, train_label)

label_predict = lgr.predict(test_subset_std)
accuracy = lgr.score(test_subset_std, test_label)
print(accuracy)

结果输出

0.8666666666666667

即在验证集上的准确率为0.86666.。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

努力的骆驼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值