支持向量机(Support Vector Machines, SVM)
K近邻算法(K-Nearest Neighbors, KNN)
主成分分析(Principal Component Analysis, PCA)
关联规则学习(Association Rule Learning)
降维算法(Dimensionality Reduction Algorithms)
线性判别分析(Linear Discriminant Analysis, LDA)
高斯混合模型(Gaussian Mixture Model, GMM)
隐马尔可夫模型(Hidden Markov Model, HMM)
1.监督学习算法
在监督式学习下,输入数据被称为“训练数据”,每组训练数据有一个明确的标识或结果,如对防垃圾邮件系统中“垃圾邮件”“非垃圾邮件”,对手写数字识别中的“1“,”2“,”3“,”4“等。在建立预测模型的时候,监督式学习建立一个学习过程,将预测结果与“训练数据”的实际结果进行比较,不断的调整预测模型,直到模型的预测结果达到一个预期的准确率。监督式学习的常见应用场景如分类问题和回归问题。常见算法有逻辑回归(Logistic Regression)和反向传递神经网络(Back Propagation Neural Network)
-
线性回归(Linear Regression)
- 原理:通过拟合最佳直线来建立输入和输出之间的关系,用于预测连续型变量。
- 应用场景:房价预测、销售额预测等。
-
逻辑回归(Logistic Regression)
- 原理:通过逻辑函数将线性回归的结果转换为概率值,用于二分类问题。
- 应用场景:垃圾邮件分类、疾病诊断等。
-
决策树(Decision Trees)
- 原理:基于树形结构进行分类或回归,通过一系列规则对数据进行划分。
- 应用场景:信贷风险评估、客户流失预测等。
-
支持向量机(Support Vector Machines, SVM)
- 原理:寻找最佳超平面来划分数据,使不同类别的数据点间隔最大。
- 应用场景:文本分类、图像识别等。
-
随机森林(Random Forest)
- 原理:集成多个决策树,通过投票或平均预测结果来做出决策。
- 应用场景:各种分类和回归问题。
-
K近邻算法(K-Nearest Neighbors, KNN)
- 原理:根据新数据点的K个最近邻的数据点进行分类或回归。
- 应用场景:文本分类、推荐系统等。
-
朴素贝叶斯(Naive Bayes)
- 原理:基于贝叶斯定理和特征条件独立性假设进行分类。
- 应用场景:垃圾邮件识别、新闻分类等。
2.非监督学习算法
在非监督式学习中,数据并不被特别标识,学习模型是为了推断出数据的一些内在结构。常见的应用场景包括关联规则的学习以及聚类等。常见算法包括Apriori算法以及k-Means算法。
-
K均值聚类(K-Means Clustering)
- 原理:将数据划分为K个簇,使得每个簇内的数据尽可能相似。
- 应用场景:客户细分、图像分割等。
-
主成分分析(Principal Component Analysis, PCA)
- 原理:通过正交变换将数据转换为线性不相关的变量(主成分)。
- 应用场景:数据降维、可视化等。
3.其他算法
-
集成方法(Ensemble Methods)
集成算法用一些相对较弱的学习模型独立地就同样的样本进行训练,然后把结果整合起来进行整体预测。集成算法的主要难点在于究竟集成哪些独立的较弱的学习模型以及如何把学习结果整合起来。
这是一类非常强大的算法,同时也非常流行。常见的算法包括:Boosting, Bootstrapped Aggregation(Bagging), AdaBoost,堆叠泛化(Stacked Generalization, Blending),梯度推进机(Gradient Boosting Machine, GBM),随机森林(Random Forest)。
- 原理:通过结合多个模型的预测结果来提高整体预测性能。
- 例子:Bagging、Boosting(如AdaBoost、Gradient Boosting)等。
-
神经网络(Neural Networks)
人工神经网络算法模拟生物神经网络,是一类模式匹配算法。通常用于解决分类和回归问题。人工神经网络是机器学习的一个庞大的分支,有几百种不同的算法。(其中深度学习就是其中的一类算法,我们会单独讨论),重要的人工神经网络算法包括:感知器神经网络(Perceptron Neural Network), 反向传递(Back Propagation), Hopfield网络,自组织映射(Self-Organizing Map, SOM)。学习矢量量化(Learning Vector Quantization, LVQ)- 原理:模拟人脑神经元的工作方式,进行模式识别和预测。
- 应用场景:图像识别、语音识别、自然语言处理等。
-
关联规则学习(Association Rule Learning)
关联规则学习通过寻找最能够解释数据变量之间关系的规则,来找出大量多元数据集中有用的关联规则。常见算法包括 Apriori算法和Eclat算法等。- 原理:发现数据项之间的有趣关系,如“购物篮分析”。
- 应用场景:推荐系统、市场分析等。
-
降维算法(Dimensionality Reduction Algorithms)
- 原理:减少数据的特征数量,同时保留主要信息。
- 例子:奇异值分解(SVD)、t-SNE等。
-
线性判别分析(Linear Discriminant Analysis, LDA)
基于核的算法中最著名的莫过于支持向量机(SVM)了。基于核的算法把输入数据映射到一个高阶的向量空间, 在这些高阶向量空间里, 有些分类或者回归问题能够更容易的解决。常见的基于核的算法包括:支持向量机(Support Vector Machine, SVM), 径向基函数(Radial Basis Function ,RBF), 以及线性判别分析(Linear Discriminate Analysis ,LDA)等。- 原理:用于分类和降维,通过最大化类间距离和最小化类内距离来寻找最佳投影方向。
- 应用场景:人脸识别、生物识别等。
-
Q学习(Q-Learning)
在这种学习模式下,输入数据作为对模型的反馈,不像监督模型那样,输入数据仅仅是作为一个检查模型对错的方式,在强化学习下,输入数据直接反馈到模型,模型必须对此立刻作出调整。常见的应用场景包括动态系统以及机器人控制等。- 原理:一种基于值的强化学习算法,通过更新Q值(状态-动作对的值)来学习最优策略。
- 应用场景:游戏AI、机器人控制等。
-
高斯混合模型(Gaussian Mixture Model, GMM)
- 原理:将数据建模为多个高斯分布的混合,用于聚类和密度估计。
- 应用场景:音频信号处理、图像分割等。
-
隐马尔可夫模型(Hidden Markov Model, HMM)
- 原理:用于序列数据的建模,如语音识别和文本生成。
- 应用场景:自然语言处理、生物信息学等。