[github-100天机器学习]day2 simple linear regression

news/2024/11/25 0:47:55/

https://github.com/LiuChuang0059/100days-ML-code/blob/master/Day2_SImple_Linear_regression/README.md

简单线性回归

使用单一特征预测响应值。基于自变量X来预测因变量Y的方法,假设两者线性相关,寻找一种根据特征或自变量X的线性函数来预测Y。

目标

  • 找最佳拟合线,最小化预测误差(最小化观测值 Y i Y_i Yi和模型预测值 Y p Y_p Yp之间的长度)
  • m i n { s u m ( y i − y p ) 2 } min \{ sum(y_i - y_p)^2\} min{sum(yiyp)2}
  • y = b 0 + b 1 x 1 y = b_0+b_1x_1 y=b0+b1x1( b 0 b_0 b0截距, b 1 b_1 b1斜率)

步骤

  1. 数据预处理:同day1 六步骤(导入库–导入数据集–检查缺失数据–解析分类数据–拆分数据集–特征缩放)
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 ].valuesfrom sklearn.model_selection import train_test_split    #new
# sklearn.cross_validation 模块已经在最新版本的 Scikit-learn 中被移除了。
#from sklearn.cross_validation import train_test_split   #old
X_train, X_test, Y_train, Y_test = train_test_split( X, Y, test_size = 1/4, random_state = 0) 
  1. 通过训练集训练简单线性回归模型:使用sklearn.linear_model库的LinearRegression类,得到模型regressor
### Step 2: Fitting Simple Linear Regression Model to the training set
# 把数据集拟合到简单线性回归模型,使用fit函数from sklearn.linear_model import LinearRegression
regressor = LinearRegression() ## 创建一个regressor 对象
regressor = regressor.fit(X_train, Y_train) ### 对象拟合到数据集里面
# 使用fit()方法将 regressor 对象拟合到训练集的特征矩阵 X_train 和目标变量 Y_train
# 拟合过程根据线性回归计算b0和b1
  1. 预测结果:预测测试集,结果存到Y_pred,用2中训练的回归模型regressor的LinearRegression类的预测方法对结果进行预测。
### Step 3: Predecting the Result
#在训练好的regressor使用预测模型
#结果输出到向量Y_predY_pred = regressor.predict(X_test)
  1. 可视化:用matplotlib.pyplot对训练集和测试集的结果做散点图,查看预测结果。

### Step 4: Visualization
plt.scatter(X_train , Y_train, color = 'red')
# 训练集散点图,红色,横轴X_train,纵轴Y_train
plt.plot(X_train , regressor.predict(X_train), color ='blue')   ## 训练结果
# 回归线,横轴X_train,纵轴regressor.predict(X_train)--训练集预测结果
plt.scatter(X_test , Y_test, color = 'green')
# 测试集散点图,蓝色,横轴X_test,纵轴Y_test
plt.plot(X_test , regressor.predict(X_test), color ='blue')   ## 测试结果
# 回归线,测试集合预测结果

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


http://www.ppmy.cn/news/722742.html

相关文章

3F倾听模型

3F倾听模型 3F倾听模型|苏格拉底说:“上天赐给每个人两只耳朵,而只有一张嘴巴,就是要求人们多听,少说话。” 模型介绍 运用心得 到底听什么? 倾听听事实+感受情绪+理解对方意图 1、分清事实…

百炼智能发布垂直模型“爱迪生”,B2B行业的AIGC大潮来了

(图片来源:Pixels) AIGC终于来到B2B行业,企业服务AGI时代已拉开帷幕。 数科星球原创 作者丨苑晶 编辑丨大兔 百炼智能是一家专注B2B行业的智能营销企业。在过去,该行业经历了大数据、人工智能时代的洗礼。随着行业对数…

再见了2022,奔赴2023!!

今天是2022最后一天班 这一年大概是我长这么大最难熬的一年,也是让我成长最多的一年, 这一年 1月 ,因疫情被拉去酒店隔离了半个月 3.1生病 3.1-3.6输液 3.6-3.10手术住院 3.13复诊拿好多药 3.14-3.21因疫情隔离11天,用药&#xff…

2022--2023

2022--2023 2022年度总结:锻炼:体重保持还可以,基本上没有大幅上涨,但后半年居家时间身体锻炼明显减少,导致在新冠疫情传播期间,病了一周多。 读书:读书314天,159个小时,…

冬奥结束了

冬奥结束了 差不多半个月 挺难忘的 赛场 有成功 有失败 有感动 有惋惜 人生就是这样 作为程序员 作为打工人 还是好好搬砖吧 罗老师说得好 要爱具体的人 所以 多操心自己的事 多关心亲人 今天写代码 有点累了 早点睡觉 明天继续写代码

北京冬奥会

北京冬奥会牛逼,张艺谋YYDS

冬奥会项目进展

一.图表 1.根据年份的柱形图 2.根据国家的折线图 3.根据年份和国家的饼图 4.根据年份国家数图 5.保持记录的国家图 6.南丁格尔玫瑰图 7.参赛人数图(2) 8.世界地图 9.热门新闻图 二.后台数据 1.历年国家得奖牌数量 2.记录保持国家和保持者 3.参赛国家 4.热点新闻 …

2022冬奥会 misc

问题:2022冬奥会在北京举办,身为东道主的你知道此次冬奥会的吉祥物分别是谁吗?并且你知道这两只冬奥会的吉祥物最初设计的原型分别是什么吗?我只能提示你其中有一只的原型是我们的国宝哦。 下载附件 通过放入010中查看 通过改变长…