模型分类与常用算法介绍

模型分类与常用算法介绍

  • 1. 模型分类
    • 1.1. 判别模型VS生成模型
      • 1.1.1. 判别模型
      • 1.1.2. 生成模型
    • 1.2. 概率模型VS非概率模型
      • 1.2.1. 概率模型
      • 1.2.2. 非概率模型
    • 1.3. 参数模型 VS 非参数模型
      • 1.3.1. 参数模型
      • 1.3.2. 非参数模型
    • 1.4. 有监督模型 VS 无监督模型
      • 1.4.1. 有监督模型
      • 1.4.2. 无监督模型
  • 2. 算法
    • 2.1. 数学建模常用的十大算法
    • 2.2. 算法与模型的关系

参考博文:
https://zhuanlan.zhihu.com/p/141479758
https://zhuanlan.zhihu.com/p/350307389
https://zhuanlan.zhihu.com/p/37821985

1. 模型分类

1.1. 判别模型VS生成模型

1.1.1. 判别模型

由数据直接学习决策函数或者条件概率分布作为预测的模型,即判别模型。基本思想是有限样本条件下建立判别函数,不考虑样本的产生模型,直接研究预测模型。
判别模型分为两种:
(1)直接对输入空间到输出空间的映射进行建模,也就是学习函数 h
在这里插入图片描述
(2)对条件概率P(y|x)进行建模,然后根据贝叶斯风险最小化的准则进行分类:
在这里插入图片描述

如感知机、逻辑斯特回归、支持向量机、神经网络、k近邻都属于判别学习模型。

1.1.2. 生成模型

由数据学习联合概率密度分布P(X,Y),然后求出条件概率分布P(Y|X)作为预测的模型,即生成模型:
在这里插入图片描述
基本思想是首先建立样本的联合概率概率密度模型P(X,Y),然后再得到后验概率P(Y|X),再利用它进行分类,就像上面说的那样。P(X)就是训练数据的概率分布。

生成算法尝试去找到底这个数据是怎么生成的(产生的),然后再对一个信号进行分类。基于你的生成假设,那么那个类别最有可能产生这个信号,这个信号就属于那个类别。判别模型不关心数据是怎么生成的,它只关心信号之间的差别,然后用差别来简单对给定的一个信号进行分类。

1.2. 概率模型VS非概率模型

1.2.1. 概率模型

概率模型指出了学习的目的是学出P(x,y)或P(y|x),但最后都是根据(I)来做判别归类。对于P(x,y)的估计,一般是根据乘法公式P(x,y) = P(x|y)P(y)将其拆解成P(x|y),P(y)分别进行估计。无论是对P(x|y),P(y)还是P(y|x)的估计,都是会先假设分布的形式,例如逻辑斯特回归就假设了Y|X服从伯努利分布。分布形式固定以后,剩下的就是分布参数的估计问题。

常用的估计有极大似然估计(MLE)和极大后验概率估计(MAP)等。其中,极大后验概率估计涉及到分布参数的先验概率,这为我们注入先验知识提供了途径。逻辑斯特回归、高斯判别分析、朴素贝叶斯都属于概率模型。

1.2.2. 非概率模型

非概率模型指的是直接学习输入空间到输出空间的映射h,学习的过程中基本不涉及概率密度的估计,概率密度的积分等操作,问题的关键在于最优化问题的求解。通常,为了学习假设h(x),我们会先根据一些先验知识(prior knowledge) 来选择一个特定的假设空间H(函数空间),例如一个由所有线性函数构成的空间,然后在这个空间中找出泛化误差最小的假设出来:

在这里插入图片描述

其中l(h(x),y)是我们选取的损失函数,选择不同的损失函数,得到假设的泛化误差就会不一样。由于我们并不知道P(x,y),所以即使我们选好了损失函数,也无法计算出假设的泛化误差,更别提找到那个给出最小泛化误差的假设。于是,我们转而去找那个使得经验误差最小的假设:
在这里插入图片描述

这种学习的策略叫经验误差最小化(ERM),理论依据是大数定律:当训练样例无穷多的时候,假设的经验误差会依概率收敛到假设的泛化误差。要想成功地学习一个问题,必须在学习的过程中注入先验知识。前面,我们根据先验知识来选择假设空间,其实,在选定了假设空间后,先验知识还可以继续发挥作用,这一点体现在为我们的优化问题(IV)加上正则化项上,例如常用的L1正则化,L2正则化等。

在这里插入图片描述
感知机、支持向量机、神经网络、k近邻都属于非概率模型。

1.3. 参数模型 VS 非参数模型

在统计学中,参数模型通常假设总体服从某个分布,这个分布可以由一些参数确定,如正态分布由均值和标准差确定,在此基础上构建的模型称为参数模型;非参数模型对于总体的分布不做任何假设或者说是数据分布假设自由,只知道其分布是存在的,所以就无法得到其分布的相关参数,只能通过非参数统计的方法进行推断。

所以说,参数模型和非参数模型中的“参数”并不是模型中的参数,而是数据分布的参数。 需要注意,有参数模型它的参数是有限的,可以指定出θ1,θ2,…,θn,而非参数模型也并不是没有参数,而是参数的数目很多。

1.3.1. 参数模型

参数机器学习模型由于指定了目标函数的形式,所以可以极大地简化这个学习的过程,但是同样会限制学习的过程。所以参数机器学习模型包括两个部分:

选择合适的目标函数的形式。
通过训练数据学习目标函数的参数。

举个线性回归的例子,线性回归作为常见的参数模型,它通过假设输入变量与输出变量之间具有线性关系,然后就可以设置目标函数为 Y = aX + bY,需要做的就是通过合适的方法如最小二乘法来拟合目标函数的参数。

常见的参数机器学习模型有:
1、逻辑回归(logistic regression)
2、线性成分分析(linear regression)
3、感知机(perceptron)

参数机器学习算法有如下优点:
1、简洁:理论容易理解和解释结果。
2、快速:参数模型学习和训练的速度都很快。
3、数据更少:通常不需要大量的数据,在对数据的拟合不很好时表现也不错。

参数机器学习算法的局限性:
1、拘束:以指定的函数形式来指定学习方式。
2、有限的复杂度:通常只能应对简单的问题。
3、拟合度小:实际中通常无法和潜在的目标函数完全吻合,也就是容易出现欠拟合。

1.3.2. 非参数模型

非参数机器学习算法对目标函数形式不做过多的假设,因此算法可以通过对训练数据进行拟合而学习出某种形式的函数。
决策树
朴素贝叶斯
支持向量机
神经网络

非参数机器学习算法的优势有:
1、可变性:可以拟合许多不同的函数形式。
2、模型强大:对于目标函数不做假设或者作出很小的假设。
3、表现良好:对于训练样本数据具有良好的拟合性。

非参数机器学习算法的局限性:
1、需要更多数据:对于拟合目标函数需要更多的训练数据。
2、速度慢:因为需要训练跟多的参数,所以训练过程通常比较慢。
3、过拟合:有较高的风险发生过拟合,对于预测的效果解释性不高。

1.4. 有监督模型 VS 无监督模型

1.4.1. 有监督模型

监督模型是指模型在训练过程中根据数据输入和输出进行学习,监督学习模型包括分类(classification)、回归(regression)和标注(tagging)等模型。

1.4.2. 无监督模型

无监督模型是指从无标注的数据中学习得到模型,主要包括聚类(clustering)、降维(dimensionality reduction)和一些概率估计模型。

2. 算法

2.1. 数学建模常用的十大算法

1)蒙特卡罗算法。
该算法又称随机性模拟算法,是通过计算机仿真来解决问题的算法,同时可以通过模拟来检验自己模型的正确性。

2)数据拟合、参数估计、插值等数据处理算法。
通常会遇到大量的数据需要处理,而处理数据的关键就在于这些算法。

3)线性规划、整数规划、多元规划、二次规划等规划类算法。
建模竞赛大多数问题属于最优化问题,很多时候这些问题可以用数学规划算法来描述,通常使用Lindo、Lingo 软件求解。

4)图论算法。
这类算法可以分为很多种,包括最短路、网络流、二分图等算法,涉及到图论的问题可以用这些方法解决。

5)动态规划、回溯搜索、分治算法、分支定界等计算机算法。
这些算法是算法设计中比较常用的方法。

6)最优化理论的三大非经典算法:模拟退火算法、神经网络算法、遗传算法。
这些问题是用来解决一些较困难的最优化问题的,对于有些问题非常有帮助,但是算法的实现比较困难,需慎重使用。

7)网格算法和穷举法。
两者都是暴力搜索最优点的算法,当重点讨论模型本身而轻视算法的时候,可以使用这种暴力方案,最好使用一些高级语言作为编程工具。

8)一些连续数据离散化方法。
很多问题都是实际来的,数据可以是连续的,而计算机只能处理离散的数据,因此将其离散化后进行差分代替微分、求和代替积分等思想是非常重要的。

9)数值分析算法。
比如方程组求解、矩阵运算、函数积分等算法。

10)图象处理算法。
与图形有关问题。

2.2. 算法与模型的关系

在机器学习中,模型指代的是目标函数,算法则是求解该目标函数的方法。

你可能感兴趣的:(算法,分类,人工智能)