ML坚持之路_Day2
2018-08-06 本文已影响0人
Freyr_sau
Day_2 简单线性回归
概述
- 使用一个简单的特征来预测将来值
线性回归是一种基于非独立变量X来预测独立变量Y的方法。它假设两个变量线性相关,因此,我们需要找出X与Y的线性关系
- 如何寻找最合适的线来拟合
在回归模型中,如果我们能够找到能使预测误差最小的线来拟合,则回归线的误差也会最小化。
我们应该试图将以观察到的值与我们预测值之间的距离最小化。
y = bo + b1*x1
步骤一、处理数据
运用第一天的五个步骤
- Import the Libraries
- Import the DataSet
- Check for Missing Data
- Split the DataSet
- Feature Scaling
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.cross_validation import train_test_split
X_train, X_test, Y_train, Y_test = train_test_split( X, Y, test_size = 1/4, random_state = 0)
步骤二、训练训练集的简单线性回归模型
为了训练数据集,我们将使用sklearn.linear_model
调用LinearRegression
,使用regressor
对象
我们将使用LinearRegression
类,fit()
方法将对象拟合到数据集中。
from sklearn.linear_model import LinearRegression
regressor = LinearRegression()
regressor = regressor.fit(X_train, Y_train)
步骤三、预测结果
我们将从训练集中预测结果,将输出保存在向量Y_pred
.为了预测结果,我们将使用在上一步中在regressor
中使用的LinearRegression
类方法
Y_pred = regressor.predict(X_test)
步骤四、数据可视化
最后一步为将我们的结果可视化。我们将使用matplotlib.pyplot
库来制作训练集结果和测试集结果的扩散图(scatter plot),来观察我们的模型对结果值的预测情况
- 可视化训练结果
plt.scatter(X_train, Y_train, color= 'red')
plt.plot(X_train, regressor.predict(X_train), color= 'blue')
- 可视化测试结果
plt.scatter(X_test, Y_test, color= "red")
plt.plot(X_test, regressor.predict(X_test), color= "blue")
第2️天的学习结束啦,开心😄
本文作者: Keithxodoy
文章为作者一字一句敲出来,整理实在不容易,希望各位转载写明出处
须知:未经允许,不得转载