回归是一种通过建模和分析变量之间关系的的方法,其目的是通过模型来计算得出一个具体的值。回归模型有两种,一种是可以用一条回归线拟合的数据,有明显的函数关系,可以通过线性性回归等方式进行拟合;第二种就是无明显线性关系,这时候就认为长得相似的样本值也相同。常用算法如下:

一、线性回归

(一)原理

回归分析用来确定两种或两种以上变量间相互依赖的定量关系,其表达形式为y = w'x+e,其中只有一个自变量的情况称为简单回归,多个自变量的情况叫多元回归。

目标函数:预测值与实际值的误差平方和。误差越小匹配越好。




传统回归算法 机器学习算法 常用的回归算法有哪些_线性回归


(二)优缺点

1.优点

  • 结果易于理解,计算不复杂

2.缺点

  • 对非线性的数据拟合不好
  • 当特征冗余,即如果存在多重共线性时,线性回归就不太稳定
  • 对异常值敏感

二、岭回归

(一)原理

线性回归无法用于特征变量间存在高共线性的情况。岭回归在线性回归的基础上加上了L2正则化参数,L2正则项起到使得参数w变小加剧的效果,L2正则化参数目的是使损失函数最小,保持各项参数的最小,可以有效的防止过拟合。

岭回归是一种专用于共线性数据分析的有偏估计回归方法,实质上是一种改良的最小二乘估计法,通过放弃最小二乘法的无偏性,以损失部分信息、降低精度为代价,获得回归系数更为符合实际、更可靠的回归方法,对病态数据的耐受性远远强于最小二乘法。

目标函数:在模型中引入少量偏差,但大大减小了方差


传统回归算法 机器学习算法 常用的回归算法有哪些_传统回归算法 机器学习算法_02


正则化项的目的是:使损失函数最小,保持各项参数的最小,拉姆大控制这两者的关系。

(二)优缺点

优点

  • 岭回归可以解决特征数量比样本量多的问题,解决过拟合的问题
  • 岭回归作为一种缩减算法可以判断哪些特征重要或者不重要,有点类似于降维的效果
  • 缩减算法可以看作是对一个模型增加偏差的同时减少方差

缺点

  • 通常岭回归方程的R平方值会稍低于普通回归分析,但回归系数的显著性往往明显高于普通回归,在存在共线性问题和病态数据偏多的研究中有较大的实用价值。
  • 适用情况:主要适用于过拟合严重或各变量之间存在多重共线性的时候

四、Lasso回归

(一)原理

lasso回归在线性回归的损失函数的基础上加上了L1正则化参数,L1正则项是为了使得那些原先处于零(即|w|≈0)附近的参数w往零移动,使得部分参数为零,从而降低模型的复杂度(模型的复杂度由参数决定),从而防止过拟合,提高模型的泛化能力。

Lasso 的基本思想是在回归系数的绝对值之和小于一个常数的约束条件下,使残差平方和最小化,从而能够产生某些严格等于0 的回归系数,得到可以解释的模型。

目标函数:


传统回归算法 机器学习算法 常用的回归算法有哪些_决策树_03


(二)优缺点

将Lasso应用于回归,可以在参数估计的同时实现变量的选择

较好的解决回归分析中的多重共线性问题

能够很好的解释结果.

一、knn(可用于分类和回归)

(一)基本原理

因为很多数据并非线性关系能表示的,knn是一种可以用来预测非线性关系数据的方法,认为长得像的数据各方面信息也相近。knn是一种常用的监督学习方法,给定测试样本,基于某种距离度量找出训练集中与其最靠近的k个训练样本,然后基于这k个“邻居”的信息来进行预测。

判定方法

  • 在分类任务中的可使用“投票法”,即选择这k个样本中出现最多的类别标记作为预测结果;
  • 在回归任务中可使用“平均法”,即将这k个样本的标记平均值作为预测结果。
  • 还可以根据距离远近,对样本进行加权,实现加权平均或加权投票。

(二)注意点

1、距离度量方法不同,找到的“近邻”也可能有显著区别,进而导致分类结果不同。通常是用欧式距离,即平方和开根号。

2、k在其中是一个相当重要的参数,k取值不同时,分类结果会有显著不同。

(三)优缺点

优点

  • 适合对稀有事件进行分类(例如当流失率很低时,比如低于0.5%,构造流失预测模型)
  • 特别适合于多分类问题(multi-modal,对象具有多个类别标签),例如根据基因特征来判断其功能分类,kNN比SVM的表现要好
  • 理论成熟,思想简单,既可以用来做分类也可以用来做回归;
  • 可用于非线性分类;
  • 训练时间复杂度为O(n);
  • 对数据没有假设,准确度高,对outlier不敏感;

缺点

  • 计算量大;
  • 样本不平衡问题(即有些类别的样本数量很多,而其它样本的数量很少);
  • 需要大量的内存。

五、分类和回归树(CART)

(一)原理

决策树用于回归的算法是CART(分类和回归树),可以解决非线性回归问题。其实质也是认为长得相似的样本的值会相同,决策树实质就是将样本数据进行层层细分,依据数据的特征划分为不同的块,认为每块数据的值相同。进行预测时只要确定预测的数据特征属于哪一块就可以确定最终的结果。

决策树是一种典型的分类方法,首先对数据进行处理,利用归纳算法生成可读的规则和决策树,然后使用决策对新数据进行分析。本质上决策树是通过一系列规则对数据进行分类的过程。

进行划分时的两个关注点:

如何确定分类的特征属性:基尼系数

按照什么样的值进行分裂:平方损失函数

(二)优缺点

优点

  • 计算简单,易于理解,可解释性强;
  • 比较适合处理有缺失属性的样本;
  • 能够处理不相关的特征;
  • 在相对短的时间内能够对大型数据源做出可行且效果良好的结果。

缺点

  • 可能会建立过于复杂的规则,即过拟合。
  • 决策树有时候是不稳定的,因为数据微小的变动,可能生成完全不同的决策树。
  • 实际决策树学习算法是基于试探性算法,例如在每个节点实现局部最优值的贪心算法。 这样的算法是无法保证返回一个全局最优的决策树。可以通过随机选择特征和样本训练多个决策树来缓解这个问题。
  • 有些问题学习起来非常难,因为决策树很难表达。如:异或问题、奇偶校验或多路复用器问题
  • 如果有些因素占据支配地位,决策树是有偏的。因此建议在拟合决策树之前先平衡数据的影响因子。
  • 不支持在线学习,于是在新样本到来后,决策树需要全部重建