欠拟合和过拟合现象:多项式方法解决过拟合

numpy.reshape(a,(-1,1))的含义

https://blog.csdn.net/m0_38052384/article/details/102692708

欠拟合和过拟合现象:多项式方法解决过拟合_第1张图片
用一个例子与感受一下欠拟合:
注意升维

#演示一下欠拟合场景 

import numpy as np 
import pandas as pd 
import matplotlib.pyplot as plt 
from sklearn.linear_model import LinearRegression
#np.linspace主要用来创建等差数列。 起始位置 ,终止位置 ,产生多少个
x = np.linspace(1,10,50)
y = x* np.sin(x)

#显示中文 
plt.rcParams["font.family"] = "SimHei"
plt.rcParams ["font.size"] =12

#X = x[:,np.newaxis]
X = x.reshape(-1,1)
#线性回归初始化
lr = LinearRegression()


lr.fit(X,y)
#绘制散点图
plt.scatter(x,y,c='g',label = '样本数据')
plt.plot(X,lr.predict(X),c = "r",label = '拟合线')
#绘制图例
plt.legend()

#lr.score(X,y) 就是R^2 值
plt.title(f"$R^2$ :{lr.score(X,y):.3f}")

欠拟合和过拟合现象:多项式方法解决过拟合_第2张图片
复习一个多项式特征:.
欠拟合和过拟合现象:多项式方法解决过拟合_第3张图片
多项式扩展之后依旧还可以应用于线性模型
欠拟合和过拟合现象:多项式方法解决过拟合_第4张图片
欠拟合和过拟合现象:多项式方法解决过拟合_第5张图片

#复习一下多项式特征

from  sklearn.preprocessing import PolynomialFeatures

x = np.array( [ [1,2],

你可能感兴趣的:(大数据,python,机器学习,过拟合,监督学习)