机器学习的常用算法

机器学习

  • 机器学习的算法
    • 有监督学习算法
      • 线性回归算法 Linear Regression
      • 逻辑回归算法(Logistic Regression)
      • 支持向量机算法 (Support Vector Machine,SVM)
      • 决策树算法 Decision Tree
      • 随机森林算法(Random Forest)
      • 朴素贝叶斯算法(Naive Bayes)
      • 最近邻居/k-近邻算法 (K-Nearest Neighbors,KNN)
    • 无监督学习算法
      • k-平均算法(K-Means)
      • 降维算法(Dimensional Reduction)
    • 强化学习算法
      • 梯度提升算法 GBDT(Gradient Boosting Decision Tree)
  • 后记

机器学习的算法

        分为三大类:有监督学习、无监督学习、强化学习

有监督学习算法

线性回归算法 Linear Regression

        线性回归要处理的一类问题是:给定一组输入样本,和每个样本对应的目标值,需要在某一损失准则下,找到(学习到)目标值和输入值的函数关系,这样,当有一个新的样本到达时,可以预测其对应的目标值是多少。

        线性回归和线性分类很相似,但不同的是,线性回归的目标值是连续变量,线性分类的目标值是离散变量。

逻辑回归算法(Logistic Regression)

        逻辑回归是一种学习某个事件发生概率的算法。利用这个概率,可以对某个事件发生或不发生进行二元分类。所以,虽然算法的名字中包含 “回归” 二字,但其实是一种分类算法。

支持向量机算法 (Support Vector Machine,SVM)

        核方法的一个常见解释是 “将数据移动到另一个特征空间,然后进行线性回归”。

        假设有一个比训练数据更高维的空间,训练数据中的每一个点都对应着这个高维空间中的一个点。在这个高维空间中,训练数据对应的点是可以线性分离的,实际的训练数据是来自该高维空间的投影。一旦有了这样的空间模型,模型就可以在高维空间使用支持向量机来学习决策边界。最后,将高维空间的决策边界投影到由原始特征形成的向量空间上,得到决策边界。

        使用不同的核函数,得到的决策边界的形状也不同。但是使用核方法后,我们就无法清楚地知道支持向量机使用的是什么特征了。所以,核方法适合用于 相比特征的可解释性,更看重精度 的场景。

决策树算法 Decision Tree

        决策树算法是一种逼近离散函数值的方法。它是一种典型的分类方法,首先对数据进行处理,利用归纳算法生成可读的规则和决策树,然后使用决策对新数据进行分析。本质上决策树是通过一系列规则对数据进行分类的过程。
决策树方法最早产生于上世纪60年代,到70年代末。由J Ross Quinlan提出了ID3算法,此算法的目的在于减少树的深度。但是忽略了叶子数目的研究。C4.5算法在ID3算法的基础上进行了改进,对于预测变量的缺值处理、剪枝技术、派生规则等方面作了较大改进,既适合于分类问题,又适合于回归问题。

        决策树算法构造决策树来发现数据中蕴涵的分类规则.如何构造精度高、规模小的决策树是决策树算法的核心内容。决策树构造可以分两步进行。第一步,决策树的生成:由训练样本集生成决策树的过程。一般情况下,训练样本数据集是根据实际需要有历史的、有一定综合程度的,用于数据分析处理的数据集。第二步,决策树的剪枝:决策树的剪枝是对上一阶段生成的决策树进行检验、校正和修下的过程,主要是用新的样本数据集(称为测试数据集)中的数据校验决策树生成过程中产生的初步规则,将那些影响预衡准确性的分枝剪除。

随机森林算法(Random Forest)

        随机森林的目标是利用多个决策树模型,获得比单个决策树更高的预测精度。

        随机森林的多数表决就像找别人商量事情一样,不只听一个人的意见,而是在听取许多人的意见之后综合判断。机器学习也一样,通过创建多个模型,采取多数表决的方式,可以期待获得更为妥当的结果。

朴素贝叶斯算法(Naive Bayes)

        朴素贝叶斯是一个基于概率进行预测的算法,在实践中被用于分类问题。具体来说,就是计算数据为某个标签的概率,并将其分类为概率值最大的标签。朴素贝叶斯主要用于文本分类和垃圾邮件判定等自然语言处理中的分类问题。

        朴素贝叶斯是自然语言分类的基础算法,但是不适合预测天气预报中的降水概率那种预测值是概率本身的情况。朴素贝叶斯基于 “每个单词的概率可以独立计算” 的假设,就是为了使概率的计算方法尽量简单。

最近邻居/k-近邻算法 (K-Nearest Neighbors,KNN)

        KNN(K-Nearest Neighbor)算法是一种与众不同的机器学习算法,它只是机械地记住所有的数据。KNN 既可以用于分类,也可以用于回归。

        相较于其他算法要经历 “根据训练数据计算最佳参数” 的训练阶段和 “使用计算出的学习参数进行预测” 的预测阶段,KNN 在训练阶段不进行任何计算,直到进入预测阶段之后才进行具体的计算。

无监督学习算法

k-平均算法(K-Means)

        k-平均算法源于信号处理中的一种向量量化方法,现在则更多地作为一种聚类分析方法流行于数据挖掘领域。k-平均聚类的目的是:把n个点(可以是样本的一次观察或一个实例)划分到k个聚类中,使得每个点都属于离他最近的均值(此即聚类中心)对应的聚类,以之作为聚类的标准。k-平均聚类倾向于在可比较的空间范围内寻找聚类,期望-最大化技术却允许聚类有不同的形状。

降维算法(Dimensional Reduction)

        降维就是指采用某种映射方法,将原高维空间中的数据点映射到低维度的空间中。直观地好处是维度降低了,便于计算和可视化,其更深层次的意义在于有效信息的提取综合及无用信息的摈弃。

        主成分分析(Principal Component Analysis, PCA),将原有众多具有一定相关性的指标重新组合成一组少量互相无关的综合指标。
Dimensional Reduction

强化学习算法

梯度提升算法 GBDT(Gradient Boosting Decision Tree)

        梯度提升算法是集成算法中的一种,它的最基本分类器为CART二分类回归树,集成方式为梯度提升。是一种迭代的决策树算法,该算法由多棵决策树组成,所有树的结论累加起来做最终答案。它在被提出之初就和SVM一起被认为是泛化能力较强的算法。近些年更因为被用于搜索排序的机器学习模型而引起大家关注。GBDT是Boosting家族中另一个重要的算法梯度提升树。

后记

确实好久没更了,由于忙于比赛近6个月没更新新的文章了,在此道歉!
机器学习的算法大致就这些用的比较经常了,如果感兴趣的话可以收藏一下!
觉得好的话可以帮忙推推谢谢啦!

你可能感兴趣的:(机器学习,机器学习,算法,支持向量机)