经典机器学习算法:线性回归与逻辑回归

1. 线性回归(Linear Regression)

1.1 基本概念

线性回归是一种用于预测连续值的监督学习算法,通过拟合输入特征与目标值之间的线性关系来进行预测。

1.2 数学模型

给定输入特征X=[x1,x2,...,xn]X = [x_1, x_2, ..., x_n]X=[x1,x2,...,xn],线性回归模型表示为:
y=w1x1+w2x2+...+wnxn+b y = w_1 x_1 + w_2 x_2 + ... + w_n x_n + b y=w1x1+w2x2+...+wnxn+b
其中:

  • yyy为预测值
  • wiw_iwi为权重
  • bbb为偏置项

1.3 目标函数

线性回归的目标是最小化预测值与真实值之间的均方误差(MSE):
L(w,b)=1m∑i=1m(y(i)−y^(i))2 L(w, b) = \frac{1}{m} \sum_{i=1}^m (y^{(i)} - \hat{y}^{(i)})^2 L(w,b)=m1i=1m(y(i)y^(i))2
其中:

  • mmm为样本数量
  • y(i)y^{(i)}y(i)为真实值
  • y^(i)\hat{y}^{(i)}y^(i)为预测值

1.4 优化方法

通过梯度下降法更新参数:

  1. 计算梯度
    ∂L∂wj=2m∑i=1m(y(i)−y^(i))xj(i) \frac{\partial L}{\partial w_j} = \frac{2}{m} \sum_{i=1}^m (y^{(i)} - \hat{y}^{(i)}) x_j^{(i)} wjL=m2i=1m(y(i)y^(i))xj(i)
    ∂L∂b=2m∑i=1m(y(i)−y^(i)) \frac{\partial L}{\partial b} = \frac{2}{m} \sum_{i=1}^m (y^{(i)} - \hat{y}^{(i)}) bL=m2i=1m(y(i)y^(i))
  2. 更新参数
    wj=wj−η∂L∂wj w_j = w_j - \eta \frac{\partial L}{\partial w_j} wj=wjηwjL
    b=b−η∂L∂b b = b - \eta \frac{\partial L}{\partial b} b=bηbL

2. 逻辑回归(Logistic Regression)

2.1 基本概念

逻辑回归是一种用于分类任务的监督学习算法,通过拟合输入特征与目标类别之间的概率关系来进行分类。

2.2 数学模型

给定输入特征X=[x1,x2,...,xn]X = [x_1, x_2, ..., x_n]X=[x1,x2,...,xn],逻辑回归模型表示为:
p(y=1∣X)=σ(w1x1+w2x2+...+wnxn+b) p(y=1 | X) = \sigma(w_1 x_1 + w_2 x_2 + ... + w_n x_n + b) p(y=1∣X)=σ(w1x1+w2x2+...+wnxn+b)
其中:

  • σ\sigmaσ为sigmoid函数:
    σ(z)=11+e−z \sigma(z) = \frac{1}{1 + e^{-z}} σ(z)=1+ez1
  • p(y=1∣X)p(y=1 | X)p(y=1∣X)为输入XXX属于类别1的概率

2.3 目标函数

逻辑回归的目标是最小化交叉熵损失函数:
L(w,b)=−1m∑i=1m[y(i)log⁡(y^(i))+(1−y(i))log⁡(1−y^(i))] L(w, b) = -\frac{1}{m} \sum_{i=1}^m [y^{(i)} \log(\hat{y}^{(i)}) + (1 - y^{(i)}) \log(1 - \hat{y}^{(i)})] L(w,b)=m1i=1m[y(i)log(y^(i))+(1y(i))log(1y^(i))]
其中:

  • mmm为样本数量
  • y(i)y^{(i)}y(i)为真实类别(0或1)
  • y^(i)\hat{y}^{(i)}y^(i)为预测概率

2.4 优化方法

通过梯度下降法更新参数:

  1. 计算梯度
    ∂L∂wj=1m∑i=1m(y^(i)−y(i))xj(i) \frac{\partial L}{\partial w_j} = \frac{1}{m} \sum_{i=1}^m (\hat{y}^{(i)} - y^{(i)}) x_j^{(i)} wjL=m1i=1m(y^(i)y(i))xj(i)
    ∂L∂b=1m∑i=1m(y^(i)−y(i)) \frac{\partial L}{\partial b} = \frac{1}{m} \sum_{i=1}^m (\hat{y}^{(i)} - y^{(i)}) bL=m1i=1m(y^(i)y(i))
  2. 更新参数
    wj=wj−η∂L∂wj w_j = w_j - \eta \frac{\partial L}{\partial w_j} wj=wjηwjL
    b=b−η∂L∂b b = b - \eta \frac{\partial L}{\partial b} b=bηbL

实现(欠)


总结

线性回归用于预测连续值,通过最小化均方误差来拟合数据。

逻辑回归用于分类任务,通过最小化交叉熵损失来拟合数据。

两者都通过梯度下降法优化参数,是机器学习中最基础且重要的算法。

Logo

脑启社区是一个专注类脑智能领域的开发者社区。欢迎加入社区,共建类脑智能生态。社区为开发者提供了丰富的开源类脑工具软件、类脑算法模型及数据集、类脑知识库、类脑技术培训课程以及类脑应用案例等资源。

更多推荐