机器学习:线性模型

105 阅读7分钟

参考网址

juejin.cn/post/730157…

线性模型是一类模型的总称,包括线性回归模型、方差分析模型等,广泛应用于生物、医学、经济、管理等领域。

线性模型中的“线性”其实是一系列一次特征的线性组合,在二维空间中是一条直线,在三维空间是一个平面,推广至n维空间,为广义线性模型。

广义线性模型包括岭回归、lasso回归、Elastic Net、逻辑回归、线性判别分析等。
另外,线性回归模型、Lasso回归、Elastic Net回归也常用于分类问题,例如多分类问题。
多分类学习的基本思路是“拆解法”,即将多分类任务拆为若干个二分类任务求解。

具体来说,先对问题进行拆分,然后为拆出的每个二分类任务训练一个分类器;在测试时,对这些分类器的预测结果进行集成以获得最终的多分类结果。

此外,对数几率模型(Logistic回归)与线性回归相比,只是在结构上多了一个激活的过程。

前言

线性模型,不是一种算法,而是机器学习中一类算法的统称,常常被用于分类、回归任务中,是最为基础的模型。
常见的线性模型有线性回归、单层感知机和 Logistic逻辑回归。

掌握线性模型十分有必要性,往往非线性模型都是以线性模型的输出结果的基础上进行非线性变换、层级叠加等操作。

支持向量机是线性模型吗

支持向量机(SVM)在基本形式下是一个线性模型。
它的基本模型是定义在特征空间上的间隔最大的线性分类器。

然而,通过引入‘核函数’,SVM可以变成非线性模型。
因此,支持向量机可以是线性模型,也可以是非线性模型,具体取决于是否使用了核函数。

SVM(支持向量机)既可以是线性模型,也可以是非线性模型,这取决于所用的核函数。
在标准SVM中,如果使用线性核函数,那么SVM就是一个线性模型。
然而,SVM也支持使用非线性核函数,如多项式核、径向基函数(RBF)核等。当使用非线性核函数时,SVM就变成了非线性模型。

线性模型的基本的形式

图片.png

线性回归算法

是线性模型中,最简单的一种算法

线性回归是在给定自变量x和因变量y的情况下,通过找到一条直线(或者多个线性组合的平面),使得这条直线(或平面)与自变量x和因变量y之间的关系最好拟合。

这里的“最好拟合”通常是找到最适合的 ω 和 x,所以需要通过最小化预测值与实际值之间的均方误差(因为它是回归任务常用的性能度量)来进行优化。
这个过程通常使用**梯度下降**等优化算法来实现。

逻辑回归

对数几率回归,又称为逻辑回归。 

*对数几率回归*,又称*逻辑回归*,通过构建一个广义线性模型来实现二分类预测。
它首先需要确定一个联系函数,将输入特征与预测结果联系起来。
在逻辑回归中,使用的是 **Sigmoid函数** ,该函数可以将任何实数映射到 (0,1)之间,因此非常适合用于二分类问题。

逻辑回归的损失函数通常采用**对数损失**的形式(因此也称为对数几率回归),其优点是它对于数据的分布假设较少,并且可以处理非线性的关系。
通过最小化损失函数,逻辑回归可以找到一组模型参数,使得对于给定的输入特征x ,预测结果y的概率值最大化。

为什么使用逻辑回归?

因为逻辑回归适用于解决多种问题,它具有以下优点:

(1)易于理解和实现:逻辑回归的模型结构简单,易于理解和解释。同时,由于其使用Sigmoid函数作为激活函数,因此可以实现高效的计算和优化。

(2)可解释性强:逻辑回归的输出结果可以被解释为概率值,因此具有很强的可解释性。这使得它在一些需要解释性的应用场景中得到广泛使用,例如信用评分、疾病预测等。

(3)适用于非线性和多分类问题:逻辑回归可以适用于非线性和多分类问题。通过使用不同的联系函数和损失函数,可以对不同类型的数据和问题进行建模和预测。

(4)高效性和健壮性(Robust):逻辑回归的实现方法经过优化,可以高效地进行大规模数据的训练和预测。此外,它对于数据的异常值和噪声具有较强的健壮性,能够适应多种数据分布情况。


逻辑回归,可以用在二分类的任务,也可以用在多分类的任务。
这个取决于激活函数的选择。

怎么解决类别不平衡问题?

为了解决类别不平衡问题,可以采用以下方法:

1.过采样(Oversampling):对数量较少的类别进行重复采样,使其与数量较多的类别平衡。
1.欠采样(Undersampling):从数量较多的类别中随机选取少量样本,使其与数量较少的类别平衡。
1.组合方法:同时使用过采样和欠采样方法,以获得更好的平衡效果。
1.代价敏感学习(Cost-sensitive learning):为不同类别的错误分类赋予不同的权重,从而使模型更加关注数量较少的类别。
1.成对分类(Pairwise classification):将不同类别的样本两两组合,训练多个二分类器,以提高对数量较少的类别的识别精度。

在机器学习算法中,类别不平衡是一种常见的问题,它发生在不同类别的样本数量差异较大时。为了解决类别不平衡的问题,可以采用以下几种方法:

1.  重采样:通过增加少数类样本或减少多数类样本的方法来平衡类别分布。具体来说,可以通过过采样少数类、欠采样多数类或结合过采样和欠采样来实现。过采样是通过重复少数类样本的方法增加其数量,欠采样是从多数类中随机选择部分样本的方法减少其数量。
1.  调整模型参数:通过调整模型参数来处理类别不平衡问题。例如,可以为不同的类别设置不同的权重,使得模型在训练过程中更加关注少数类。此外,还可以使用代价敏感学习的方法,为不同类别的错误分类设置不同的惩罚项,以减少模型对多数类的偏向。
1.  使用集成学习:集成学习是一种通过结合多个模型的预测结果来提高整体性能的方法。在类别不平衡问题中,可以使用集成学习将多个模型的结果进行整合,以提高对少数类的识别率。例如,可以使用随机森林、梯度提升机等集成学习方法。
1.  使用数据增强:对于图像、语音等类型的数据,可以通过数据增强技术来生成新的样本,从而增加少数类样本的数量。例如,对于图像数据,可以通过旋转、平移、缩放等操作来生成新的图像样本。
1.  使用半监督学习:半监督学习是一种利用未标记数据进行监督学习的方法。在类别不平衡问题中,可以利用半监督学习将未标记的样本进行分类,并利用分类结果来辅助训练模型。
1.  使用元学习:元学习是一种通过学习如何学习来提高模型性能的方法。在类别不平衡问题中,可以使用元学习来训练一个能够快速适应不同类别分布的模型。