数据挖掘——线性回归

1. 线性回归

某班主任为了了解本班同学的数学和其他科目考试成绩间关系,在某次阶段性测试中,他在全班学生中随机抽取1个容量为5的样本进行分析。该样本中5位同学的数学和其他科目成绩对应如下表:

学生编号

1

2

3

4

5

数学分数m

89

91

93

95

97

物理分数p

87

89

89

92

93

语文分数c

72

76

74

71

76

英语分数e

83

88

82

91

89

化学分数ch

90

93

91

89

94

利用以上数据,建立m与其他变量的多元线性回归方程,并回答下列问题:

(1) 在线性回归中,利用梯度下降法,令参数向量初始值全为,学习率1,算出经过第一次迭代后的参数向量

(2) 讨论(1)中所算出的是否可以使线性回归中的代价函数下降,即

(3) 讨论是否可以选取更佳的学习率经过第一次迭代后,使代价函数下降得更快;

(4) 利用标准方程求出最优的多元线性回归方程(系数精确到0.01),并预测该班物理分数88、语文分数73、英语分数87、化学分数92同学的数学分数。

(5) L2正则化线性回归中,令正则化平衡系数1,利用标准方程求出最优的L2正则化多元线性回归方程(系数精确到0.01),并比较其与(4)中得出的多元线性回归方程对数学分数的预测,哪个更好。

答:

数据挖掘——线性回归

数据挖掘——线性回归

根据以上公式,将数据挖掘——线性回归初始值全为0,学习率= 1,代入,即可求出
 数据挖掘——线性回归= [93 8376 6864.6 8059.8 8501.8]。
(2)
J(数据挖掘——线性回归) = 4328.5, J(数据挖掘——线性回归) = 3.7431 * 10^12。
J(数据挖掘——线性回归) > J(数据挖掘——线性回归); 所以数据挖掘——线性回归不可以使线性回归中的代价函数下降。
(3)
可以。将学习率的值取小一些。比如0.000034(这是经过实践测出来的较好的一个值)。

代入算出第一次迭代后的代价为1.7808。

数据挖掘——线性回归

数据挖掘——线性回归

(4)

数据挖掘——线性回归

根据标准化方程算法求得的最优的多元线性回归方程:

m = -19.50+1.69p+0.38c-0.31e-0.44ch;

代入数据求得要求的同学数学分数m = 89.51

(5)

数据挖掘——线性回归

利用标准方程求出最优的L2正则化多元线性回归方程为:

m = -19.99+1.47p+0.07c-0.23e-0.06ch;

代入数据求得要求的同学数学分数m = 88.95

数据挖掘——线性回归

对于(4)中方程,求得的代价函数的值为0.16947

而对于(5)中方程,的值为0.46755

所以(4)中求得的结果更好。