1、感知机算法(硬分类)
激活函数
损失函数:
求解有两种方式:一个是求导(计算量大,因为需要全部的样本)
另一个是求期望然后梯度下降(只需要一批样本慢慢更新)
感知机算法(Perceptron Algorithm)是一种用于二分类的线性分类器,它通过不断迭代调整模型参数,使得分类边界能够将不同类别的样本正确分类。以下是感知机算法的应用、优点和缺点:
应用场景:
1. **文本分类**:感知机算法可用于文本分类任务,如垃圾邮件过滤、情感分析等。
2. **图像识别**:在一些简单的图像分类任务中,感知机也可以作为一种有效的分类器。
3. **生物医学领域**:感知机算法可以用于生物医学领域中的疾病诊断、药物筛选等。
4. **广告点击率预测**:在在线广告投放中,感知机算法可以用于预测用户是否点击某个广告。
5. **金融风控**:感知机算法可以用于信用评分和欺诈检测,帮助金融机构评估借款人的信用风险。
优点:
1. **简单高效**:感知机算法简单易懂,易于实现,计算效率高。
2. **在线学习**:感知机算法支持在线学习,即可以逐步学习新的样本,而不需要重新训练整个模型。
3. **适用于大规模数据集**:感知机算法在处理大规模数据集时表现良好,并且具有较低的存储和计算成本。
4. **可解释性强**:感知机提供了直观的分类边界,易于理解和解释。
缺点:
1. **线性分类器**:感知机算法只能学习线性分类器,无法处理非线性问题。
2. **对噪声敏感**:感知机算法对噪声和异常值较为敏感,可能会导致模型性能下降。
3. **无法处理非线性可分问题**:对于非线性可分的数据集,感知机算法无法得到满意的分类结果。
4. **不稳定性**:当数据集线性不可分或者存在多个线性边界时,感知机算法可能会陷入局部最优解,导致分类性能较差。
尽管感知机算法具有一些限制,但在某些简单的二分类问题上,仍然是一个有效的分类算法。在实际应用中,需要根据具体的数据特点和问题需求来选择合适的算法。
2、线性判别分析(硬分类)(Linear Discriminant Analysis,LDA)
是一种经典的监督学习方法,用于解决分类问题。它的主要思想是通过降维将数据投影到一个低维空间,并最大化不同类别之间的距离,同时最小化同一类别内部的距离,从而实现更好的分类效果。
直接求,不需要使用梯度或求导法。
具体来说,LDA通过以下步骤实现分类:
-
计算类别均值: 对于每个类别,计算其样本的均值向量,即将该类别内所有样本的特征向量进行平均得到的向量。这样就可以得到每个类别在原始特征空间中的中心点。
-
计算类内散度矩阵: 计算每个类别内部的散布程度,即每个类别内样本与其均值向量的距离的平方和,然后将所有类别的类内散度矩阵进行累加,得到总的类内散度矩阵。
-
计算类间散度矩阵: 计算不同类别之间的散布程度,即不同类别的均值向量之间的距离的平方和,然后得到总的类间散度矩阵。
-
计算投影方向: 通过对类内散度矩阵的逆矩阵与类间散度矩阵相乘,得到投影方向。这个投影方向使得在低维空间中不同类别之间的距离尽可能大,而同一类别内部的距离尽可能小。
-
降维投影: 将原始数据投影到由投影方向所确定的低维空间中。
-
分类: 在低维空间中使用任何分类算法(如最近邻算法)对投影后的样本进行分类。
总的来说,LDA通过最大化类间散度和最小化类内散度的比值来实现分类,从而找到一个最优的投影方向,使得不同类别之间的分离程度最大化。
LDA(线性判别分析)在实际应用中具有许多优势,但也存在一些缺点。下面是关于LDA的应用、优势和缺点的一些主要方面:
应用:
1. **模式识别和分类:** LDA广泛应用于模式识别和分类问题。它可以用于处理图像分类、文本分类、生物信息学中的序列分类等。
2. **特征降维:** LDA可以用于特征降维,即通过将高维数据投影到低维空间来减少数据维度,同时保留最重要的信息。
3. **人脸识别:** LDA在人脸识别领域有着重要的应用。通过LDA可以对人脸图像进行降维和分类,从而实现人脸识别。
4. **语音识别:** LDA也可以用于语音识别任务中,对语音特征进行降维和分类,从而实现语音信号的识别和理解。
优势:
1. **考虑类别间差异:** LDA在降维过程中考虑了类别之间的差异,因此投影后的低维表示更容易进行分类。
2. **最大化类间距离:** LDA的目标是最大化不同类别之间的距离,从而使得不同类别更容易区分。
3. **降维效果好:** LDA不仅可以用于分类,还可以用于特征降维,且通常有很好的降维效果,可以减少数据维度并保留大部分有用信息。
缺点:
1. **对数据分布的假设:** LDA假设数据服从多元正态分布,并且各个类别的协方差相等。如果数据不满足这些假设,可能导致LDA的性能下降。
2. **对异常值敏感:** LDA对异常值较为敏感,如果数据中存在异常值,可能会影响到降维和分类的结果。
3. **可能过拟合:** 当类别之间的样本数量差异较大时,LDA可能会过拟合,导致对少数类别的分类效果较差。
4. **非线性不可分数据处理困难:** LDA是一种线性方法,对于非线性可分的数据,其分类性能可能较差。
3、两分类-软分类-概率判别模型-Logistic 回归(软分类)
利用贝叶斯定理建模
,代入方程:
这就是Logistic Sigmoid 函数。
怎么使用?就是令即可。
因为是二分类所以标签一个是1,另一个是0:
对上面取log,就是损失函数:
由于sigmoid函数的非线性和似然函数的形式,无法直接求解最大化似然函数的参数,因此通常使用梯度上升法等迭代优化算法来逼近最优参数。
Logistic回归是一种常用的分类算法,虽然其名字中带有"回归"一词,但实际上用于解决分类问题。它的应用非常广泛,以下是一些常见的应用场景:
应用场景:
1. **二分类问题**:Logistic回归常用于解决二分类问题,如垃圾邮件过滤、信用评分等。
2. **多分类问题**:通过一对多(One-vs-All)或一对一(One-vs-One)等策略,Logistic回归也可以用于多分类问题,如手写数字识别、文本分类等。
3. **预测概率**:除了输出分类结果外,Logistic回归还可以输出样本属于某个类别的概率,因此在需要得到分类概率的场景中也很有用,如广告点击率预测。
4. **特征选择**:Logistic回归可以通过特征的系数来衡量特征对分类的贡献,进而进行特征选择。
5. **评分卡模型**:在金融风控领域,Logistic回归常用于构建评分卡模型,评估个人信用风险。
优点:
1. **简单高效**:Logistic回归计算简单,易于实现,运行速度快。
2. **可解释性强**:Logistic回归模型的参数可以解释为特征对分类的影响程度。
3. **适用性广泛**:可以处理二分类和多分类问题,适用于线性可分和线性不可分的情况。
4. **不容易过拟合**:相对于高度复杂的模型,Logistic回归在样本量足够大的情况下不容易过拟合。
缺点:
1. **线性假设**:Logistic回归基于线性假设,不能很好地处理特征之间的复杂非线性关系。
2. **对异常值敏感**:Logistic回归对异常值比较敏感,需要预处理或者采用robust的方法来处理异常值。
3. **特征工程关键**:Logistic回归的性能依赖于特征工程的质量,对特征的选择和变换要求较高。
4. **无法处理缺失值**:Logistic回归对缺失值敏感,需要先对缺失值进行处理。
虽然Logistic回归存在一些局限性,但在许多实际应用中,由于其简单高效的特点,仍然是一个常用的分类算法。
4、 两分类概率生成模型-高斯判别分析(软分类)GDA
生成模型就是对联合概率建模,采用 MAP方法。此模型提出三个假设
损失函数:
然后求导,不使用梯度法。
高斯判别分析(Gaussian Discriminant Analysis,GDA)是一种常见的概率生成模型,用于解决两分类问题。在GDA中,假设每个类别的样本数据都符合多维高斯分布。
应用场景:
1. **医学诊断**:GDA可以用于医学领域中的疾病诊断,如癌症预测、疾病风险评估等。
2. **金融风控**:在金融领域,GDA可用于信用评分、欺诈检测等风险管理任务。
3. **文本分类**:GDA可以用于文本分类任务,如垃圾邮件过滤、情感分析等。
4. **生物信息学**:在生物信息学中,GDA可用于基因分类、蛋白质结构预测等。
优点:
1. **考虑了特征间的协方差**:GDA考虑了各个特征之间的协方差,因此在特征之间有相关性的情况下表现较好。
2. **生成模型**:GDA是一种概率生成模型,可以学习到数据的生成过程,因此对数据的分布具有较好的建模能力。
3. **软分类**:GDA给出了每个样本属于每个类别的概率,因此可以进行软分类,提供了更加丰富的信息。
缺点:
1. **对数据分布有假设**:GDA对数据分布有严格的假设,即每个类别的样本数据都符合多维高斯分布,因此如果数据不符合该假设,则模型的性能可能会受到影响。
2. **需要估计大量参数**:对于具有较多特征的数据集,GDA需要估计大量参数,特别是协方差矩阵,这可能导致参数估计的不稳定性。
3. **不适用于非线性问题**:GDA假设数据分布是高斯分布,因此对于非线性问题的建模能力有限,无法很好地处理非线性关系。
5、朴素贝叶斯(生成模型)
使用相互独立假设,让特征之间相互独立了,当特征是离散满足多分类分布。当x连续时满足正态分布。
于是后验为:
直接贝叶斯估计,不需要梯度法。
朴素贝叶斯(Naive Bayes)是一种基于贝叶斯定理和特征条件独立性假设的分类算法。尽管它的假设相对简单,但在许多实际应用中表现出色。以下是朴素贝叶斯的应用、优点和缺点:
应用场景:
1. **文本分类**:朴素贝叶斯广泛应用于文本分类问题,如垃圾邮件过滤、情感分析、新闻分类等。
2. **情感分析**:用于分析社交媒体上用户的情感倾向,如判断评论是正面的还是负面的。
3. **推荐系统**:在协同过滤中,朴素贝叶斯可以用于判断用户对商品的偏好。
4. **医学诊断**:用于医学领域中的疾病预测和诊断,如肿瘤分类、疾病诊断等。
5. **金融风控**:用于信用评分和欺诈检测,帮助银行和金融机构评估借款人的信用风险。
优点:
1. **简单高效**:朴素贝叶斯算法简单易懂,易于实现,计算效率高。
2. **适用于小样本**:即使在小样本情况下,朴素贝叶斯也能够表现出很好的性能。
3. **对噪声不敏感**:朴素贝叶斯对于缺失数据和噪声的处理能力较强,具有一定的鲁棒性。
4. **可解释性强**:朴素贝叶斯提供了直观的概率估计,对于预测结果的解释比较容易理解。
5. **处理高维数据**:朴素贝叶斯在处理高维数据集时表现良好,并且不容易受到维度灾难的影响。
缺点:
1. **对特征独立性的假设**:朴素贝叶斯算法假设各个特征之间相互独立,这在某些情况下可能不符合实际情况,导致模型性能下降。
2. **欠拟合问题**:由于其对数据分布的简化假设,朴素贝叶斯有时候会产生欠拟合问题,特别是在特征之间存在复杂的关联时。
3. **类别平衡影响**:朴素贝叶斯对类别不平衡的数据较为敏感,可能会导致样本数量较少的类别被较多的类别掩盖。
4. **无法处理连续性特征的变量**:朴素贝叶斯假设所有特征都是离散的,因此无法直接处理连续性特征的变量,需要通过离散化或者使用其他方法进行处理。
尽管朴素贝叶斯算法存在一些限制,但在许多实际应用中,由于其简单高效的特性,仍然是一个常用的分类算法。