机器学习-线性回归原理Python代码实现
目录
机器学习—线性回归原理&&Python代码实现
1.一元线性回归
导入数据,这个里面我们使用的是波士顿数据集合,一共是13个数据特征,这个文章里面我们会分别介绍这个一元和多元的;
一元:选择一个数据特征分析该特征对于房价的影响;
多元:选择多个特征进行分析,这些特征对于房价的影响程度;
首先做的就是下载这个数据集,desc其实就是我们的英文单词description缩写,也就是打印的这个13个特征及其相关的描述,这个是很经典的数据集,不清楚的可以去网上查阅一下,或者是看我的这个文章里面的第二点:
绘制散点图,这个scatter就是绘制散点图的函数方法,y<50目的是为了进行筛选,因为这个y=50位置有很多店符合条件,但是这个参考机制不大,所以我们把这些点过滤掉;
划分测试集和训练集:并且绘制这个训练集的可视化效果
下面的这个就是我们的一元线性回归方程,首先定义函数,函数其实就是我们使用最小二乘法求解方程的那个公式;
调用函数,训练模型,画出来这个直线方程查看具体的效果;
我们可以在查看一下这个测试集的效果:
下面的这个是直接调用包,使用训练集进行训练,测试集进行预测即可:绘制出来这个散点图查看方程的拟合效果;
2.对于波士顿房价的说明
其实这个数据集很经典,这些特征就是对于我们的房价的影响,不清楚的话可以看下面的这个了解一下,其实我觉得知道这些因素就够了,无需进行面面俱到,只需要知道这13个都是影响房价的特征因素即可,具体问题再具体分析
- CRIM:每个城镇的人均犯罪率
- ZN:规划为占地面积超过 25000 平方英尺地块的住宅用地比例
- INDUS:每个城镇非零售商业用地英亩数的比例
- CHAS:查尔斯河虚拟变量(如果区域与河流相邻则等于 1;否则为 0)
- NOX:一氧化氮浓度(每千万份中的份数)
- RM:每套住宅的平均房间数
- AGE:1940 年以前建造的自有住房单元的比例
- DIS:到波士顿五个就业中心的加权距离
- RAD:放射状高速公路可达性指数
- TAX:每 10000 美元房产的全额价值财产税率
- PTRATIO:每个城镇的师生比
- B:1000×(Bk - 0.63)²,其中 Bk 是每个城镇的黑人比例
- LSTAT:人口中低社会地位人群的百分比
- MEDV:自有住房的中位数价值(单位:千美元)
3.多元线性回归
因为这个多元的线性回归涉及到复杂运算,因此我们不在进行这个手动实现。直接调用我们的这个sklearn里面的包进行使用即可;
还是train集合进行训练,但是这个是多个特征因素的影响,所以这个里面我们需要计算得分,而不是绘制散点图,score计算的得分接近于1说明这个效果越好,这个就是sklearn对于多元线性回归(多特征因素对于房价影响)的实现效果;