线性回归机器学习算法介绍

简介: 在解释什么是线性回归之前,我们先举个例子!假设我们已知m个样本,样本里有n个特征x,和对应的输出y。表达式如下:现在出现了一个新的数据集需要预测它对应的输出y是多少。首先我们需要知道的是,如果输出y是连续的,则是回归问题,否则是分类问题。

在解释什么是线性回归之前,我们先举个例子!

假设我们已知m个样本,样本里有n个特征x,和对应的输出y。表达式如下:

image

现在出现了一个新的数据集

image

需要预测它对应的输出y是多少。

首先我们需要知道的是,如果输出y是连续的,则是回归问题,否则是分类问题。
如果是分类问题,那我们应该对前面的m个样本拟合,建立类似以下形式的线性方程:

image

这样,我们就可以对新的数据集做出预测,求出对应的y值啦。当然,对于拟合出来的函数,并不能做到100%准确预测。现实的情况更多的是下图表示的情况

image

好了,以上就是线性回归啦。
为了方便出去跟朋友装逼,我们用专业属于概括就是:
利用数理统计中的回归分析,来确定两种或者两种以上变量间相互依赖的定量关系的一种统计分析方法。线性回归可以说是机器学习中最基本的算法了。

一、线性回归的目标

1,评估预测变量y在解释反应变量x的变异或表现时的显著性。
2,在给定预测变量值x的情况下预测反应变量值y。

二,线性回归的应用

1,预测,即建立一个模型(方程),基于反应变量y与其他预测变量x的关系来预测新的y值。
2,解释分析和探索式分析,即用于理解和解释反应变量和预测变量间的关系。

三,线性回归的类别

1,一元线性回归:只包括一个自变量和一个因变量,且二者关系可用一条直线近似表示。
2,多元线性回归:包括两个或两个以上的自变量,且因变量和自变量之间是线性关系

四,线性回归的假设函数和损失函数

这里解释以下什么叫假设函数和损失函数
假设函数:在监督学习中,为了拟合输入样本,而使用的假设函数,常用表示。

损失函数:也叫代价函数,目标函数。为了评估模型拟合的好坏,用来度量拟合的程度。损失函数越小,则拟合程度越好,则对应的参数即为最优参数。对于线性回归,一般用均方误差(即预测值减真实值的平方)作为其损失函数。
以下我们假定有m个样本,每个样本对应于n维特征和一个输出结果y,则线性回归假设函数为

image

五,算法过程

已知假设函数,和损失函数。那我们接下来的目标是求出使得损失函数最小值的模型参数。求最小值,我们通常使用梯度下降算法和最小二乘法。今天我们就选择使用最小二乘法吧。为方便解释,我们只使用一个特征的样本,即损失函数变为

image

要使损失函数值最小,就要分别对,求偏导数,令偏导数都等于0 。从而得到,的方程组,联立这两个方程组,这样就可以得到,这两个参数的值啦。具体过程如下:

image

这样最优模型的参数就求出来啦。
以上就是线性回归算法的介绍了。

原文发布时间为:2019-1-8
本文作者:黄向平
本文来自云栖社区合作伙伴“ Python中文社区”,了解相关信息可以关注“ python-china”微信公众号

相关文章
|
2月前
|
机器学习/深度学习 算法 数据挖掘
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构
K-means聚类算法是机器学习中常用的一种聚类方法,通过将数据集划分为K个簇来简化数据结构。本文介绍了K-means算法的基本原理,包括初始化、数据点分配与簇中心更新等步骤,以及如何在Python中实现该算法,最后讨论了其优缺点及应用场景。
117 4
|
16天前
|
算法
PAI下面的gbdt、xgboost、ps-smart 算法如何优化?
设置gbdt 、xgboost等算法的样本和特征的采样率
39 2
|
2月前
|
机器学习/深度学习 算法 数据挖掘
C语言在机器学习中的应用及其重要性。C语言以其高效性、灵活性和可移植性,适合开发高性能的机器学习算法,尤其在底层算法实现、嵌入式系统和高性能计算中表现突出
本文探讨了C语言在机器学习中的应用及其重要性。C语言以其高效性、灵活性和可移植性,适合开发高性能的机器学习算法,尤其在底层算法实现、嵌入式系统和高性能计算中表现突出。文章还介绍了C语言在知名机器学习库中的作用,以及与Python等语言结合使用的案例,展望了其未来发展的挑战与机遇。
51 1
|
2月前
|
机器学习/深度学习 自然语言处理 算法
深入理解机器学习算法:从线性回归到神经网络
深入理解机器学习算法:从线性回归到神经网络
|
2月前
|
机器学习/深度学习 人工智能 算法
【手写数字识别】Python+深度学习+机器学习+人工智能+TensorFlow+算法模型
手写数字识别系统,使用Python作为主要开发语言,基于深度学习TensorFlow框架,搭建卷积神经网络算法。并通过对数据集进行训练,最后得到一个识别精度较高的模型。并基于Flask框架,开发网页端操作平台,实现用户上传一张图片识别其名称。
105 0
【手写数字识别】Python+深度学习+机器学习+人工智能+TensorFlow+算法模型
|
2月前
|
机器学习/深度学习 算法
深入探索机器学习中的决策树算法
深入探索机器学习中的决策树算法
42 0
|
2月前
|
机器学习/深度学习 算法 Python
机器学习入门:理解并实现K-近邻算法
机器学习入门:理解并实现K-近邻算法
39 0
|
3月前
|
机器学习/深度学习 算法 Java
机器学习、基础算法、python常见面试题必知必答系列大全:(面试问题持续更新)
机器学习、基础算法、python常见面试题必知必答系列大全:(面试问题持续更新)
|
3月前
|
机器学习/深度学习 人工智能 算法
【玉米病害识别】Python+卷积神经网络算法+人工智能+深度学习+计算机课设项目+TensorFlow+模型训练
玉米病害识别系统,本系统使用Python作为主要开发语言,通过收集了8种常见的玉米叶部病害图片数据集('矮花叶病', '健康', '灰斑病一般', '灰斑病严重', '锈病一般', '锈病严重', '叶斑病一般', '叶斑病严重'),然后基于TensorFlow搭建卷积神经网络算法模型,通过对数据集进行多轮迭代训练,最后得到一个识别精度较高的模型文件。再使用Django搭建Web网页操作平台,实现用户上传一张玉米病害图片识别其名称。
81 0
【玉米病害识别】Python+卷积神经网络算法+人工智能+深度学习+计算机课设项目+TensorFlow+模型训练
|
2月前
|
机器学习/深度学习 人工智能 算法
探索机器学习中的决策树算法
【10月更文挑战第29天】本文将深入浅出地介绍决策树算法,一种在机器学习中广泛使用的分类和回归方法。我们将从基础概念出发,逐步深入到算法的实际应用,最后通过一个代码示例来直观展示如何利用决策树解决实际问题。无论你是机器学习的初学者还是希望深化理解的开发者,这篇文章都将为你提供有价值的见解和指导。