机器学习六--回归--简单线性回归Simple Linear Regression

一、回归和分类

  回归(regression)y变量为连续数值型(continuous numerical variable),如房价,降雨量。

  分类(classification)y变量为类别型categorical variable。如颜色类别,电脑品牌等。

二、统计量:描述数据特征

  2.1集中趋势衡量:均值(mean),中位数,众数。

  2.2离散程度衡量:方差       标准差S

三、简单线性回归介绍

  1、简单线性回归包含一个自变量(x)和一个因变量(y)

  2、以上两个变量的关系用一条直线来表示。

  3、如果包含两个以上自变量,则称多元回归分析(mutiple regression)

四、 简单线性回归模型

4.1 被用来描述因变量(y)和自变量(X)以及偏差(error)之间关系的方程叫做回归模型

4.2 简单线性回归的模型是:

其中:              参数                   偏差

  

  4.3关于偏差ε的假定

    1、 是一个随机的变量,均值为0

      2、ε的方差(variance)对于所有的自变量x是一样的

    3、 ε的值是独立的

    4、 ε满足正态分布

五、简单线性回归方程

E(y) = β01x

这个方程对应的图像是一条直线,称作回归线

其中,β0是回归线的截距

β1是回归线的斜率

E(y)是在一个给定x值下y的期望值(均值)

六、估计的简单线性回归方程

          y?=b0+b1x

     这个方程叫做估计线性方程(estimated regression line)

     其中,b0是估计线性方程的纵截距

      

               b1是估计线性方程的斜率

      

               y?是在自变量x等于一个给定值的时候,y的估计值

  最佳的回归线满足条件:

      

import numpy as np
x=[1,3,2,1,3]
y=[14,24,18,17,27]
def fitSLR(x,y):
  n=len(x)
  fenzi=0
  fenmu=0
  for i in range(n):
    fenzi+=(x[i]-np.mean(x))*(y[i]-np.mean(y))#分子
    fenmu+=(x[i]-np.mean(x))**2#分母
  b1=fenzi/fenmu
  b0=np.mean(y)-b1*np.mean(x)
  return b0,b1
def predict(x,b0,b1):
  y=b0+b1*x
  return y
b0,b1=fitSLR(x,y)
print(b0,‘###‘,b1)
predict(6,b0,b1)

时间: 2024-07-31 12:19:57

机器学习六--回归--简单线性回归Simple Linear Regression的相关文章

机器学习七--回归--多元线性回归Multiple Linear Regression

一.不包含分类型变量 from numpy import genfromtxtimport numpy as npfrom sklearn import datasets,linear_modelpath=r'D:\daacheng\Python\PythonCode\machineLearning\Delivery.csv'data=genfromtxt(path,delimiter=',')print(data)x=data[:,:-1]y=data[:,-1]regr=linear_mod

机器学习(一)------- 线性回归(Linear regression )

发现网上有很多的原理讲解,其实这个大家都差不多会的,很少有提供代码参考的,我这里python直接实现出来,后面还会实现神经网络,回归树和其他类型的机器学习算法 先来一篇小试牛刀,个人表达能力不是很好,大家见谅 简要说下自己的理解: 训练一个Linear Regression,给定一组特征值([x1,x2,x3,x4,...,xn]) 和 对应的结果 y,目标就是得到一个模型W权重向量 图一 图一表示原始训练数据集(当然训练规模 远比这个大,这里只是图形化理解下) 把图一扩充一列全为1,然后用训练

机器学习之单变量线性回归(Linear Regression with One Variable)

1. 模型表达(Model Representation) 我们的第一个学习算法是线性回归算法,让我们通过一个例子来开始.这个例子用来预测住房价格,我们使用一个数据集,该数据集包含俄勒冈州波特兰市的住房价格.在这里,我要根据不同房屋尺寸所售出的价格,画出我的数据集: 我们来看这个数据集,如果你有一个朋友正想出售自己的房子,如果你朋友的房子是1250平方尺大小,你要告诉他们这房子能卖多少钱. 那么,你可以做的一件事就是构建一个模型,也许是条直线.从这个数据模型上来看,也许你可以告诉你的朋友,他大概

机器学习之多变量线性回归(Linear Regression with multiple variables)

1. Multiple features(多维特征) 在机器学习之单变量线性回归(Linear Regression with One Variable)我们提到过的线性回归中,我们只有一个单一特征量(变量)--房屋面积x.我们希望使用这个特征量来预测房子的价格.我们的假设在下图中用蓝线划出: 不妨思考一下,如果我们不仅仅知道房屋面积(作为预测房屋价格的特征量(变量)),我们还知道卧室的数量.楼层的数量以及房屋的使用年限,那么这就给了我们更多可以用来预测房屋价格的信息. 即,支持多变量的假设为:

机器学习经典算法具体解释及Python实现--线性回归(Linear Regression)算法

(一)认识回归 回归是统计学中最有力的工具之中的一个. 机器学习监督学习算法分为分类算法和回归算法两种,事实上就是依据类别标签分布类型为离散型.连续性而定义的. 顾名思义.分类算法用于离散型分布预測,如前面讲过的KNN.决策树.朴素贝叶斯.adaboost.SVM.Logistic回归都是分类算法.回归算法用于连续型分布预測.针对的是数值型的样本,使用回归.能够在给定输入的时候预測出一个数值.这是对分类方法的提升,由于这样能够预測连续型数据而不不过离散的类别标签. 回归的目的就是建立一个回归方程

机器学习经典算法详解及Python实现--线性回归(Linear Regression)算法

(一)认识回归 回归是统计学中最有力的工具之一.机器学习监督学习算法分为分类算法和回归算法两种,其实就是根据类别标签分布类型为离散型.连续性而定义的.顾名思义,分类算法用于离散型分布预测,如前面讲过的KNN.决策树.朴素贝叶斯.adaboost.SVM.Logistic回归都是分类算法:回归算法用于连续型分布预测,针对的是数值型的样本,使用回归,可以在给定输入的时候预测出一个数值,这是对分类方法的提升,因为这样可以预测连续型数据而不仅仅是离散的类别标签. 回归的目的就是建立一个回归方程用来预测目

从零单排入门机器学习:线性回归(linear regression)实践篇

线性回归(linear regression)实践篇 之前一段时间在coursera看了Andrew ng的机器学习的课程,感觉还不错,算是入门了. 这次打算以该课程的作业为主线,对机器学习基本知识做一下总结.小弟才学疏浅,如有错误.敬请指导. 问题原描写叙述: you will implement linear regression with one variable to predict prots for a food truck. Suppose you are the CEO of a

Stanford公开课机器学习---3.多变量线性回归 (Linear Regression with multiple variable)

3.多变量线性回归 (Linear Regression with multiple variable) 3.1 多维特征(Multiple Features) n 代表特征的数量 x(i)代表第 i 个训练实例,是特征矩阵中的第 i 行,是一个向量(vector). x(i)j代表特征矩阵中第 i 行的第 j 个特征,也就是第 i 个训练实例的第 j 个特征. 多维线性方程: hθ=θ0+θ1x+θ2x+...+θnx 这个公式中有 n+1 个参数和 n 个变量,为了使得公式能够简化一些,引入

Python 线性回归(Linear Regression) 基本理解

背景 学习 Linear Regression in Python – Real Python,对线性回归理论上的理解做个回顾,文章是前天读完,今天凭着记忆和理解写一遍,再回温更正. 线性回归(Linear Regression) 刚好今天听大妈讲机器学习,各种复杂高大上的算法,其背后都是在求"拟合". 线性回归估计是最简单的拟合了.也是基础中的基础. 依然是从字面上先来试着拆解和组合: 首先,Regression 回归,指的是研究变量之间的关系,这个由来在Python 线性回归(Li