附注:除了以上两大类模型,还有半监督学习和强化学习等其他类型的机器学习模型。半监督学习是指在有部分标签数据的情况下,结合监督学习和无监督学习的方法进行模型训练。强化学习是指通过让计算机自动与环境交互,学习出如何最大化奖励的策略。
不同的机器学习模型适用于不同的任务和场景。在实际应用中,需要根据具体的问题和数据特点选择合适的模型和方法。同时,机器学习也需要结合具体领域的知识和业务需求来进行深入研究和应用。
有监督学习通常是利用带有专家标注的标签的训练数据,学习一个从输入变量X到输入变量Y的函数映射。Y=f(X),训练数据通常是(n×x,y)的形式,其中n代表训练样本的大小,x和y分别是变量X和Y的样本值。
有监督学习可以被分为两类:
1.11线性回归
线性回归是指完全由线性变量组成的回归模型。在线性回归分析中,只包括一个自变量和一个因变量,且二者的关系可用一条直线近似表示,这种回归分析称为一元线性回归分析。如果回归分析中包括两个或两个以上的自变量,且因变量和自变量之间是线性关系,则称为多元线性回归分析。
1.12逻辑回归
用于研究Y为定类数据时X和Y之间的影响关系情况,如果Y为两类比如0和1(比如1为愿意和0为不愿意,1为购买和0为不购买),此时就叫二元逻辑回归;如果Y为三类以上,此时就称为多分类逻辑回归。
自变量并不一定非要定类变量,它们也可以是定量变量。如果X是定类数据,此时需要对X进行哑变量设置。
1.13Lasso
Lasso方法是一种替代最小二乘法的压缩估计方法。Lasso的基本思想是建立一个L1正则化模型,在模型建立过程中会压缩一些系数和设定一些系数为零,当模型训练完成后,这些权值等于0的参数就可以舍去,从而使模型更为简单,并且有效防止模型过拟合。被广泛用于存在多重共线性数据的拟合和变量选择。
1.14K近邻(KNN)
KNN做回归和分类的主要区别在于最后做预测时候的决策方式不同。KNN做分类预测时,一般是选择多数表决法,即训练集里和预测的样本特征最近的K个样本,预测为里面有最多类别数的类别。KNN做回归时,一般是选择平均法,即最近的K个样本的样本输出的平均值作为回归预测值。但它们的理论是一样的。
1.15决策树
决策树中每个内部节点都是一个分裂问题:指定了对实例的某个属性的测试,它将到达该节点的样本按照某个特定的属性进行分割,并且该节点的每一个后继分支对应于该属性的一个可能值。分类树叶节点所含样本中,其输出变量的众数就是分类结果。回归树的叶节点所含样本中,其输出变量的平均值就是预测结果。
1.16bp神经网络
bp神经网络是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一。bp神经网络的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的分类错误率最小(误差平方和最小)。
BP神经网络是一种多层的前馈神经网络,其主要的特点是:信号是前向传播的,而误差是反向传播的。具体来说,对于如下的只含一个隐层的神经网络模型:
BP神经网络的过程主要分为两个阶段,第一阶段是信号的前向传播,从输入层经过隐含层,最后到达输出层;第二阶段是误差的反向传播,从输出层到隐含层,最后到输入层,依次调节隐含层到输出层的权重和偏置,输入层到隐含层的权重和偏置。
1.17支持向量机(SVM)
支持向量机回归(SVR)用非线性映射将数据映射到高维数据特征空间中,使得在高维数据特征空间中自变量与因变量具有很好的线性回归特征,在该特征空间进行拟合后再返回到原始空间。
支持向量机分类(SVM)是一类按监督学习方式对数据进行二元分类的广义线性分类器,其决策边界是对学习样本求解的最大边距超平面。
1.18朴素贝叶斯
在给定一个事件发生的前提下,计算另外一个事件发生的概率——我们将会使用贝叶斯定理。假设先验知识为d,为了计算我们的假设h为真的概率,我们将要使用如下贝叶斯定理:
该算法假定所有的变量都是相互独立的。
集成学习是一种将不同学习模型(比如分类器)的结果组合起来,通过投票或平均来进一步提高准确率。一般,对于分类问题用投票;对于回归问题用平均。这样的做法源于“众人拾材火焰高”的想法。
集成算法主要有三类:Bagging,Boosting和Stacking。本文将不谈及stacking。
1.21GBDT
GBDT是以CART回归树为基学习器的Boosting算法,是一个加法模型,它串行地训练一组CART回归树,最终对所有回归树的预测结果加和,由此得到一个强学习器,每一颗新树都拟合当前损失函数的负梯度方向。最后输出这一组回归树的加和,直接得到回归结果或者套用sigmod或者softmax函数获得二分类或者多分类结果。
1.22adaboost
adaboost给予误差率低的学习器一个高的权重,给予误差率高的学习器一个低的权重,结合弱学习器和对应的权重,生成强学习器。回归问题与分类问题算法的不同点在于误差率计算的方式不同,分类问题一般都采用0/1损失函数,而回归问题一般都是平方损失函数或者是线性损失函数。
1.23XGBoost
xgboost是GBDT的一种高效实现,和GBDT不同,xgboost给损失函数增加了正则化项;且由于有些损失函数是难以计算导数的,xgboost使用损失函数的二阶泰勒展开作为损失函数的拟合。
1.24LightGBM
1.25CatBoost
catboost是一种基于对称决策树算法的GBDT框架,主要解决的痛点是高效合理地处理类别型特征和处理梯度偏差、预测偏移问题,提高算法的准确性和泛化能力。
1.26随机森林
随机森林分类在生成众多决策树的过程中,是通过对建模数据集的样本观测和特征变量分别进行随机抽样,每次抽样结果均为一棵树,且每棵树都会生成符合自身属性的规则和分类结果(判断值),而森林最终集成所有决策树的规则和分类结果(判断值),实现随机森林算法的分类(回归)。
1.27ExtraTrees
extra-trees(极其随机的森林)和随机森林非常类似,这里的“及其随机”表现在决策树的结点划分上,它干脆直接使用随机的特征和随机的阈值划分,这样我们每一棵决策树形状、差异就会更大、更随机。
无监督学习问题处理的是,只有输入变量X没有相应输出变量的训练数据。它利用没有专家标注训练数据,对数据的结构建模。
将相似的样本划分为一个簇(cluster)。与分类问题不同,聚类问题预先并不知道类别,自然训练数据也没有类别的标签。
2.11K-means算法
聚类分析是一种基于中心的聚类算法(K均值聚类),通过迭代,将样本分到K个类中,使得每个样本与其所属类的中心或均值的距离之和最小。与分层聚类等按照字段进行聚类的算法不同的是,快速聚类分析是按照样本进行聚类。
2.12分层聚类
分层聚类法作为聚类的一种,是对给定数据对象的集合进行层次分解,根据分层分解采用的分解策略。层次聚类算法按数据分层建立簇,形成一棵以簇为节点的树。如果按自底向上进行层次分解,则称为凝聚的层次聚类,比如AGNES。而按自顶向下的进行层次分解,则称为分裂法层次聚类,比如DIANA。一般用的比较多的是凝聚层次聚类。
降维指减少数据的维度同时保证不丢失有意义的信息。利用特征提取方法和特征选择方法,可以达到降维的效果。特征选择是指选择原始变量的子集。特征提取是将数据从高纬度转换到低纬度。广为熟知的主成分分析算法就是特征提取的方法。
2.21PCA主成分分析
2.22SVD奇异值分解
2.23LDA线性判别
线性判别的原理是将样本投影到一条直线上,使得同类样本的投影点尽可能接近,不同样本的投影点尽可能远离;在对新样本进行分类时,将其投影到同样的直线上,再根据投影点的位置来确定新样本的类别。
上一篇:
下一篇:
14个文本转图像AIAPI
什么是API定义?
前端需要的免费在线API接口
API对现代网上银行至关重要的10个理由
10个搜索引擎结果页面(SERP)API
幂简集成是创新的API接口平台,一站搜索、试用、集成国内外API接口。