sklearn调包侠之逻辑回归

算法原理

传送门:机器学习实战之Logistic回归

正则化

这里补充下正则化的知识。当一个模型太复杂时,就容易过拟合,解决的办法是减少输入特征的个数,或者获取更多的训练样本。正则化也是用来解决模型过拟合的一种方法。常用的有L1和L2范数做为正则化项。

  • L1范数 L1范数作为正则化项,会让模型参数θ稀疏话,就是让模型参数向量里为0的元素尽量多。L1就是在成本函数后加入:
  • L2范数 而L2范数作为正则化项,则是让模型参数尽量小,但不会为0,即尽量让每个特征对预测值都有一些小的贡献。L2就是在成本函数后加入:

实战——乳腺癌检测

数据导入

本次实战依旧是使用sklearn中的数据集,如图所示。

from sklearn.datasets import load_breast_cancer
cancer = load_breast_cancer()
print(cancer.DESCR)
切分数据集
X = cancer.data
y = cancer.target

from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=33)
模型训练与评估

逻辑回归算法使用sklearn.linear_model 模块中的LogisticRegression方法。常用的参数如下:

  • penalty:设置正则化项,其取值为'l1'或'l2',默认为'l2'。
  • C:正则化强度,C越大,权重越小。
from sklearn.linear_model import LogisticRegression

model = LogisticRegression()
model.fit(X_train, y_train)
model.score(X_test, y_test)

# result
# 0.94736842105263153

我们换为L1范数:

model2 = LogisticRegression(penalty='l1')
model2.fit(X_train, y_train)
model2.score(X_test, y_test)

# result
# 0.95614035087719296

这里查看模型的参数,发现确实有很多特征的参数为0。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏用户2442861的专栏

计算图像相似度——《Python也可以》之一

声明:本文最初发表于赖勇浩(恋花蝶)的博客http://blog.csdn.NET/lanphaday,如蒙转载,敬请确保全文完整,未经同意,不得用于商业用途。

1.3K2
来自专栏专知

【前沿】NIPS2017贝叶斯生成对抗网络TensorFlow实现(附GAN资料下载)

导读 今年五月份康奈尔大学的 Andrew Gordon Wilson 和 Permutation Venture 的 Yunus Saatchi 提出了一个贝...

4948
来自专栏云时之间

深度学习与神经网络:mnist数据集实现手写数字识别

对于mnist数据集,具体的一些介绍我这里就不搬运过来了,这里我直接说我们如何在TensorFlow上使用mnist数据集.

40311
来自专栏量子位

想尝试搭建图像识别系统?这里有一份TensorFlow速成教程

李林 编译整理 量子位 出品 | 公众号 QbitAI 从我们见到的各种图像识别软件来看,机器似乎能认出人脸、猫、狗、花草、各种汽车等等日常生活中出现的物体,但...

5457
来自专栏利炳根的专栏

学习笔记CB010:递归神经网络、LSTM、自动抓取字幕

递归神经网络(RNN),时间递归神经网络(recurrent neural network),结构递归神经网络(recursive neural network...

5914
来自专栏人工智能头条

YOLO升级到v3版,检测速度比R-CNN快1000倍

3.3K3
来自专栏用户2442861的专栏

文本分类(六):使用fastText对文本进行分类--小插曲

http://blog.csdn.net/lxg0807/article/details/52960072

3811
来自专栏素质云笔记

caffe︱ImageData层、DummyData层作为原始数据导入的应用

Part1:caffe的ImageData层 ImageData是一个图像输入层,该层的好处是,直接输入原始图像信息就可以导入分析。 在案例中利用Image...

76610
来自专栏新智元

猫狗大战识别准确率直冲 Kaggle Top 2%,手把手教你在 Keras 搭建深度 CNN

猫狗大战 数据集来自 kaggle 上的一个竞赛:Dogs vs. Cats,训练集有25000张,猫狗各占一半。测试集12500张,没有标定是猫还是狗。 ?...

8037
来自专栏PaddlePaddle

【目标检测】SSD目标检测

场景文字识别 目标检测任务的目标是给定一张图像或是视频帧,让计算机找出其中所有目标的位置,并给出每个目标的具体类别。对于人类来说,目标检测是一个非常简单的任务。...

5729

扫码关注云+社区

领取腾讯云代金券