机器学习中各个算法小结1

各个算法的步骤都是差不多的:

建模==> 目标函数==>采用最优化方法优化目标函数,求得参数

其中,前两步中一定要明确,此问题需要求得是什么参数

监督式学习

一、线性回归

1.1 线性回归能解决什么问题

  • 用来预测事物的发展,有一个具体的值。比如,根据已有的数据,学习参数,预测房价等等。
  • 找出重要的特征。(比如前向逐步线性回归,可以找到对因变量影响比较大的特征,停止对不重要特征的收集)。

1.2 线性回归的优缺点

  • 优点:
    简单方便,易于理解;
    可以得到具体的结果。
  • 缺点:
    哪种特征对结果影响比较大,以及该特征应该采用什么样的表达式,都只不确定,尤其是对于非线性的数据拟合不好。结果准确性不高。

1.3 线性回归的理论推导

1.3.1线性回归算法的三个步骤
  • 一、建模
    预测值 y ,是特征的线性函数,模型h(x)如下,参数为θ向量。
  • 二、定义目标函数
  • 三、最优化方法学习参数
    利用梯度下降法训练数据,学习到参数。
1.3.2 理论依据

(为什么用‘二次’的误差来衡量预测接近真实值的程度,而不是用绝对值或四次?)

不采用绝对值之和容易理解,误差会正负抵消。

采用二次的理论依据:
-- 假设误差 符合独立同分布,均值为零,方差是σ² 的高斯分布,于是可以表示出误差的概率密度P。
-- 用真实值与预测值之差代替误差,得到了给定x得到预测值y的概率密度。
-- 把整个数据集X作为输入,Y作为输出,可以得到极大似然函数。

我们想要做的,就是找到一个最好的θ,使得极大自然函数值最大,也就是,这个θ能够预测出最准确的y值。

--利用求极大似然的思想,先log,那么化简之后,最大化似然函数,也就是极小化 真实值与预测值之差的平方和了。

1.4 回归的其他算法

  • 局部加权线性回归:
    (并不是使用的特征越多越好,容易过拟合。反之容易欠拟合。)LWLR是一个非参数模型(没有需要利用优化算法学习的 参数)),因为每次进行回归计算都要遍历训练样本至少一次。
    所以应该根据数据的特点,设计学习算法,采用局部加权线性回归。只学习当前输入X周围的局部数据集。
    权值的计算公式不唯一,但是思想就是,当样例越接近要预测的点x那么权值就会越大。

  • 前向逐步回归(每次增大或减小一个特征的权值,若误差减小就替换当前权值。)

  • 岭回归,增加正则项,缩减不必要的特征参数,在数据特征特别多的情况下,可以指出那些是那些是不重要的。
    加正则项:不会过拟合。矩阵会满秩,正规方程会有解。

二、逻辑回归 与 分类

2.1逻辑回归适用的问题

  • 预测在不同的自变量的情况下,发生某种疾病,或者某种情况的概率有多大
  • 判别,分类,类似于预测,判断是否发生某种情况
  • 重要特征分析,可以通过考察某特征是否为影响结果的特征,找出主要得特征

2.2逻辑回归的优缺点

优点:

  • 利用逻辑回归函数,将值域限制在了0到1之间;
  • 便于理解

缺点:

  • 只能处理二分类问题,且必须线性可分
  • 预测结果呈“S”型,概率在两端变化很小,坡度太小,会导致一些区间的变量变化对目标概率没有影响。导致一些数据利用不充分。

2.3 逻辑回归的理论推导

2.3.1 建模知识背景
  • 想要用0-1之间的值表示输入X属于哪一类(0/1)的概率,首先需要选定一个合适的目标函数,使得不论输入什么X,都会输出0-1之间的值。

  • 排除线性回归,单位阶跃函数(虽然值域满足要求,但是不连续,不适用优化算法)。于是采用逻辑回归函数。

  • 逻辑回归的公式说明,自变量θx的值越大,预测值越接近1.并且,g(z)有一个性质

机器学习中各个算法小结1_第1张图片
2.3.2 逻辑回归算法的三个 步骤
  • 一、建模

对于单个样例来说说,作为判别模型,就是求条件概率。于是得到模型:在样例x的情况下,y的概率为

这个模型的参数是θ

  • 二、建立目标函数

对于所有的样例,采用极大似然方法,要使预测的 准确率最高,就是找到最好的参数θ,使这个函数能够最大化

机器学习中各个算法小结1_第2张图片

log一下:

机器学习中各个算法小结1_第3张图片
  • 三、最优化方法得到参数

采用梯度下降方法:目标函数对θ进行求导(利用了知识背景中逻辑回归函数的性质),再进行更新

  • 四、进行预测

学习完参数以后,把需要进行的样例Xi输入到模型中,看y的大小就能预测了。



一般线性模型:
已知标签y的分布,服从指数族分布 ,那么可以利用假设的三个条件来得到需要预测的y值的模型。



三、Softmax Regression

是逻辑回归的泛化,适用于多分类的问题。

Softmax Regression算法的四个步骤:

一、建模
    1. 利用 一般线性模型中的三个假设条件,可以得到 输入x情况下
      y是第i类的概率
机器学习中各个算法小结1_第4张图片
    1. 那么预测值(每类的概率)的模型
机器学习中各个算法小结1_第5张图片

也就是说,我们的假设,就是输出对每个结果预测的概率。
这就是softmax regression中的假设模型了。

多分类问题中,若标签y服从多项式分布,用GLM来建模(如上所说),得到假设的模型,模型输出的结果是y作为每一类的概率(是一个向量)。

二、其余几个步骤。。。

采用极大似然,再用log作为目标函数,再通过优化方法,得到最终需要学习的参数。

生成模型(GDA和NB)

这两个模型最后的求解都是极大似然函数对参数求导。

生成模型的优缺点

  • 主要特点:
    一般主要是对后验概率建模

  • 优点:
    实际上带的信息要比判别模型丰富,
    研究单类问题比判别模型灵活性强
    数据量少也可以使用

  • 缺点:
    学习和计算过程比较复杂

  • 常见的主要有:
    Gaussians
    Naive Bayes
    Markov random fields

  • 主要应用:
    NLP等

四、高斯判别模型(GDA)

4.1高斯判别模型适用的问题

因为高斯判别模型属于生成模型,所以其数据中的特征向量要符合GDA的假设 即:特征向量,符合多值正态分布。

4.2 高斯判别模型方法的几个步骤

  • 一、建模

生成模型,需要知道每一类的后验概率,对此进行建模(x|y=0,x|y=1),还要知道先验概率y的分布。所以这个山羊问题共有三个公式。

所以高斯判别分析模型如下:

此模型预测结果需要由参数μ0,μ1,Σ,以及φ决定。

  • 二、定义目标函数

想要学习到参数使得预测的准确率最高,想到用最大似然估计法,于是可以得到目标函数
再根据上面的求‘’利用生成模型求得参数使p(x|y)p(y)最大‘’也就是求得参数使联合分布最大,于是得到最大似然估计:

有两个不同的特征均值,但假设协方差相同,反映在图上就是不同模型中心位置不同,但形状相同。这样就可以用直线来进行分隔判别。

  • 三、利用优化方法求得参数值

求导得到参数估计公式。于是学到了参数,可以用于预测了。

五、朴素贝叶斯模型(NB)

5.1朴素贝叶斯模型适用的问题

因为朴素贝叶斯模型属于生成模型,所以其数据中的特征向量要符合NB的假设 即:特征向量,符合条件独立。

5.2 高斯判别模型方法的几个步骤

  • 一、建模

后验概率的模型:

先验概率的模型:

因为假设了是条件独立的,所以直接选择上面三个 φ作为参数,是可以直求得的。

  • 二 建立目标函数

选择以上三个作为参数,想要学得参数再训练数据上概率积最大, 得到最大似然估计

上式中,右侧
p(x,y)
=p(x,y|φi|y=0i|y=1y)
=p(x|y;φi|y=0i|y=1)p(y;φy)

可知,这三个参数能够限制,也能够求出p(x,y)。就相当于线性回归中的θ,也相当于高斯判别分析(GDA)中的均值和方差。
比如p(x=1,y=1)可由φi|y=1y求出。

  • 三、求导,可得

机器学习中各个算法小结1_第6张图片

最后一个式子是表示y=1的样本数占全部样本数的比例,前两个表示在y=1或0的样本中,特征Xj=1的比例。

5.3 朴素贝叶斯模型的优缺点

  • 优点:
    对小规模的数据表现很好,能处理多分类任务
    算法也比较简单,常用于文本分类。
  • 缺点:
    需要计算先验概率;
    对输入数据的表达形式很敏感。

你可能感兴趣的:(机器学习中各个算法小结1)