100天入门机器学习——第二天(简单线性回归模型)

近期有国外大神在github上写了100天入门机器学习:
国外大神的100天入门机器学习
也有人进行了汉化:汉化版

仅以此记录,一起学习!

第二天:

简单线性回归模型

100天入门机器学习——第二天(简单线性回归模型)_第1张图片

  1. 数据预处理
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

dataset = pd.read_csv('studentscores.csv')
X = dataset.iloc[ : ,   : 1 ].values
Y = dataset.iloc[ : , 1 ].values

from sklearn.model_selection import train_test_split
X_train, X_test, Y_train, Y_test = train_test_split( X, Y, test_size = 1/4, random_state = 0) 

这里的内容都是第一天的,对数据预处理,这里不再重复阐述

  1. 训练集使用简单线性回归模型来训练
from sklearn.linear_model import LinearRegression
regressor = LinearRegression()
regressor = regressor.fit(X_train, Y_train)

LinearRegression 拟合一个带有系数 w = (w_1, …, w_p) 的线性模型,使得数据集实际观测数据和预测数据(估计值)之间的残差平方和最小。里面有参数:fit_intercept:是否有截据,如果没有则直线过原点;normalize:是否将数据归一化;copy_X:默认为True,当为True时,X会被copied,否则X将会被覆写;n_jobs:默认值为1,计算时使用的核数。

  1. 预测结果
Y_pred = regressor.predict(X_test)

通过第二步的拟合操作,线性回归模型已经训练完毕,通过predict方法,输入测试数据来预测产生的结果Y_pred,和Y_test比较,可以得到模型的准确率是多少。

  1. 可视化

训练集结果可视化

plt.scatter(X_train , Y_train, color = 'red')
plt.plot(X_train , regressor.predict(X_train), color ='blue')
plt.show()

测试集结果可视化

plt.scatter(X_test , Y_test, color = 'red')
plt.plot(X_test , regressor.predict(X_test), color ='blue')
plt.show()

100天入门机器学习——第二天(简单线性回归模型)_第2张图片

总结,第二天是将数据线性拟合,然后可视化,这是最简单的一个线性拟合过程,其中其实主要涉及到的还是sklearn中线性回归模型linear_model的使用,还有通过matplotlib.pyplot的使用对其做可视化(即画图)


感谢Avik-Jain和MLEveryday,前者制作了这个项目,后者进行了汉化

你可能感兴趣的:(机器学习)