机器学习(5)-多项式回归

多项式回归:
这里写图片描述
处理的是一些非线性问题,像一些无法用直线拟合的离散点,比方说随着工龄的增长和职位的升高而 增加的薪酬
这样的问题,往往只有一个自变量。
多项式回归还是比较简单的
///举一个栗子///
一家企业:十个职位与对应的薪酬
这里写图片描述

这时候有一个人来你公司应聘,他已经在6职位上工作了两年多,还有几年就可以上到7职位了,你应该给他多少薪酬呢?
这种情况,我们就将他的职位按照6.5算吧。
下面这个是线性回归的预测出的结果

linr = LinearRegression()
linr.fit(X, y)
polyr = PolynomialFeatures(degree = 2)
linrr = LinearRegression()
linrr.fit(X_poly, y)

这里写图片描述
显而易见,误差是非常大的,尤其是看到了y轴上的数量级之后….
这时候让我们来用多项式回归,可以通过增加变量的最高次数,来增加拟合结果的准确性。
这里写图片描述
我们设定的多项式的最高次数是2,但是头尾两个数值的误差还是比较大的
在这个逐步调高最高次数的过程中,发现最高次是4的时候,预测出来的结果是最为准确的。

这里写图片描述
如果你觉得这个预测图不够平滑,你也可以缩减X轴每两个坐标之间的距离。
我们做一个差来大体看一下误差:
这里写图片描述
因为对于多项式回归的误差检测,这里并没有比较好的方法。由于通过提高最高次数的过程已经可以逐步的增大预测的准确率,所以这样的误差并不算大。

现在你可以给来招聘的人给出合适的工资了

linrr.predict(polyr.fit_transform(6.5))

这里写图片描述.
跟原有的公司给出的薪酬对应表相差并不多。

源码与数据集下载地址:下载RAR

没有积分的也可以免费向我索要哈,评论区留下邮箱地址。我看见的时候就打包发送喽~

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_38248958/article/details/79973686
个人分类: 机器学习(派神)
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭