回归算法那一抹风

凡事皆有因果关系,解读“回归”二字,其实就是由因回溯果的过程,最终得到的因与果的关系,就称为回归。回归其实就是一个名词,没有特别的含义。

下面用一个大众的例子来更加形象的解释何为回归。【根据销售产品预测营销额(实际中,此类数据挖掘问题可帮助商家合理的进货与最大化利润)】

这是一部分数据。观察数据一共有3个维度的因素影响最终的营销额。先拿部分数据集出来可视化,观察自变量与因变量间的关系。

通过Python可视化数据,可以看到产品销量与营销额的关系看似是线性的。其实实际中真的是这样做的,只不过在数据的获取和特征选择上做更多的功夫。所以,在此可以通过建立回归模型来分析这个业务问题。

这里先不考虑如何写代码的细节,直接上图清晰的看出回归模型的由来与作用。

由以上的图片看出来,由各个产品的销量与营销额建立回归模型:

相信,看到这里应该对回归有了基本的了解了,实质就是通过对影响数据与被影响数据之间的关系建立数学模型(几何上是直线或曲线),然后使用这个模型来预测或分类。

下面对只对线性回归做分析,因为在实际解决问题中,一般是选用线性回归的,因为要节省计算量和省去模型的复杂度,很大时候简单就是美呢。

线性回归模型建立一句话概括:通过大量的训练出一个与数据拟合效果最好的模型,实质就是求解出每个特征自变量的权值θ。

当然在训练的过程中,特征的选择,拟合优化等都是要考虑的,因为不可能训练一个模型要一个月把?更不可能训练出来一个与真实情况不适应的模型吧?我们要利用一些算法和工具来更快更好的训练出适用的线性回归模型。

我们要做的工作是确定每个权值θ或者通过算法逼近真实的权值θ,针对这两种情况,诞生出两种常用的解决方法:最小二乘法和梯度下降法。

上面的式子可看做是似然函数。似然函数其实是一种转换思想的方法。对于上面的式子,我们本来相求的是当y最小的时候,确定各个权值θ,由此确定线性回归方程。但是可以利用极大似然估计来求解,当求出或逼近得出各权值θ使误差ξ最小时,这时的y即线性回归方程就是我们想要的线性回归模型。这样就把问题转换为如何求解当θ是什么值时误差ε最小。

上式意思为当θ为何值时使xi得到最小的yi的最大概率。这是一个特征向量的表示方法,那么全部的特征向量的表示方法是:

思想是在获得损失函数(在此是上面的目标函数)后,对其求导,获得n个方程,建立方程组来求解。

至此,我们得到了最终要确定θ的目标函数.求解此目标函数有两种常用的方法:最小二乘法和梯度下降法。

对上面的目标函数转换一下:

但是一般在大数据的情况下不使用最小二乘法,因为它的计算繁琐,假如有n多维数据,那么建立的方程组就会很多,计算量会非常大。一般在大数据和机器学习中,会使用优化的求解方法——梯度下降法。

梯度下降法是一种迭代求最优(全局最优(如果是凸函数)or局部最优(非凸函数))的算法。在大数据情况下,数据的特征维度很多维,那么此时对其使用最小二乘法计算量会很大。而且机器学习的思想也是通过计算机来自我迭代运算求出最优。那么梯度下降法就是一种很好的应用了。

人在山顶下,有n多条路径下到山的最底部。如果运用梯度下降法来计算路径的话。其主要思想是:人从山顶当前位置计算所有方向的偏导(即对各个方向维度求偏导),求出当前位置的各个偏导后,得到各个偏导函数的最小值,最小值即当前位置的梯度(因为这里是要找的是最小值,所以应该是梯度的反方向,所以称为梯度下降法。)。一致迭代的计算各个位置的梯度,那么总的趋势肯定是沿着下降的趋势的,迭代停止的条件是走到最低处或者迭代条件结束(比如迭代次数或者近似于最低处)。

R越大,拟合效果越好。R的最优值为1。

只要特征变量的数目不大,标准方程是一个很好的计算参数θ的方法。一般地,特征变量数量小于一万,通常使用标准方程法,而不使用梯度下降法。

但是算法越复杂,例如逻辑回归算法,并不能使用标准方程法。对于那些更复杂的学习算法,将不得不仍然使用梯度下降法。因此,梯度下降法是一个非常有用的算法,可以用在有大量特征变量的线性回归问题。

回归模型能够解决预测和分类问题。根据自变量的个数分为一元和多元回归;根据是否线性关系分为线性回归和非线性回归。在求解回归模型时要在特定的情况下选用对应的方法,在维度小或线性回归时可选用最小二乘法,但是在Logistic回归时应选用梯度下降法。

THE END
1.www.stats.gov.cn/zsk/snapshoot?reference=d466cfa12a8d807d0知识库 知识分类:|知识来源: |发布日期:https://www.stats.gov.cn/zsk/snapshoot?reference=d466cfa12a8d807d0c267a76a75d1e42_BF0DA741DD9357F095D4CF7C9AB890EE
2.这才是科研人该学的!一口气学完线性回归多项式回归决策树等【多项式回归】多项式升维代码实战_训练模型和评估 11:23 【多项式回归】实战保险花销预测_数据介绍和加载数据 14:45 【多项式回归】实战保险花销预测_数据预处理 18:33 【多项式回归】实战保险花销预测_模型训练和评估_选择非线性算法改进 25:31 【多项式回归】实战保险花销预测_特征选择思路 https://www.bilibili.com/list/ml2060661446
3.逻辑回归模型逻辑回归的损失函数,我们期待所有样本评估正确的概率最大化,将损失函数设计成带负号即可 又由于损失函数中有大量的乘号,为计算方便,再套一个对数,最后损失函数如下: 5.逻辑回归-模型求解 现在需要求解逻辑回归模型里的参数W,使得损失函数最小, 也就是令预测概率准确性最大化求解方法可以使用梯度下降算法 求解逻辑回https://zhuanlan.zhihu.com/p/676546522
4.神经网络回归模型有哪些神经网络是回归算法吗Logistic Regression(逻辑回归) Decision Trees(决策树) Random Forests(随机森林) Neural Networks(人工神经网络 NNs)——深度学习算法 人工神经网络(Artificial Neural Networks,简写为ANNs)也简称为神经网络(NNs)或称作连接模型(Connection Model),它是一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型https://blog.51cto.com/u_16099346/7922482
5.数据挖掘的常见算法有哪些?关联规则算法关联规则算法是一种用于发现数据集中的频繁项集(即出现频率高的数据项集合)的算法。该算法可以帮助识别不同商品之间的关系,以及购物篮分析等应用领域。Apriori和FP-Growth是两种常见的关联规则算法。 4.回归算法 回归算法是一种用于建立输入和输出之间关系的算法。它们通常用于预测连续值,如房价、股票价格等https://www.cda.cn/bigdata/202782.html
6.最全整理万字长文综述目标检测领域,您要的,都在这里!在这方面,主要有两种主流的算法: 一类是结合regionproposal、CNN网络的,基于分类的R-CNN 系列目标检测框架(two stage); 另一类则是将目标检测转换为回归问题的算法(single stage)。 03 PART 传统的目标检测算法 传统的目标检测算法大致可以分为目标实例检测与传统目标类别检测两类: https://cloud.tencent.com/developer/article/1640419
7.机器学习之常用算法总结在此学习方式下,输入数据部分被标识,部分没有被标识,这种学习模型可以用来进行预测,但是模型首先需要学习数据的内在结构以便合理的组织数据来进行预测。应用场景包括分类和回归,算法包括一些对常用监督式学习算法的延伸,这些算法首先试图对未标识数据进行建模,在此基础上再对标识的数据进行预测。如图论推理算法(Graph Inferehttps://m.blog.csdn.net/dahuacai/article/details/50493686
8.轻松看懂机器学习十大常用算法西南石油大学通过本篇文章大家可以对ML的常用算法形成常识性的认识。没有代码,没有复杂的理论推导,仅是图解,介绍这些算法是什么以及如何应用(例子主要是分类问题)。以后有机会再对单个算法做深入地解析。 一、决策树 二、随机森林算法 三、逻辑回归 四、SVM 五、朴素贝叶斯 https://www.swpu.edu.cn/eelab/info/1090/2296.htm
9.回归分类与聚类:三大方向剖解机器学习算法的优缺点机器之心分类方法是一种对离散型随机变量建模或预测的监督学习算法。使用案例包括邮件过滤、金融欺诈和预测雇员异动等输出为类别的任务。 许多回归算法都有与其相对应的分类算法,分类算法通常适用于预测一个类别(或类别的概率)而不是连续的数值。 2.1 Logistic 回归(正则化) https://www.jiqizhixin.com/articles/2017-05-20-3
10.BAT机器学习面试1000题系列(二)176.常见的分类算法有哪些? SVM、神经网络、随机森林、逻辑回归、KNN、贝叶斯 177.常见的监督学习算法有哪些? 感知机、SVM、人工神经网络、决策树、逻辑回归 178.在其他条件不变的前提下,以下哪种做法容易引起机器学习中的过拟合问题(D) A. 增加训练集量 https://www.jianshu.com/p/4a7f7127eef1