机器学习之线性回归

lovethefuture lovethefuture     2022-12-09     568

关键词:

1.机器学习算法

**监督学习:**已经知道类别的样本,通过一定的模型或者是特定的算法,可以预测出某种特定的结果,例如预测房价,最终可以预测出房价是什么,或者是预测肿瘤疾病,判断肿瘤是良性还是恶性。比如回归和分类
**无监督学习:**我不知道最终的结果是什么,只知道有一堆的数据,我们将它放在一起,通过特定的算法,可以得到某种结果,比如聚类问题,将某些具有相同特征的人聚在一类。

一、线性回归算法

1.线性回归的概念

回归用于预测输入变量和输出变量之间的关系,特别是当输入变量的值发生变化时,输出变量的值随之发生的变化。回归模型正是表示从输入变量到输出变量之间映射的函数,回归问题的学习等价于函数拟合:选择一条函数曲线使其很好地拟合已知数据且很好地预测未知数据。

2.线性回归模型

线性回归模型会根据自变量的个数分为一元线性回归模型和多元回归模型。比如房价对着房间的大小会发生改变,只有一个自变量,属于的是一元线性回归模型。再如,房价可能会随着房间的大小还有房龄的不同而不同,或者与其他的原因有关系,就属于是多元回归模型

3.一元线性回归模型

只有单个的特征,也就是说只有一个自变量,假设房价只是因为房间的大小而变化。

将训练集中的数据用图表的形式展现,然后寻找一条与数据点最拟合的曲线,去尽可能的匹配样本点的变化趋势。为了方便理解最基本的概念,假设这条曲线对应的函数是

最终就是要确定最合适的θ0和θ1.找到最接近样本点的解,这样就是最终的线性回归线。

确定θ0和θ1的函数称为代价函数,可以确定最忧的θ0和θ1
代价函数:

求解得到J取值最小的时候,就是该函数代价最小的时候,所以此时的θ0和θ1就是最终回归线的参数值。求解这个J的最小值通常使用的是梯度下降算法

梯度下降算法
这里用到的是 Batch 梯度下降算法,这个梯度下降算法的特点是每次梯度下降都会遍历整个训练集,但当选择不同的初始参数组合,可能会找到不同的局部最小值。梯度下降算法的实现:
(求偏导,直到θi不发生变化的时候就是局部最小值)
其中,α是学习率,用来控制梯度下降时的步长。若α 很大,则说明梯度下降会很迅速;若α \\alphaα很小,则说明梯度下降会很缓慢。并且在每次迭代的时候,θ0和θ1需要同步更新。



根据公式,最终确定的θ0和θ1就是线性回归方程的参数的解,这条直线就是线性回归方程,可以通过这个线性回归方程来预测不同房屋面积的房子的价格。

4.多变量线性回归
就是自变量有多个的时候,就会有多个xi,因此回归方程也是多元的。

所以在求解参数的时候,就会有多变量的梯度下降算法:

多变量梯度下降算法:

1.特征缩放
在多变量梯度下降算法的求解中,如果不同特征的取值相差很大的话,在求解最优解的时候,收敛会特别的慢,所以有一个比较忧的方法就是通过特征缩放,来调整特征值的取值范围,保证多个特征值的取值范围更加接近。

**方法一:**将特征值除以最大值。例如size/2000
**方法二:**利用均值归一化,就是正态分布中的标准正态分布类似。

2.学习率α的选择
正常的情况下,J的取值会因为迭代的次数不断增加而减少。如下图所示:

梯度下降算法收敛所需要的迭代次数根据模型的不同而不同,我们可以通过绘制迭代次数和代价函数的图来观察算法在何时趋于收敛。如果在一次迭代中,J ( θ ) 的值小于1 0 − 3(10的-3次方) ,则可以说此次迭代是收敛的。
学习率α的选择:
- α太小:收敛很慢;
- α太大:每一次迭代中J ( θ ) 可能不总是下降的,可能会导致最后不收敛;
- 选择α时,可以尝试 . . . , 0.001 , 0.003 , 0.01 , 0.03 , 0.1 , 0.3 , 1 , . . .等值

5.正规方程求解参数
事实上,我们除了梯度下降法,还有另一种方法求解我们所需要的参数θ的方法,利用正规方程进行求解。
例如以下的特征:

我们希望求得一组θ值,能够假设函数能够很好地拟合最终的Price,其实我们不难列出我们的假设函数:

这里添加了X0=1这一项

利用这种方法如果特征值的个数太多>10000时,这个方法就不是很好,需要选择梯度下降算法

6.梯度下降算法和正规方程方法的区别


本文参考:https://zhuanlan.zhihu.com/p/151408238

机器学习之一元线性回归模型

一元线性回归模型样本数量m           输入变量x              输出变量y    &nb 查看详情

机器学习之线性回归---logistic回归---softmax回归

1摘要     本报告是在学习斯坦福大学机器学习课程前四节加上配套的讲义后的总结与认识。前四节主要讲述了回归问题,回归属于有监督学习中的一种方法。该方法的核心思想是从连续型统计数据中得到数学... 查看详情

javascript机器学习之线性回归

译者按:AI时代,不会机器学习的JavaScript开发者不是好的前端工程师。原文:MachineLearningwithJavaScript:Part1译者:Fundebug为了保证可读性,本文采用意译而非直译。另外,本文版权归原作者所有,翻译仅用于学习。使用JavaScript做机器学... 查看详情

机器学习之线性回归(代码片段)

文章目录评价方法一元线性回归np.polyfit求解带入公式求解化简公式求解lstsq求解多元线性回归代码实现一元多项式回归代码实现参考评价方法回归问题有很多的评价方法。这里主要想写一下R^2的计算方法。需要计算R^2需要先弄清... 查看详情

机器学习之线性回归

1.机器学习算法**监督学习:**已经知道类别的样本,通过一定的模型或者是特定的算法,可以预测出某种特定的结果,例如预测房价,最终可以预测出房价是什么,或者是预测肿瘤疾病,判断肿瘤是良... 查看详情

机器学习之线性回归

1.机器学习算法**监督学习:**已经知道类别的样本,通过一定的模型或者是特定的算法,可以预测出某种特定的结果,例如预测房价,最终可以预测出房价是什么,或者是预测肿瘤疾病,判断肿瘤是良... 查看详情

机器学习之线性回归(代码片段)

以kaggle上的HousePrices:AdvancedRegressionTechniques为例讲述线性回归fromsklearn.linear_modelimportLinearRegression,RidgeCV,LassoCV,ElasticNetCV1、回归模型(1)一般线性回归:LinearRegressionwithoutregularizationfromsklearn.linear_modelimportLinearRegressionlr=LinearRegression... 查看详情

20171028机器学习之线性回归过拟合问题的解决方案

在函数中加入一个正则项: 三种方式:一、Ridge回归(岭回归):  优点:具有较高的准确性、鲁棒性以及稳定性  缺点:求解速度慢二、Lasso回归:  优点:求解速度快(原理降维计算,把数据维度中存在的噪音和... 查看详情

机器学习之linearregression线性回归(代码片段)

一、预测先来看看这样一个场景:假如你手头有一套房子要出售,你咨询了房产中介。中介跟你要了一系列的数据,例如房子面积、位置、楼层、年限等,然后进行一系列计算后,给出了建议的定价。房产中介是如何帮你定价的... 查看详情

机器学习之线性回归算法

...回归算法总结:  回归是统计学中最有力的工具之一。机器习监督学习算法分为分类算法和回归算法两种,其实就是根据类别标签分布类型为离散型、连续性而定义的。回归算法用于连续型分布预测,针对的是数值型的样本,... 查看详情

机器学习之逻辑回归

1.用自己的话描述一下,什么是逻辑回归,与线性回归对比,有什么不同?逻辑回归又称逻辑回归分析,是一种广义的线性回归分析模型,常用于数据挖掘,疾病自动诊断,经济预测等领域;与线性回归相比大致有两大不同:①... 查看详情

机器学习之线性回归概念总结速记

目录线性回归简介线性回归应用场景线性回归定义线性回归模型线性回归初步使用步骤分析代码过程线性回归的损失和优化损失函数优化算法正规方程梯度下降梯度的概念梯度下降和正规方程的对比算法选择依据欠拟合和过拟合... 查看详情

机器学习之线性回归(代码片段)

目录预测数值型数据:回归用线性回归找到最佳拟合直线程序8-1标准回归函数和数据导入函数程序8-2基于程序8-1绘图图片8-1ex0的数据集和它的最佳拟合直线局部加权线性回归图片8-2参数k与权重的关系程序8-3局部加权线性回归函... 查看详情

菜鸟之路——机器学习之非线性回归个人理解及python实现(代码片段)

关键词:梯度下降:就是让数据顺着梯度最大的方向,也就是函数导数最大的放下下降,使其快速的接近结果。Cost函数等公式太长,不在这打了。网上多得是。这个非线性回归说白了就是缩小版的神经网络。python实现:1importnump... 查看详情

机器学习之理论篇—线性模型

机器学习之理论篇—线性模型2016-05-02 雷厉风行 机器学习与大数据算法线性模型是机器学习中的最基本模型,其形式简单、易于建模。线性回归模型虽然简单,但却非常的实用,许多非线性模型也都是建立在线性模型的... 查看详情

机器学习之回归简介

线性回归综述目的是找到一个映射,最能反映二者之间的关系。用来预测当有新的样本输入的时候,输入的结果线性回归处理的变量必须是连续的。欠拟合&过拟合过拟合跟欠拟合是ml算法表现差的两大原因欠拟合:... 查看详情

机器学习之线性回归岭回归lasso回归(代码片段)

1、回归算法分类算法的目标值是标称型数据,而回归的目标变量是连续型数据,主要包括线性回归,岭回归,lasso回归,前向逐步回归。2、线性回归线性回归主要用于处理线性数据,结果易于理解,计算复杂度不高,但是处理... 查看详情

机器学习之回归篇(代码片段)

机器学习之回归篇(一)一、综述?回归就是从一组数据出发,确定某些变量之间的定量关系式,也就是建立数学模型并估计未知参数。回归的目的是预测数值型的目标值,它的目标是接受连续数据,寻找最适合数据的方程,并... 查看详情