期末考试前复习了这学期机器学习学习的几种算法(包含线性回归,逻辑回归,神经网络,决策树,K近邻,朴素贝叶斯,K均值聚类,支持向量机),发现自己差的还很远。在这里简单把复习的时候整理的代码存档一下。也希望对大家有一些帮助。代码都实测运行过,笔者用的是spyder编译器。
线性回归
#线性回归
import numpy as np
import matplotlib.pyplot as plt
k,b=2,5
x0=np.arange(0,10,0.2)
y0=k*x0+b
#噪声点
noise=np.random.normal(1,2,50)
y_noise=y0+noise
from sklearn.linear_model import LinearRegression
#构建模型
XM=np.vstack([np.ones(len(x0)),x0]).T
model=LinearRegression(fit_intercept=True)
#拟合
model.fit(XM,y_noise)
k=model.coef_[1]
b=model.intercept_
y_fitted=k*x0+b
plt.plot(x0,y0,marker='o',linestyle='')
plt.plot(x0,y0,linestyle='-',c='r')
plt.plot(x0,y_noise,marker='o',c='b',linestyle='')
plt.plot(x0,y_fitted,linestyle='-',c='g')
plt.show()