首页 理论教育 云计算发展及应用中的基于实例的算法及其分类

云计算发展及应用中的基于实例的算法及其分类

时间:2023-10-17 理论教育 版权反馈
【摘要】:根据算法的功能和形式的类似性,可以对算法进行分类,如基于树的算法、甚于神经网络的算法等。当然,机器学习的范围非常庞大,有些算法很难明确归到某一类。(二)基于实例的算法基于实例的算法常常用来对决策问题建立模型,这样的模型常常先选取一批样本数据,然后根据某些近似性把新数据与样本数据进行比较,从而找到最佳的匹配。所有的聚类算法都试图找到数据的内在结构,以便按照最大的共同点将数据进行归类。

云计算发展及应用中的基于实例的算法及其分类

根据算法的功能和形式的类似性,可以对算法进行分类,如基于树的算法、甚于神经网络的算法等。当然,机器学习的范围非常庞大,有些算法很难明确归到某一类。而对于有些分类来说,同一分类的算法可以针对不同类型的问题。这里,我们尽量把常用的算法按照最容易理解的方式进行分类。

(一)回归算法

回归算法是试图采用对误差的衡量来探索变量之间的关系的一类算法。回归算法是统计机器学习的利器。常见的回归算法包括最小二乘法(Ordinary Least Square)、逻辑回归(Logistic Regression)、逐步式回归(Stepwise Regression)、多元自适应回归样条(Multivariate Adaptive Regression Splines)及本地散点平滑估计(Locally Estimated Scatterplot Smoothing)等。

(二)基于实例的算法

基于实例的算法常常用来对决策问题建立模型,这样的模型常常先选取一批样本数据,然后根据某些近似性把新数据与样本数据进行比较,从而找到最佳的匹配。因此,基于实例的算法常常被称为“赢家通吃学习”或者“基于记忆的学习”。常见的算法包括k-Nearest Neighbor(kNN)、学习矢量量化(Learning Vector Quantization,LVQ)及自组织映射算法(Self-Organizing Map,SOM)等。

(三)正则化算法

正则化算法是其他算法(通常是回归算法)的延伸,根据算法的复杂度对算法进行调整。正则化算法通常对简单模型予以奖励,而对复杂算法予以惩罚。常见的宽法包括Ridge Regression、Least Absolute Shrinkage and Selection Operator(LASSO)及弹性网络(Elastic Net)等。

(四)决策树算法

决策树算法根据数据的属性采用树状结构建立决策模型,常常用来解决分类和回归问题。常见的算法包括分类及回归树(Classification and Regression Tree,CART)、ID3(Iterative Dichotomiser 3)、C4.5、Chi-squared Automatic Interaction Detection(CHAID)、Decision Stump、随机森林(Random Forest)、多元自适应回归样条(MARS)及梯度推进机(Gradient Boosting Machine,GBM)等。

(五)贝叶斯算法

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

(六)基于核的算法

基于核的算法中最著名的莫过于支持向量机(SVM)。基于核的算法是把输入数据映射到一个高阶的向量空间,在这些高阶向量空间里,有些分类或者回归问题能够更容易地解决。常见的基于核的算法包括支持向量机(Support Vector Machine,SVM),径向基函数(Radial Basis Function,RBF)及线性判别分析(Linear Discriminate Analysis,LDA)等。(www.xing528.com)

(七)聚类算法

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

(八)关联规则学习

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

(九)人工神经网络算法

人工神经网络算法模拟生物神经网络,是一类模式匹配算法,通常用于解决分类和回归问题。人工神经网络是机器学习的一个庞大的分支,有几百种不同的算法(深度学习就是其中的一类算法)。常见的人工神经网络算法包括感知器神经网络(Perceptron Neural Network)、反向传递(Back Propagation)、Hopfield网络、自组织映射(Self-Organizing Map,SOM)及学习矢量量化(Learning Vector Quantization,LVQ)等。

(十)深度学习算法

深度学习算法是对人工神经网络的发展。在计算能力变得日益廉价的今天,深度学习算法试图建立大得多也复杂得多的神经网络。很多深度学习算法是半监督式学习算法,用来处理存在少量未标识数据的大数据集。常见的深度学习算法包括受限波尔兹曼机(Restricted Boltzmann Machine,RBN)、Deep Belief Networks(DBN)、卷积网络(Convolutional Network)及堆栈式自动编码器(Stacked Auto-encoders)等。

(十一)降低维度算法

与聚类算法一样,降低维度算法试图分析数据的内在结构,不过降低维度算法通过非监督式学习,试图利用较少的信息来归纳或者解释数据。这类算法可以用于高维数据的可视化,或者用来简化数据以便监督式学习使用。常见的降低维度算法包括主成分分析(Principle Component Analysis,PCA)、偏最小二乘回归(Partial Least Square Regression,PLSR)、Sammon映射、多维尺度(Multi-Dimensional Scaling,MDS)及投影追踪(Projection Pursuit)等。

(十二)集成算法

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

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈