本文主要介绍一些常见的机器学习算法。
定义
机器学习是用特定的算法从大量数据中挖掘有用的信息,或是输出最优模型用以做预测、分类、或是探究数据内在结构与隐藏信息。(新人陋见)
分类
- 监督学习:数据集有标签,可监督模型的优劣,主要从训练数据集中学习,得到最优模型,这个模型可以作用于测试数据集,给出判断或预测,常见的是分类和回归。
- 非监督学习:数据集没标签,主要是挖掘数据中有价值的隐藏信息,常见的是聚类。
- 强化学习:数据集没有标签,但是需要指定一个“奖惩机制”,让计算机先做完全随机的操作,不断地尝试,从奖惩反馈中学习,形成策略,达到最优目的。
主流分类是以上三大类,但是这里额外提一下还有半监督学习、集成学习、深度学习等。
介绍
-
监督学习
1.分类
(1)K-近邻算法(k-Nearest Neighbors,KNN)
(2)决策树(Decision Trees)
(3)朴素贝叶斯(Naive Bayesian)
(4)逻辑回归(Logistic Regression)
(5)支持向量机(SVM)
(6)神经网络
(7)集成学习:
1)Boosting:个体学习器有强依赖,必须串行生成序列方法:
AdaBoost
GBDT
XGBoost
2)Bagging:不存在强依赖,可同时生成的并行方法:
随机森林(Random Forest):bagging的扩展变体,在bagging的随机抽取训练集的基础上,又引入了随机属性选择。
3) Stacking:它不像bagging和boosting是同质组合,而是组合不同的模型
(*Tips)Bootstrap是一种有放回的抽样方法思想,包括以下两种方向:
1)Bagging采用有放回的均匀取样,训练集的选择是随机的;
2)Boosting根据错误率来取样,各轮训练集的选择与前面相关;
*Boosting的分类精度要优于Bagging。
2.回归
(1)线性回归(Linear Regression)
(2)回归树(Regression Tree)
-
非监督学习
1.聚类
(1)k-均值聚类(k-means)
(2)层次聚类(Hierarchical Clustering)
(3)基于密度聚类Mean Shift
(4)基于密度聚类DBSCAN
(5)高斯混合模型(GMM)与EM
2.降维
(1)主成分分析(PCA)
(2)独立成分分析(ICA)
(3)奇异值分解(SVD)
(4)t-SNE
(5)PCA
3.关联
(1)Apriori
(2)FP-Grouth