一、什么是逻辑回归?
逻辑回归并不是传统意义上的回归分析,而是一种用于处理二分类问题的线性模型。它通过计算样本属于某一类别的概率来进行分类,尽管名字中有“回归”二字,但它实际上是一种分类算法。简单来说,逻辑回归回答的是“这件事发生的可能性有多大”。
二、逻辑回归的基本原理
在讲原理之前,我们先来了解一下逻辑回归的数学基础。逻辑回归的核心是一个Logistic函数(或称为Sigmoid函数),它的公式如下:
[ g(z) = \frac{1}{1 + e^{-z}} ]
其中,( z = \beta_0 + \beta_1 x_1 + \beta_2 x_2 + … + \beta_n x_n ),( \beta )是回归系数,( x )是独立变量。
这个函数的特点是,当输入值趋向负无穷时,输出为0;当输入值趋向正无穷时,输出为1;当输入值为0时,输出为0.5。这种形状使得逻辑回归非常适合用于概率估计。
三、Python代码实现逻辑回归
接下来,让我们通过Python代码来实现一个简单的逻辑回归。我们将使用scikit-learn库,这是一个强大的机器学习库。
在导入必要的库之前,我们得检查自己python环境是否OK?
如果还没有安装的话,可以看我之前的文章:环境安装
1.导入必要的库
import numpy as np
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score, precision_score, recall_score, f1_score
import matplotlib.pyplot as plt
2.加载数据集
这里我们以著名的鸢尾花(Iris)数据集为例,它包含了150个样本和4个特征。
from sklearn.datasets import load_iris
data = load_iris()
X = data