常见的机器学习算法

机器学习有三个要素:模型、策略和算法。其中,一些常见的机器学习算法,按使用起来简单的程度来排序如下:

决策树(Decision Tree)

一种广泛使用的分类算法。相比贝叶斯算法,决策树的优势在于构造过程不需要任何领域知识或参数设置,因此在实际应用中,对于探测式的知识发现,决策树更加适用。

优点:擅长对人、地点、事物的一系列不同特征、品质、特性进行评估。

场景举例:基于规则的信用评估、赛马结果预测。

支持向量机(Support Vector Machine)

其含义是通过“支持向量”运算的分类器。其中“机”的意思是机器,可以理解为分类器。什么是支持向量呢?在求解的过程中,会发现只根据部分数据就可以确定分类器,这些数据称为支持向量。例如,在一个二维环境中,其中点R,S,G点和其它靠近中间黑线的点可以看作为支持向量,它们可以决定分类器,也就是黑线的具体参数。

所以,支持向量机可以对数据群进行分类。

优点:支持向量机擅长在变量X与其它变量之间进行二元分类操作,无论其关系是否是线性的。

场景举例:新闻分类、手写识别。

回归(Regression)

回归可以勾画出因变量与一个或多个因变量之间的状态关系。回归问题属于有监督学习的范畴。回归问题的目标是给定D维输入变量x,并且每一个输入矢量x都有对应的值y,要求对于新来的数据预测它对应的连续的目标值t。

优点:回归可用于识别变量之间的连续关系,即便这个关系不是非常明显。

场景举例:路面交通流量分析、邮件过滤。

朴素贝叶斯分类(Naive Bayes Classification)

贝叶斯分类是一类分类算法的总称,这类算法均以贝叶斯定理为基础,故统称为贝叶斯分类。而朴素贝叶斯分类是贝叶斯分类中最简单,也是常见的一种分类方法。

朴素贝叶斯分类器用于计算可能条件的分支概率。

优点:对于在小数据集上有显著特征的相关对象,朴素贝叶斯方法可对其进行快速分类

场景举例:情感分析、消费者分类

隐马尔可夫模型(Hidden Markov model)

显马尔可夫过程是完全确定性的——一个给定的状态经常会伴随另一个状态。交通信号灯就是一个例子。相反,隐马尔可夫模型通过分析可见数据来计算隐藏状态的发生。随后,借助隐藏状态分析,隐马尔可夫模型可以估计可能的未来观察模式。

优点:容许数据的变化性,适用于识别(recognition)和预测操作。

场景举例:面部表情分析、气象预测。

随机森林(Random forest)

随机森林通过对训练集生成多个决策树,在决策时,每个树都会预测一个结果,通过对所有结果进行表决来避免过拟合。具体而言,利用随机的方式建立一个森林,森林里有很多的决策树组成,当有一个新的数据样本进入的时候,就让森林中每一棵决策树,分别进行判断其属于哪一类,然后看哪一类被选择最多,就预测这个样本为哪一类。

优点:随机森林方法被证明对大规模数据集和存在大量且有时不相关特征的项(item)来说很有用。

场景举例:用户流失分析、风险评估。

循环神经网络(Recurrent neural network)

在任意神经网络中,每个神经元都通过1个或多个隐藏层来将很多输入转换成单个输出。循环神经网络(RNN)会将值进一步逐层传递,让逐层学习成为可能。换句话说,RNN存在某种形式的记忆,允许先前的输出去影响后面的输入。

优点:循环神经网络在存在大量有序信息时具有预测能力。

场景举例:图像分类与字幕添加、政治情感分析。

长短期记忆(Long short-term memory,LSTM)

早期的RNN形式是会存在损耗的。尽管这些早期循环神经网络只允许留存少量的早期信息,新近的长短期记忆(LSTM)与门控循环单元(GRU)神经网络都有长期与短期的记忆。换句话说,这些新近的RNN拥有更好的控制记忆的能力,允许保留早先的值或是当有必要处理很多系列步骤时重置这些值,这避免了「梯度衰减」或逐层传递的值的最终degradation。LSTM与GRU网络使得我们可以使用被称为「门(gate)」的记忆模块或结构来控制记忆,这种门可以在合适的时候传递或重置值。

优点:长短期记忆和门控循环单元神经网络具备与其它循环神经网络一样的优点,但因为它们有更好的记忆能力,所以更常被使用。

场景举例:自然语言处理、翻译。

卷积神经网络(convolutional neural network)

带着一组固定权重的神经元是一个滤波器,多个滤波器叠加便成了卷积层。

因为每个神经元的多个权重固定,所以又可以看做一个恒定的滤波器filter)做内积(逐个元素相乘再求和)的操作就是所谓的『卷积』操作,也是卷积神经网络的名字来源。

卷积神经网络广泛用于图像检测,它的实现原理与传统神经网络基本上是一样的。

优点:当存在非常大型的数据集、大量特征和复杂的分类任务时,卷积神经网络是非常有用的。

场景举例:图像识别、文本转语音、药物发现。

你可能感兴趣的:(常见的机器学习算法)