目录
小批量梯度下降法(Mini-batch Gradient Descent):每次迭代使用一小部分样本来计算梯度,并更新参数。这种方法是BGD和SGD的折中,既减少了计算量,又提高了收敛的稳定性。
线性回归的应用场景
线性回归因其简洁的数学模型和强大的预测能力,在多个领域有着广泛的应用。以下是一些主要的应用场景:
-
经济学:
- GDP与失业率关系分析:经济学家可以通过线性回归模型分析GDP增长与失业率之间的关系,了解经济增长对就业市场的影响,为政府制定经济政策提供参考。
- 物价与消费者支出关系:利用线性回归研究物价水平变化如何影响消费者的支出行为,有助于理解通货膨胀对消费市场的冲击。
-
市场营销:
- 广告投入与销售额关系:市场营销人员可以通过线性回归模型分析广告投入与销售额之间的线性关系,从而确定最佳的广告预算策略,以最大化销售效果。
- 产品价格与销量关系:线性回归还可以用于研究产品价格调整对销量的影响,帮助企业制定合理的定价策略。
-
医学研究:
- 药物剂量与治疗效果关系:医学研究人员可以利用线性回归模型评估不同药物剂量对患者治疗效果的影响,为制定个性化的治疗方案提供依据。
- 生活方式与健康指标关系:通过线性回归,可以分析生活方式因素(如饮食、运动等)与健康指标(如血压、血糖等)之间的关系,为公共卫生政策的制定提供数据支持。
-
教育评估:
- 学习时间与考试成绩关系:教育工作者可以通过线性回归模型研究学习时间与考试成绩之间的线性关系,了解学习投入对学业成绩的影响,从而制定更科学的教学计划。
- 教育投入与学生表现关系:线性回归还可以用于评估学校或政府对教育的投入如何影响学生的综合素质和表现。
-
人力资源管理:
- 员工培训时间与绩效关系:人力资源管理者可以利用线性回归模型分析员工培训时间与工作绩效之间的线性关系,以确定最有效的培训时长和方式。
- 工资与员工满意度关系:通过线性回归,可以研究工资水平对员工满意度的影响,帮助企业制定更具吸引力的薪酬政策。
-
预测与趋势分析:
- 销售预测:基于历史销售数据,利用线性回归模型可以预测未来的销售趋势,为企业制定市场策略提供数据支持。
- 金融市场分析:在金融领域,线性回归被广泛应用于股票价格预测、市场趋势分析等,帮助投资者做出更明智的投资决策。
线性回归定义和公式
- 定义:线性回归是通过最小化误差的平方和来寻找数据的最佳函数匹配。利用这种函数关系,可以根据一个或多个自变量来预测因变量的值。
- 公式:线性回归的通用公式可以表示为
y = w'x + b
,其中y
是因变量,x
是自变量(可以是多个自变量的向量),w
是回归系数(或称为权重),b
是截距项,w'x
表示w
和x
的点积(当x
是向量时)。在多元线性回归中,w
和x
都是向量,公式变为y = w_1x_1 + w_2x_2 + ... + w_nx_n + b
,其中n
是自变量的数量。
线性回归API:
线性回归API的初步使用主要涉及scikit-learn(sklearn)库中的LinearRegression
类。
一、导入库和数据准备
首先,需要导入必要的库,并准备数据。数据通常包括特征(自变量)和目标值(因变量)。
import numpy as np |
|
from sklearn.linear_model import LinearRegression |
二、创建线性回归模型
使用LinearRegression
类创建一个线性回归模型实例。
model = LinearRegression() |
三、训练模型
使用fit
方法对模型进行训练,传入特征矩阵X
和目标值向量y
。
model.fit(X, y) |
四、查看模型参数
训练完成后,可以通过模型的属性查看模型的参数,包括回归系数(斜率)和截距。
print('斜率:', model.coef_) # 回归系数 |
|
print('截距:', model.intercept_) # 截距 |
五、进行预测
使用训练好的模型对新数据进行预测。传入新的特征矩阵,模型将返回预测的目标值。
new_X = np.array([[3, 5]]) # 新的特征数据 |
|
predictions = model.predict(new_X) # 进行预测 |
|
print('预测结果:', predictions) |
整体代码演示:
from sklearn.linear_model import LinearRegression #1.获取数据 x =[[80,86], [82,80], [85,78], [90,90], [86,82], [82,90], [78,80], [92,94]] y=[84.2, 80.6, 80.1, 90, 83.2, 87.6, 79.4, 93.4] #2.模型训练 # 2.1 实例化一个估计器 estimator =LinearRegression( ) # 2.2 使用fit方法进行训练 estimator.fit(