本站内容均来自兴趣收集,如不慎侵害的您的相关权益,请留言告知,我们将尽快删除.谢谢.
1.概念
1.1 线性回归概念
机器学习中的两个常见的问题:回归任务和分类任务。那什幺是回归任务和分类任务呢?简单的来说,在监督学习中(也就是有标签的数据中),标签值为连续值时是回归任务,标志值是离散值时是分类任务。而线性回归模型就是处理回归任务的最基础的模型。
线性:两个变量之间的关系 是 一次函数关系的——图象 是直线 ,叫做线性;
非线性:两个变量之间的关系 不是 一次函数关系的——图象 不是直线 ,叫做非线性。
回归:人们在测量事物的时候因为客观条件所限,求得的都是测量值,而不是事物真实的值,为了能够得到真实值,无限次的进行测量,最后通过这些测量数据计算 回归到真实值 ,这就是回归的由来。
1.2 线性回归解决问题
对大量的观测数据进行处理,从而得到比较符合事物内部规律的数学表达式。也就是说寻找到数据与数据之间的规律所在,从而就可以模拟出结果,也就是对结果进行预测。解决的就是通过已知的数据得到未知的结果。例如:对房价的预测、判断信用评价、电影票房预估等。
1.3 线性回归基本形式
在只有一个变量的情况下,线性回归可以用方程:y = ax+b 表示。而如果有多个变量,也就是n元线性回归的形式如下:
2.回归分析
from sklearn.linear_model import LinearRegression clf=LinearRegression() clf.fit([[0,0],[1,1],[2,2]],[0,1,2]) #模型训练 ''' y=0.5*x1+0.5*x2 ''' pre=clf.predict([[3,3]]) #模型预测 clf.coef_ clf.intercept_ print(pre)
3.波士顿房价回归分析
#波士顿房价数据回归分析 from sklearn.datasets import load_boston from sklearn.linear_model import LinearRegression import matplotlib.pyplot as plt bosten=load_boston() #实例化 x=bosten.data[:,5:6] clf=LinearRegression() clf.fit(x,bosten.target) #模型训练 clf.coef_ #回归系数 y_pre=clf.predict(x) #模型输出值 plt.scatter(x,bosten.target) #样本实际分布 plt.plot(x,y_pre,color='red') #绘制拟合曲线 plt.show()
4.研究生录取概率预测
import pandas as pd from sklearn.linear_model import LogisticRegression from sklearn.model_selection import train_test_split from sklearn.metrics import classification_report data=pd.read_csv('LogisticRegression.csv') data_tr,data_te,label_tr,label_te=train_test_split(data.iloc[:,1:],data['admit'],test_size=0.2) clf=LogisticRegression() clf.fit(data_tr,label_tr) pre=clf.predict(data_te) res=classification_report(label_te,pre) print(res)
Be First to Comment