2018-10-17

作者: 辘轳鹿鹿 | 来源:发表于2018-10-18 23:36 被阅读12次

Python与数据挖掘(一)——线性回归

线性回归模型公式.png

权重W和常数项b是待确定的。这意味着将输入的自变量按一定比例加权求和,得到预测值输出。

零、知识补充

1、Python有强大的第三方扩展模块sklearn,实现了绝大部分的数据挖掘基础算法

2、在sklearn已包含了本问题需要的数据集

一、算法推导

假设X(m*n)代表m个样本,n维特征的数据对应的矩阵。通常我们会在其最后一列添加一列全为1的向量,以对应上述公式中提到截距。

算法推导.png

二、算法实现(波士顿房价预测问题)

import numpy as np #以np的名字导入nump模块,处理矩阵
import matplotlib.pyplot as plt #此模块用于绘图
from sklearn.datasets import load_boston
from sklearn.linear_model import LinearRegression

boston=load_boston()
print(boston.keys()) #result:dict_keys(['data', 'target', 'feature_names', 'DESCR'])

print(boston.feature_names)
#result:['CRIM' 'ZN' 'INDUS' 'CHAS' 'NOX' 'RM' 'AGE' 'DIS' 'RAD' 'TAX' 'PTRATIO' 'B' 'LSTAT']

x=boston.data[:,np.newaxis,5] #添加新维度
y=boston.target
lm=LinearRegression()#声明并初始化一个线性回归模型的对象
lm.fit(x,y) #拟合模型或称为训练模型

plt.scatter(x,y,color='green') #显示数据点
plt.plot(x,lm.predict(x),color='blue',linewidth=3) #画出回归直线
plt.xlabel('Average number of Rooms per Dwelling(RM)')
plt.ylabel('Housing Price')
plt.show()

线性回归示例图.png

相关文章

网友评论

    本文标题:2018-10-17

    本文链接:https://www.haomeiwen.com/subject/ezbdzftx.html