线性回归原理及模型(广义线性模型线性回归)
实际上线性模型不是指某一个模型,而是一类模型。在机器学习领域里,常用的线性模型包括线性模型、邻回归、套索回归、逻辑回归和线性SVC。
第1个知识点:用Python表示一条直线y=0.5x 3
import numpy as np
import matplotlib.pyplot as plt
x=np.linspace(-5,5,10)#设置x是-5到5之间的等差数列
y=0.5*x 3
plt.plot(x,y,c='orange')#线条设置成橙色
plt.title("straight line")#设置图形的标题
plt.show()
第2个知识点:已知2个点的坐标(1,3)、(4,5)画一条直线
import numpy as np
from sklearn.linear_model import LinearRegression
x=[[1],[4]]
y=[3,5]
lr=LinearRegression().fit(x,y)
z=np.linspace(0,5,20)
plt.scatter(x,y,s=80)
plt.plot(z,lr.predict(z.reshape(-1,1)),c='k')
#穿过(1,3)、(4,5)点的直线方程
print('y={:.3f}'.format(lr.coef_[0]),'x',' {:.3f}'.format(lr.intercept_))#这个是y与x的表达式
plt.title("straight line")
plt.show()
第3个知识点:已知3个坐标(1,3)、(4,5)、(3,3)画一条直线
#3个点的
import numpy as np
from sklearn.linear_model import LinearRegression
x=[[1],[4],[3]]
y=[3,5,3]
lr=LinearRegression().fit(x,y)
z=np.linspace(0,5,20)
plt.scatter(x,y,s=80)
plt.plot(z,lr.predict(z.reshape(-1,1)),c='k')
plt.title("straight line")
plt.show()
print("y={:.3f}".format(lr.coef_[0]),'x',' {:.3f}'.format(lr.intercept_))
第4个知识点:多个坐标点确定一条直线
#多个坐标
from sklearn.datasets import make_regression
from sklearn.linear_model import LinearRegression
import numpy as np
x,y=make_regression(n_samples=50,n_features=1,n_informative=1,noise=50,random_state=1)
reg=LinearRegression()
reg.fit(x,y)
z=np.linspace(-3,3,200).reshape((-1,1))
plt.scatter(x,y,c='b',s=60)
plt.plot(z,reg.predict(z),c='k')
plt.title("LinearRegression")
plt.show()
print("y={:.3f}".format(reg.coef_[0]),'x',' {:.3f}'.format(reg.intercept_))
以上是学习到的线性模型其中一种线性模型。用来回归数据,求系数还是很有用处的。比基本的回归方式。
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com