机器学习和数据挖掘的联系与区别

一、机器学习概率

机器学习的算法有很多,这里从两个方面进行介绍:一个是学习方式,另一个是算法类似性。

1.学习方式

根据数据类型的不同,对一个问题的建模可以有不同的方式

1)监督学习:

在监督学习下,输入数据被称为“训练数据”,每组训练数据都有一个明确的标识或结果,如对防垃圾邮件系统中的“垃圾邮件”、“非垃圾邮件”,对手写数字识别中

的“1”、“2”、“3”、“4”等。在建立预测模型的时候,监督学习建立一个学习过程,将预测结果与“训练数据”的实际结果进行比较,不断地调整预测模型,直到模型的预测结果达到一个预期的准确率。监督学习的常用应用场景包括分类问题和回归问题。常用算法有逻辑回归和反向传递神经网络。

2)非监督学习:

在非监督学习下,数据并不被特别标识,学习模型是为了推断出数据的一些内在结构。常见的应用场景包括关联规则的学习及聚类等。常用算法包括Apriori算法和K-means算法。

3)半监督学习:

在半监督学习下,输入数据部分被标识,部分没有被标识。这种学习模型可以用来进行预测,但是模型首先需要学习数据的内在结构,以便合理地组织数据进行预测。其应用场

景包括分类和回归。常用算法包括一些对常用监督学习算法的延伸。这些算法首先试图对未标识的数据进行建模,然后在此基础上对标识的数据进行预测,如图论推理算法或拉

普拉斯支持向量机等。

4)强化学习:

在强化学习下,输入数据作为对模型的反馈,不像监督模型那样,输入数据仅仅作为一种检测模型对错的方式。在强化学习下,输入数据直接反馈到模型,模型必须对比立刻做

出调整。常见的应用场景包括动态系统及机器人控制等。常见算法包括Q-Learning及时间差学习(Temporal Difference Learning)等。



2.算法类似性

1)回归算法:

回归算法是试图采用对误差的衡量来探索变量之间的关系的一类算法。回归算法是统计机器学习的利器。常用的回归算法包括最小二乘法、逻辑回归、逐步式回归、多元自适应

回归等及本地散点平滑估计等

2)基于实例的算法:

基于实例的算法常常用于对决策问题建立模型,这样的模型常常先选取一批样本数据,然后根据某些近似性把新数据与样本数据进行比较,从而找到最佳的匹配。因此,基于实

例的算法常常被称为“赢家通吃学习”或“基于记忆的学习”。常见的算法包括K-Nearest Neishoor(KNN)、学习矢量量化(Learning Vector Quantization,LVQ)及自组织映射算法

(Self-Organizing Map,SOM)等。


3)决策树算法:

决策树算法根据数据的属性采用树状结构建立决策模型,常用来解决分类和回归问题。常用算法包括分类及回归树(Classification and Regression Tree, CART)、

ID3(Tterative Dishotomiser 3)、C4.5、Chi-squared Automatic Interaction Detcctim(CHAID)、Decision Stump、随机森林(Random Forest)、多元自适应回归样条

(MARS)及梯度推进机(GBM)等。


4)正则化算法:

正则化算法是其他算法(通常是回归算法)的延伸,根据算法的复杂度对算法进行调整。正则化算法通常对简单模型予以奖励,而对复杂算法予以惩罚。常用的算法包括Ridge 

Regression、Least Absolute Shrinkage and Selection Operator(LASSO)及弹性网络(Elastic Net)等。

5)贝叶斯算法:

贝叶斯算法是基于贝叶斯定理的一类算法,主要用来解决分类和回归问题。常见的算法包括朴素贝叶斯算法、平均单依赖估计Averaged One-Dependence Estimators (AODE)

及Bayesian Belief Network (BBN) 等。


6)基于核的算法:

基于核的算法中最著名的莫过于支持向量机(SVM)。基于核的算法是把输入数据映射到一个高阶的向量空间,在这些高阶向量空间里,有些分类或者回归问题能够更容易地

解决。常用的基于核的算法包括支持向量机(Support Vector Machine,SVM)、径向基函数(Radial Basis Function,RBF)及线性判断分析(Linear Discrtminate 

Analgsts,LDA)等。


7)聚类算法:

聚类算法通常按照中心点或者分层的方法对输入数据进行归并。所有的聚类算法都试图找到数据的内在结构,以便按照最大的共同点将数据进行归类。常见的聚类算法包括K-

Means算法及期望最大化算法(EM)等。

8)关联规则学习:

关联规则学习通过寻找最能够解释数据变量之间关系的规则,来找出大量多元数据集中有用的关联规则。常见的算法包括Apropri算法以及Eclat算法等。

9)人工神经网络算法:

人工神经网络算法模拟生物神经网络,是一类模式匹配算法,通常用于解决分类和回归问题。人工神经网络是机器学习的一个庞大的分支,有几百种不同的算法(深度学习就是

其中的一类算法)。常见的人工神经网络算法包括感知神经网络、反向传递、Hopfield网络、自组织映射及学习矢量量化等。

10)深度学习算法:

深度学习算法是对人工神经网络的发展,在计算能力变得日益廉价的今天,深度学习算法试图建立大得多也复杂得多的神经网络。很多深度学习算法是半监督学习算法,用来处

理存在少量未标识数据的大数据集。常见的深度学习算法包括受限波尔滋曼机(RBN)、Deep Belief Networks(DBN)、卷积网络(Convolutional Network)及堆栈式自动编

码器(Stavked Auto-encoders)等。


11)降低维度算法:

与聚类算法一样,降低维度算法试图分析数据的内在结构,不过降低维度算法通过非监督学习、试图利用较少的信息来归纳或者解释数据。这类算法可以用于高维数据的可视

化,或者用来简化数据以便监督学习使用。常见的降低维度算法包括主成分分析(Principal Components Analysis,PCA)、偏最小二乘回归(Partial Least Squares Regression,PLSR)、Summon映射、多维尺度(Multi-Dimensional Scaling,MDS)及投影追踪(Projection Pursuit)等。

12)集成算法:
集成算法用一些相对较弱的学习模型独立地就同样的样本进行训练,然后把结果整合起来进行整体预测。集成算法的主要难点在于究竟集成哪些独立的、较弱的学习模型,以及如何把学习结果整合起来。这是一类非常强大的算法,同时也非常流行。常见的集成算法包括Boosting、Bootstrapped Aggregation、AdaBoost、堆叠泛化(Stacked Generalization,Blending)、梯度推进机(Gradient Boosting Machine,GBM)及随机森林(Random Forest)等。

猜你喜欢

转载自blog.csdn.net/zhaocen_1230/article/details/79477038