线性回归中的梯度下降
线性回归的应用是一种用于找出和检查变量之间关系的有用技术。预测建模依赖于它,并将其用作许多机器学习技术的基石。机器学习需要大量的优化。它类似于改进模型以使其具有最佳性能。梯度下降,一种优化中的关键技术,此时进入画面。将其视为一个值得信赖的盟友,它将帮助我们浏览大量潜在的模型参数以找到最佳参数。
梯度下降允许我们通过沿着最陡下降方向稍微移动来迭代地更改这些参数,随着时间的推移最小化误差,并带来收敛。梯度下降是机器学习中的一项基本技术,因为它使我们能够有效地优化线性回归模型的性能。在这篇文章中,我们将仔细研究线性回归中的梯度下降。
理解线性回归
线性回归是一种重要的统计方法,用于模拟因变量和一个或多个自变量之间的关系。找到合适的直线来描述变量之间的关系,需要将线性方程拟合到预先存在的数据集中。一个简单的线性回归方程表示为
其中
因变量是 y。
自变量是 x。
y 截距(当 x 为 0 时 y 的值)是 β0
斜率(x 增加一个单位时 y 的变化)是 β1
随机误差由 ε 表示
线性回归的目标是最小化预测值()与实际值(y)之间的差异,通常称为成本、损失或误差。均方误差 (MSE) 是最常使用的目标函数,其定义如下。
其中,
观测值的总数是 n。
y 是因变量的实际值。
ŷ 是因变量的预测值。
理解梯度下降
梯度下降是一种强大的优化过程,用于迭代地最小化机器学习模型中的成本函数。它是一种广泛应用于各个领域的方法,包括线性回归。简而言之,梯度下降通过重复地沿成本函数最陡下降的方向修改模型参数,从而收敛到最佳解决方案。
梯度下降可以用以下数学公式表示
这里,模型参数由 θ 表示,学习率由 α 表示,成本函数相对于参数的梯度由 ▽J(θ) 表示,乘法运算由 * 表示。根据此公式更新参数时,模型越来越接近最小化成本函数的理想参数值。
在线性回归的背景下,找到最佳拟合线以最小化预测值和实际值之间的差距,关键取决于梯度下降。在线性回归中,均方误差 (MSE) 通常用作成本函数。梯度下降允许模型修改其预测,从而降低总体误差并提高回归线的精度。这是通过使用 MSE 的梯度迭代更新参数(斜率和截距)来实现的。
在线性回归中实现梯度下降
下面显示了一个使用梯度下降执行线性回归的功能性 Python 代码示例
import numpy as np import matplotlib.pyplot as plt # Generate sample data for demonstration np.random.seed(42) X = 2 * np.random.rand(100, 1) y = 4 + 3 * X + np.random.randn(100, 1) # Add bias term to X X_b = np.c_[np.ones((100, 1)), X] # Set hyperparameters learning_rate = 0.01 num_iterations = 1000 # Initialize parameters randomly theta = np.random.randn(2, 1) # Perform gradient descent for iteration in range(num_iterations): gradients = 2 / 100 * X_b.T.dot(X_b.dot(theta) - y) theta = theta - learning_rate * gradients # Print the final parameter values print("Intercept:", theta[0][0]) print("Slope:", theta[1][0]) # Plot the data points and the regression line plt.scatter(X, y) plt.plot(X, X_b.dot(theta), color='red') plt.xlabel('X') plt.ylabel('y') plt.title('Linear Regression with Gradient Descent') plt.show()
输出
Intercept: 4.158093763822134 Slope: 2.8204434017416244

我们首先生成一些示例数据。然后在输入矩阵 X 中包含偏差项以考虑线性回归方程中的截距。接下来设置梯度下降算法的学习率和迭代次数。在随机初始化 theta 参数后,通过迭代预定的迭代次数来执行梯度下降。在每次迭代中,我们使用均方误差损失函数计算梯度并相应地调整参数。最后,我们使用 Matplotlib 打印最终的截距和斜率值,并显示数据点和拟合的回归线。
Explore our latest online courses and learn new skills at your own pace. Enroll and become a certified expert to boost your career.
结论
线性回归的影响远远超出了预测建模的领域。线性回归通过揭示变量之间的相关性,使各行各业能够进行数据驱动的决策。在金融、经济、营销和医疗保健等行业中,组织可以使用线性回归来洞察消费者行为、优化资源分配、估计需求并做出明智的战略决策。