逻辑回归笔记

逻辑回归是一种用于分类的算法,例如判断物品的好坏,疾病的良恶等都可以用逻辑回归来做。判断样品属于哪一类通常需要选择一个概率,例如大于0.5属于某一类,小于0.5属于另一类。

基于此,我们想到可以用指数函数,又为了使得概率在0-1之间,我们选择了sigmod函数:

p(y=1) = \frac{1}{e^{-\beta _{0}+\beta _{1}x_{1}+\beta {_{2}}x_{2}+...+\beta _{k}x_{k}}+1}

可能性比率为:

odd = \frac{p(y=1)}{1-p(y=1)}

则逻辑回归公式为:

odd =e^{\beta _{0}+\beta _{1}x_{1}+\beta {_{2}}x_{2}+...+\beta _{k}x_{k}}

\log_{e}odd =\beta _{0}+\beta _{1}x_{1}+\beta {_{2}}x_{2}+...+\beta _{k}x_{k}

接下来说一下算法过程:

(1)收集数据并筛选特征;

(2)构造逻辑回归方程;

(3)构造损失函数,利用梯度上升法求得损失最小的回归参数;

(4)模型检验:准确率,混淆矩阵等。

其中, 筛选特征方法有:

(1)向前引入

(2)向后剔除

(3)逐步回归

其中,法三最好。

sklearn库直接实现:(来自机器实战)

import numpy as np
from sklearn import datasets
from sklearn. 1inear_model import LogisticRegression from sklearn. metrics import confusion matrix
from sklearn.model_selection import train_test_split//导入数据并分为训练集和测试集
breast cancer =datasets. load breast_cancer()

x=breast_cancer ['data']
y=breast_cancer ['target']
X_train,X_test, y_train,y_test=
train_test_split(x,y,random_state=42)
//逻辑回归拟合
log_reg=LogisticRegression()
log_reg.fit(X_train,y_train)
//测试集效果检验,输出混淆矩阵
y_predict=log_reg.predict(X_test)
print(confusion_matrix(y_test,y_predict))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值