Logistic Regression 是一种常用的分类算法,主要用于二分类问题。本教程将介绍 Logistic Regression 的基本概念、原理以及如何使用 Python 进行实现。

基本概念

Logistic Regression 试图找到一个数学模型,使得模型对于输入数据的预测概率与实际类别标签尽可能接近。

原理

Logistic Regression 的核心是一个称为 Sigmoid 函数的激活函数。Sigmoid 函数可以将输入数据映射到 0 和 1 之间的概率值。

$$ \sigma(z) = \frac{1}{1 + e^{-z}} $$

其中,$z$ 是输入数据的线性组合,$w$ 是权重,$b$ 是偏置。

Python 实现

以下是一个使用 Python 实现的 Logistic Regression 示例:

import numpy as np

def sigmoid(z):
    return 1 / (1 + np.exp(-z))

# 训练数据
X = np.array([[1, 2], [2, 3], [3, 4], [4, 5]])
y = np.array([0, 0, 1, 1])

# 初始化权重和偏置
w = np.zeros(X.shape[1])
b = 0

# 学习率
learning_rate = 0.01

# 迭代次数
iterations = 1000

for i in range(iterations):
    # 计算预测值
    z = np.dot(X, w) + b
    y_pred = sigmoid(z)
    
    # 计算梯度
    dw = (y - y_pred) * X
    db = (y - y_pred)
    
    # 更新权重和偏置
    w -= learning_rate * dw
    b -= learning_rate * db

# 打印结果
print("权重:", w)
print("偏置:", b)

扩展阅读

更多关于 Logistic Regression 的内容,可以参考以下链接:

图片展示

Logistic Regression