机器学习—监督学习和无监督学习常见算法简述

数学好难哦

监督学习

监督学习是根据已有数据集,知道输入和输出结果之间的关系,然后根据这种已知关系训练得到一个最优模型。也就是说,在监督学习中,我们的训练数据应该既有特征又有标签,然后通过训练,使得机器能自己找到特征和标签之间的联系,然后在面对没有标签的数据时可以判断出标签。
在监督学习的范畴中,又可以划分为回归分类算法。

回归算法:

线性回归

分为单变量线性回归和多元线性回归,基于最小二乘法
最小二乘法证明

岭回归

通常用于指标中存在共线性的数据集的回归,通过放弃最小二乘法的无偏性,以损失部分信息、降低精度为代价获得回归系数更为符合实际、更可靠的回归方法,对病态数据的拟合要强于最小二乘法。
前提是要确定是指标集合内存在数据的共线性关系,这点很重要!
建模过程

lasso回归

LASSO 回归的特点是在拟合广义线性模型的同时进行变量筛选(variable selection)和复杂度调整(regularization)。因此不论目标因变量(dependent/response varaible)是连续的(continuous),还是二元或者多元离散的(discrete),都可以用 LASSO 回归建模然后预测。
该方法是一种压缩估计。它通过构造一个惩罚函数得到一个较为精炼的模型,使得它压缩一些回归系数,即强制系数绝对值之和小于某个固定值;同时设定一些回归系数为零。因此保留了子集收缩的优点,是一种处理具有复共线性数据的有偏估计。

梯度下降和正则化

  • 梯度下降法(gradient descent):是求解无约束优化问题的一种最常用的方法,实现简单,属于一阶优化算法,也是迭代算法。寻找损失函数的最低点,就像我们在山谷里行走,希望找到山谷里最低的地方。可以使用了微积分里导数,通过求出函数导数的值,从而找到函数下降的方向或者是最低点(极值点)。梯度下降的目的,就是为了最小化损失函数。
    损失函数里一般有两种参数,一种是控制输入信号量的权重(Weight),另一种是调整函数与真实值距离的偏差(Bias)。我们所要做的工作,就是通过梯度下降方法,不断地调整权重和偏差,使得损失函数的值变得越来越小。
    为什么不用直接求导?因为计算量太大!
    ->单变量线性模型可以得到的最优解这是从数学的角度上,直接求导就可以理论上得到最优解,但是实际的情况往往更加复杂,自变量会是一个更高维度的矩阵,这个时候采用求导的方式就不是那么合适了,从而产生了梯度下降算法
  • 正则化:目的:防止过拟合 ; 本质:约束(限制)要优化的参数

分类算法:

KNN(k邻近算法)

KNN和k-means要区别开来:

  • 【k-means】算法典型的基于距离的聚类算法,采用距离作为相似性的评价指标,即认为两个对象的距离越近,其相似度就越大
  • knn算法没有明显的前期训练过程,程序开始运行时,把数据集加载到内存后开始分类。

KNN算法过程

决策树算法

这部分周志华的机器学习讲的很好,我就不多赘述了

贝叶斯分类器

极大似然估计
朴素贝叶斯+高斯贝叶斯分类器

逻辑回归

施工中

SVM(支持向量机)

施工中

无监督学习

无监督学习和监督学习最大的不同是监督学习中数据是带有一系列标签。在无监督学习中,我们需要用某种算法去训练无标签的训练集从而能让我们我们找到这组数据的潜在结构。无监督学习大致可以分为聚类和降维两大类。

聚类

k-means(k-均值算法)

施工中

降维

PCA(主成分分析法)

降维的原理真的很难

posted @ 2022-10-17 21:58  月隐雲後  阅读(316)  评论(0编辑  收藏  举报