逻辑回归
什么是逻辑回归?
逻辑回归用于分类问题分出的不同的类别。它的目标是判断当前样本是属于哪一个组。得到的结论是属于概率性的描述。举一个简单的例子:
通过你的一些行为变量,判断你是属于男性还是属于女性。
工作原理
逻辑回归的工作原理和线性回归类似,也是根据自变量和因变量之间的关系,来预测它属于哪一类。
将得到的概率转化为二进制0-1,从而进行分类,分组。
与线性回归相比,逻辑回归的反应变量是离散的,而线性回归的反应变量是连续的。逻辑回归也可以用来分类。
步骤:
setp 1:数据预处理
导入必须的包,numpy ,matplotlib,pandas
导入数据,read_csv()
分割数据集 train_test_split()
特征缩放 StandardScaler()
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
dataset = pd.read_csv("Social_Network_Ads.csv")
X = dataset.iloc[:,[2,3]].values
y = dataset.iloc[:,4].values
from sklearn.model_selection import train_test_split
X_train,X_test,y_train,y_test = train_test_split(X,y,test_size=0.25,random_state=0)
from sklearn.preprocessing import StandardScaler
sc = StandardScaler()
X_train = sc.fit_transform(X_train)
X_test = sc.fit_transform(X_test)
setp 2:建立逻辑回归模型
导入包 从sklearn.linear_model 导入 LogisticRegression
逻辑回归模型初始化
LogisticRegression()
训练模型 fit()
from sklearn.linear_model import LogisticRegression
classifier = LogisticRegression()
classifier.fit(X_train,y_train)
setp 3:做预测
使用逻辑回归模型做预测 predict()
y_pred = classifier.predict(X_test)
setp 4:模型评估
当模型建立完成后,需要对模型做出评价,使用混淆矩阵做评价。
PS.什么是混淆矩阵?
将已知的每一类和预测的每一类个数做一个矩阵。
从sklearn.metrics导入 confusion_matrix方法
计算混淆矩阵
from sklearn.metrics import confusion_matrix
cm = confusion_matrix(y_test,y_pred)