图解机器学习 | 朴素贝叶斯算法详解

本文涉及的产品
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
模型训练 PAI-DLC,100CU*H 3个月
交互式建模 PAI-DSW,每月250计算时 3个月
简介: 朴素贝叶斯是一个非常直观的模型。本文讲解朴素贝叶斯算法的核心思想、贝叶斯公式、条件独立假设、平滑出等重要知识点,并图解多项式贝叶斯和伯努利贝叶斯等多种形态。

ShowMeAI研究中心

作者:韩信子@ShowMeAI
教程地址http://www.showmeai.tech/tutorials/34
本文地址http://www.showmeai.tech/article-detail/189
声明:版权所有,转载请联系平台与作者并注明出处
收藏 ShowMeAI 查看更多


引言

在众多机器学习分类算法中,本篇我们提到的朴素贝叶斯模型,和其他绝大多数分类算法都不同,也是很重要的模型之一。

在机器学习中如KNN、逻辑回归、决策树等模型都是判别方法,也就是直接学习出特征输出 equation?tex=Y 和特征 equation?tex=X 之间的关系(决策函数 equation?tex=Y%3D%20f%28X%29 或者条件分布 equation?tex=P%28Y%7CX%29 )。但朴素贝叶斯是生成方法,它直接找出特征输出 equation?tex=Y 和特征 equation?tex=X 的联合分布 equation?tex=P%28X%2CY%29,进而通过 equation?tex=P%28Y%20%5Cmid%20X%29%3D%20%5Cfrac%7BP%28X%2CY%29%7D%7BP%28X%29%7D 计算得出结果判定。

朴素贝叶斯是一个非常直观的模型,在很多领域有广泛的应用,比如早期的文本分类,很多时候会用它作为 baseline 模型,本篇内容我们对朴素贝叶斯算法原理做展开介绍。

1.朴素贝叶斯算法核心思想

贝叶斯分类是一类分类算法的总称,这类算法均以贝叶斯定理为基础,故统称为贝叶斯分类。而朴素贝叶斯(Naive Bayes)分类是贝叶斯分类中最简单,也是常见的一种分类方法

朴素贝叶斯算法的核心思想是通过考虑特征概率来预测分类,即对于给出的待分类样本,求解在此样本出现的条件下各个类别出现的概率,哪个最大,就认为此待分类样本属于哪个类别。

朴素贝叶斯算法; 算法核心思想; 基于概率的预测; 5-1

举个例子:眼前有100个西瓜,好瓜和坏瓜个数差不多,现在要用这些西瓜来训练一个「坏瓜识别器」,我们要怎么办呢

一般挑西瓜时通常要「敲一敲」,听听声音,是清脆声、浊响声、还是沉闷声。所以,我们先简单点考虑这个问题,只用敲击的声音来辨别西瓜的好坏。根据经验,敲击声「清脆」说明西瓜还不够熟,敲击声「沉闷」说明西瓜成熟度好,更甜更好吃。

朴素贝叶斯算法; 算法核心思想; 基于概率的预测; 5-2

所以,坏西瓜的敲击声是「清脆」的概率更大,好西瓜的敲击声是「沉闷」的概率更大。当然这并不绝对——我们千挑万选地「沉闷」瓜也可能并没熟,这就是噪声了。当然,在实际生活中,除了敲击声,我们还有其他可能特征来帮助判断,例如色泽、跟蒂、品类等。

朴素贝叶斯把类似「敲击声」这样的特征概率化,构成一个「西瓜的品质向量」以及对应的「好瓜/坏瓜标签」,训练出一个标准的「基于统计概率的好坏瓜模型」,这些模型都是各个特征概率构成的

朴素贝叶斯算法; 算法核心思想; 基于概率的预测; 5-3

这样,在面对未知品质的西瓜时,我们迅速获取了特征,分别输入「好瓜模型」和「坏瓜模型」,得到两个概率值。如果「坏瓜模型」输出的概率值大一些,那这个瓜很有可能就是个坏瓜。

2.贝叶斯公式与条件独立假设

贝叶斯定理中很重要的概念是先验概率后验概率条件概率。(关于这部分依赖的数学知识,大家可以查看ShowMeAI的文章 图解AI数学基础 | 概率与统计,也可以下载我们的速查手册 AI知识技能速查 | 数学基础-概率统计知识

1)先验概率与后验概率

先验概率事件发生前的预判概率。可以是基于历史数据的统计,可以由背景常识得出,也可以是人的主观观点给出。一般都是单独事件概率。

举个例子:如果我们对西瓜的色泽、根蒂和纹理等特征一无所知,按照常理来说,西瓜是好瓜的概率是 equation?tex=60%20%5C%25。那么这个概率 equation?tex=P(%E5%A5%BD%E7%93%9C) 就被称为先验概率。


后验概率事件发生后求的反向条件概率。或者说,基于先验概率求得的反向条件概率。概率形式与条件概率相同。

举个例子:假如我们了解到判断西瓜是否好瓜的一个指标是纹理。一般来说,纹理清晰的西瓜是好瓜的概率大一些,大概是 equation?tex=75%20%5C%25。如果把纹理清晰当作一种结果,然后去推测好瓜的概率,那么这个概率 equation?tex=P(%E5%A5%BD%E7%93%9C%20%5Cmid%20%E7%BA%B9%E7%90%86%E6%B8%85%E6%99%B0) 就被称为后验概率。


条件概率:一个事件发生后另一个事件发生的概率。一般的形式为 equation?tex=P%28B%7CA%29 表示 equation?tex=A 发生的条件下 equation?tex=B 发生的概率。

朴素贝叶斯算法; 贝叶斯公式; 5-4

2)贝叶斯公式

简单来说,贝叶斯定理(Bayes Theorem,也称贝叶斯公式)是基于假设的先验概率、给定假设下观察到不同数据的概率,提供了一种计算后验概率的方法。在人工智能领域,有一些概率型模型会依托于贝叶斯定理,比如我们今天的主角「朴素贝叶斯模型」。

朴素贝叶斯算法; 贝叶斯公式; 5-5

  • equation?tex=P%28A%29 是先验概率,一般都是人主观给出的。贝叶斯中的先验概率一般特指它。
  • equation?tex=P%28B%29 是先验概率,在贝叶斯的很多应用中不重要(因为只要最大后验不求绝对值),需要时往往用全概率公式计算得到。
  • equation?tex=P%28B%20%5Cmid%20A%29 是条件概率,又叫似然概率,一般是通过历史数据统计得到。
  • equation?tex=P%28A%20%5Cmid%20B%29 是后验概率,一般是我们求解的目标。

3)条件独立假设与朴素贝叶斯

基于贝叶斯定理的贝叶斯模型是一类简单常用的分类算法。在「假设待分类项的各个属性相互独立」的情况下,构造出来的分类算法就称为朴素的,即朴素贝叶斯算法。

所谓「朴素」,是假定所有输入事件之间是相互独立。进行这个假设是因为独立事件间的概率计算更简单。


朴素贝叶斯模型的基本思想:对于给定的待分类项 equation?tex=X%20%5Cleft%5C%7B%20%20a_1%2Ca_2%2Ca_3%2C%E2%8B%AF%2Ca_n%20%5Cright%5C%7D,求解在此项出现的条件下各个类别 equation?tex=y_i 出现的概率,哪个 equation?tex=P%28y_i%20%7CX%29 最大,就把此待分类项归属于哪个类别。


朴素贝叶斯算法的定义:设 equation?tex=X%20%5Cleft%5C%7B%20%20a_1%2Ca_2%2Ca_3%2C%E2%8B%AF%2Ca_n%20%5Cright%5C%7D 为一个待分类项,每个 equation?tex=a_%7Bi%7Dequation?tex=x 的一个特征属性,且特征属性之间相互独立。设 equation?tex=C%20%5Cleft%5C%7B%20y_1%2Cy_2%2Cy_3%2C%E2%8B%AF%2Cy_n%5Cright%5C%7D 为一个类别集合,计算

equation?tex=P%5Cleft%28y_%7B1%7D%20%5Cmid%20X%5Cright%29%2C%20P%5Cleft%28y_%7B2%7D%20%5Cmid%20X%5Cright%29%2C%20P%5Cleft%28y_%7B3%7D%20%5Cmid%20X%5Cright%29%2C%20%5Cldots%2C%20P%5Cleft%28y_%7Bn%7D%20%5Cmid%20X%5Cright%29


equation?tex=P%5Cleft%28y_%7Bk%7D%20%5Cmid%20X%5Cright%29%3D%5Cmax%20%5Cleft%5C%7BP%5Cleft%28y_%7B1%7D%20%5Cmid%20X%5Cright%29%2C%20P%5Cleft%28y_%7B2%7D%20%5Cmid%20X%5Cright%29%2C%20P%5Cleft%28y_%7B3%7D%20%5Cmid%20X%5Cright%29%2C%20%5Cldots%2C%20P%5Cleft%28y_%7Bn%7D%20%5Cmid%20X%5Cright%29%5Cright%5C%7D%20%2C%20%E5%88%99X%20%5Cin%20y_%7Bk%7D


朴素贝叶斯算法; 条件独立假设与朴素贝叶斯; 5-6

要求出第四项中的后验概率 equation?tex=P%5Cleft%28y_%7Bk%7D%20%5Cmid%20X%5Cright%29,就需要分别求出在第三项中的各个条件概率,其步骤是:

  • 找到一个已知分类的待分类项集合,这个集合叫做训练样本集
  • 统计得到在各类别下各个特征属性的条件概率估计。即

equation?tex=P%5Cleft%28a_%7B1%7D%20%5Cmid%20y_%7B1%7D%5Cright%29%2C%20P%5Cleft%28a_%7B2%7D%20%5Cmid%20y_%7B1%7D%5Cright%29%2C%20%5Ccdots%2C%20P%5Cleft%28a_%7Bn%7D%20%5Cmid%20y_%7B1%7D%5Cright%29

equation?tex=P%5Cleft%28a_%7B1%7D%20%5Cmid%20y_%7B2%7D%5Cright%29%2C%20P%5Cleft%28a_%7B2%7D%20%5Cmid%20y_%7B2%7D%5Cright%29%2C%20%5Ccdots%2C%20P%5Cleft%28a_%7Bn%7D%20%5Cmid%20y_%7B2%7D%5Cright%29

equation?tex=%5Cldots

equation?tex=P%5Cleft%28a_%7B1%7D%20%5Cmid%20y_%7Bn%7D%5Cright%29%2C%20P%5Cleft%28a_%7B2%7D%20%5Cmid%20y_%7Bn%7D%5Cright%29%2C%20%5Ccdots%2C%20P%5Cleft%28a_%7Bn%7D%20%5Cmid%20y_%7Bn%7D%5Cright%29

朴素贝叶斯算法; 条件独立假设与朴素贝叶斯; 5-7

在朴素贝叶斯算法中,待分类项的每个特征属性都是条件独立的,由贝叶斯公式

equation?tex=P%5Cleft%28y_%7Bi%7D%20%5Cmid%20X%5Cright%29%3D%5Cfrac%7BP%5Cleft%28X%20%5Cmid%20y_%7Bi%7D%5Cright%29%20P%5Cleft%28y_%7Bi%7D%5Cright%29%7D%7BP%28X%29%7D

因为分母相当于在数据库中 equation?tex=X 存在的概率,所以对于任何一个待分类项来说 equation?tex=P%5Cleft%28X%20%5Cright%29 都是常数固定的。再求后验概率 equation?tex=P%5Cleft%28y_%7Bi%7D%20%5Cmid%20X%5Cright%29 的时候只用考虑分子即可。


因为各特征值是独立的所以有:

equation?tex=%5Cbegin%7Baligned%7D%20P%5Cleft%28X%20%5Cmid%20y_%7Bi%7D%5Cright%29%20P%5Cleft%28y_%7Bi%7D%5Cright%29%20%26%3DP%5Cleft%28a_%7B1%7D%20%5Cmid%20y_%7Bi%7D%5Cright%29%20P%5Cleft%28a_%7B2%7D%20%5Cmid%20y_%7Bi%7D%5Cright%29%20%5Ccdots%20P%5Cleft%28a_%7Bn%7D%20%5Cmid%20y_%7Bi%7D%5Cright%29%20P%5Cleft%28y_%7Bi%7D%5Cright%29%20%5C%5C%20%26%3DP%5Cleft%28y_%7Bi%7D%5Cright%29%20%5Cprod_%7Bj%3D1%7D%5E%7Bn%7D%20P%5Cleft%28a_%7Bj%7D%20%5Cmid%20y_%7Bi%7D%5Cright%29%20%5Cend%7Baligned%7D


可以推出:

equation?tex=P%5Cleft(X%20%5Cmid%20y_%7Bi%7D%5Cright)%3D%5Cprod_%7B%7Bk%3D1%7D%7D%5E%7Bn%7D%20P%5Cleft(a_%7Bk%7D%20%5Cmid%20y_%7Bi%7D%5Cright)

朴素贝叶斯算法; 条件独立假设与朴素贝叶斯; 5-8

对于 equation?tex=P%5Cleft%28y_%7Bi%7D%5Cright%29 是指在训练样本中 equation?tex=y_%7Bi%7D 出现的概率,可以近似的求解为:

equation?tex=P%5Cleft%28y_%7Bi%7D%5Cright%29%3D%5Cfrac%7B%5Cleft%7Cy_%7Bi%7D%5Cright%7C%7D%7BD%7D


对于先验概率 equation?tex=P%5Cleft%20%28%20a_%7Bj%7D%20%5Cmid%20y_%7Bi%7D%20%5Cright%20%29,是指在类别 equation?tex=y_%7Bi%7D 中,特征元素 equation?tex=a_%7Bj%7D 出现的概率,可以求解为:

equation?tex=P%5Cleft%20%28%20a_%7Bj%7D%20%5Cmid%20y_%7Bi%7D%20%5Cright%20%29%20%3D%20%5Cfrac%7B%5Cleft%20%7C%20%E5%9C%A8%E8%AE%AD%E7%BB%83%E6%A0%B7%E6%9C%AC%E4%B8%BA%20y_%7Bi%7D%20%E6%97%B6%EF%BC%8Ca_%7Bj%7D%20%E5%87%BA%E7%8E%B0%E7%9A%84%E6%AC%A1%E6%95%B0%20%5Cright%20%7C%20%7D%7B%5Cleft%20%7C%20y_%7Bi%7D%20%E8%AE%AD%E7%BB%83%E6%A0%B7%E6%9C%AC%E6%95%B0%20%5Cright%20%7C%20%7D


朴素贝叶斯算法; 条件独立假设与朴素贝叶斯; 5-9

总结一下,朴素贝叶斯模型的分类过程如下流程图所示:

朴素贝叶斯算法; 条件独立假设与朴素贝叶斯; 5-10

3.伯努利与多项式朴素贝叶斯

1)多项式vs伯努利朴素贝叶斯

大家在一些资料中,会看到「多项式朴素贝叶斯」和「伯努利朴素贝叶斯」这样的细分名称,我们在这里基于文本分类来给大家解释一下:

朴素贝叶斯算法; 伯努利与多项式朴素贝叶斯; 5-11

在文本分类的场景下使用朴素贝叶斯,那对应的特征 equation?tex=a_j 就是单词,对应的类别标签就是 equation?tex=y,这里有一个问题:每个单词会出现很多次,我们对于频次有哪些处理方法呢?

  • 如果直接以单词的频次参与统计计算,那就是多项式朴素贝叶斯的形态。
  • 如果以是否出现(0和1)参与统计计算,就是伯努利朴素贝叶斯的形态。

朴素贝叶斯算法; 伯努利与多项式朴素贝叶斯; 5-12

(1)多项式朴素贝叶斯

以文本分类为例,多项式模型如下。在多项式模型中,设某文档 equation?tex=d%3D%5Cleft%28t_%7B1%7D%2C%20t_%7B2%7D%2C%20%5Cldots%2C%20t_%7Bk%7D%5Cright%29equation?tex=t_%7Bk%7D 是该文档中出现过的单词,允许重复,则:


先验概率

equation?tex=P%5Cleft%20%28%20c%20%5Cright%20%29%20%3D%20%5Cfrac%7B%E7%B1%BBc%E4%B8%8B%E5%8D%95%E8%AF%8D%E6%80%BB%E6%95%B0%7D%7B%E6%95%B4%E4%B8%AA%E8%AE%AD%E7%BB%83%E6%A0%B7%E6%9C%AC%E7%9A%84%E5%8D%95%E8%AF%8D%E6%80%BB%E6%95%B0%7D


类条件概率

equation?tex=P%5Cleft%20%28%20t_%7Bk%7D%20%5Cmid%20c%20%5Cright%20%29%20%3D%20%5Cfrac%7B%E7%B1%BBc%E4%B8%8B%E5%8D%95%E8%AF%8Dt_%7Bk%7D%E5%9C%A8%E5%90%84%E4%B8%AA%E6%96%87%E6%A1%A3%E4%B8%AD%E5%87%BA%E7%8E%B0%E8%BF%87%E7%9A%84%E6%AC%A1%E6%95%B0%E4%B9%8B%E5%92%8C%2B1%7D%7B%E7%B1%BBc%E4%B8%8B%E5%8D%95%E8%AF%8D%E6%80%BB%E6%95%B0%2B%5Cleft%20%7C%20V%20%5Cright%20%7C%7D

  • equation?tex=V 是训练样本的单词表(即抽取单词,单词出现多次,只算一个),equation?tex=%5Cleft%20%7C%20V%20%5Cright%20%7C 则表示训练样本包含多少种单词。
  • equation?tex=P%5Cleft%20%28%20t_%7Bk%7D%20%5Cmid%20c%20%5Cright%20%29 可以看作是单词 equation?tex=t_%7Bk%7D 在证明 equation?tex=d 属于类 equation?tex=c 上提供了多大的证据,而 equation?tex=P%20%5Cleft%20%28%20c%20%5Cright%20%29 则可以认为是类别 equation?tex=c 在整体上占多大比例(有多大可能性)。

(2)伯努利朴素贝叶斯

对应的,在伯努利朴素贝叶斯里,我们假设各个特征在各个类别下是服从n重伯努利分布(二项分布)的,因为伯努利试验仅有两个结果,因此,算法会首先对特征值进行二值化处理(假设二值化的结果为1与0)。

对应的 equation?tex=P%20%5Cleft%20%28%20c%20%5Cright%20%29equation?tex=P%5Cleft%20%28%20t_%7Bk%7D%20%5Cmid%20c%20%5Cright%20%29 计算方式如下(注意到分子分母的变化):

equation?tex=P%20%5Cleft%20%28%20c%20%5Cright%20%29%3D%5Cfrac%7B%E7%B1%BBc%E4%B8%8B%E6%96%87%E4%BB%B6%E6%80%BB%E6%95%B0%7D%7B%E6%95%B4%E4%B8%AA%E8%AE%AD%E7%BB%83%E6%A0%B7%E6%9C%AC%E7%9A%84%E6%96%87%E4%BB%B6%E6%80%BB%E6%95%B0%7D


equation?tex=P%5Cleft%20%28%20t_%7Bk%7D%20%5Cmid%20c%20%5Cright%20%29%20%3D%20%5Cfrac%7B%E7%B1%BBc%E4%B8%8B%E5%8D%95%E8%AF%8Dt_%7Bk%7D%E5%9C%A8%E5%90%84%E4%B8%AA%E6%96%87%E6%A1%A3%E4%B8%AD%E5%87%BA%E7%8E%B0%E8%BF%87%E7%9A%84%E6%AC%A1%E6%95%B0%E4%B9%8B%E5%92%8C%2B1%7D%7B%E7%B1%BBc%E4%B8%8B%E5%8D%95%E8%AF%8D%E6%80%BB%E6%95%B0%2B2%7D

2)朴素贝叶斯与连续值特征

我们发现在之前的概率统计方式,都是基于离散值的。如果遇到连续型变量特征,怎么办呢?

以人的身高,物体的长度为例。一种处理方式是:把它转换成离散型的值。比如:

  • 如果身高在 equation?tex=160cm 以下,特征值为 equation?tex=1
  • equation?tex=160cmequation?tex=170cm 之间,特征值为 equation?tex=2
  • equation?tex=170cm 之上,特征值为 equation?tex=3

当然有不同的转换方法,比如还可以:

  • 将身高转换为 equation?tex=3 个特征,分别是 equation?tex=f_1equation?tex=f_2equation?tex=f_3
  • 如果身高是 equation?tex=160cm 以下,这三个特征的值分别是 equation?tex=1equation?tex=0equation?tex=0
  • 若身高在 equation?tex=170cm 之上,这三个特征的值分别是 equation?tex=0equation?tex=0equation?tex=1

但是,以上的划分方式,都比较粗糙,划分的规则也是人为拟定的,且在同一区间内的样本(比如第1套变换规则下,身高 equation?tex=150cmequation?tex=155cm)难以区分,我们有高斯朴素贝叶斯模型可以解决这个问题。

如果特征 equation?tex=x_%7Bi%7D 是连续变量,如何去估计似然度 equation?tex=P%5Cleft%20%28%20x_%7Bi%7D%5Cmid%20y_%7Bk%7D%20%5Cright%20%29 呢?高斯模型是这样做的:我们假设在 equation?tex=y_%7Bi%7D 的条件下,equation?tex=x 服从高斯分布(正态分布)。根据正态分布的概率密度函数即可计算出 equation?tex=P%5Cleft%20%28%20x%20%5Cmid%20y_%7Bi%7D%20%5Cright%20%29,公式如下:

equation?tex=P%5Cleft%28x_%7Bi%7D%20%5Cmid%20y_%7Bk%7D%5Cright%29%3D%5Cfrac%7B1%7D%7B%5Csqrt%7B2%20%5Cpi%20%5Csigma_%7By%20k%2C%20i%7D%5E%7B2%7D%7D%7D%20e%5E%7B-%5Cfrac%7B%5Cleft%28x_%7Bi%7D-%5Cmu_%7By%20k%2C%20i%7D%5Cright%29%5E%7B2%7D%7D%7B2%20%5Csigma_%7By%20k%2C%20i%7D%5E%7B2%7D%7D%7D


朴素贝叶斯算法; 伯努利与多项式朴素贝叶斯; 5-13

回到上述例子,如果身高是我们判定人性别(男/女)的特征之一,我们可以假设男性和女性的身高服从正态分布,通过样本计算出身高均值和方差,对应上图中公式就得到正态分布的密度函数。有了密度函数,遇到新的身高值就可以直接代入,算出密度函数的值。

4.平滑处理

1)为什么需要平滑处理

使用朴素贝叶斯,有时候会面临零概率问题。零概率问题,指的是在计算实例的概率时,如果某个量 equation?tex=x,在观察样本库(训练集)中没有出现过,会导致整个实例的概率结果是 equation?tex=0

在文本分类的问题中,当「一个词语没有在训练样本中出现」时,这个词基于公式统计计算得到的条件概率为 equation?tex=0 ,使用连乘计算文本出现概率时也为 equation?tex=0 。这是不合理的,不能因为一个事件没有观察到就武断的认为该事件的概率是 equation?tex=0

2)拉普拉斯平滑及依据

为了解决零概率的问题,法国数学家拉普拉斯最早提出用加1的方法估计没有出现过的现象的概率,所以加法平滑也叫做拉普拉斯平滑。

假定训练样本很大时,每个分量 equation?tex=x 的计数加 equation?tex=1 造成的估计概率变化可以忽略不计,但可以方便有效的避免零概率问题。

对应到文本分类的场景中,如果使用多项式朴素贝叶斯,假定特征 equation?tex=x_%7Bi%7D 表示某个词在样本中出现的次数(当然用TF-IDF表示也可以)。拉普拉斯平滑处理后的条件概率计算公式为:

equation?tex=P%5Cleft%28x_%7Bi%7D%20%5Cmid%20y%5Cright%29%20%3D%5Cfrac%7BN_%7By%20i%7D%2B%5Calpha%7D%7BN_%7By%7D%2Bn%20%5Calpha%7D


朴素贝叶斯算法; 平滑处理; 拉普拉斯平滑及依据; 5-14

  • equation?tex=N_%7Byi%7D 表示类 equation?tex=y 的所有样本中特征 equation?tex=x_%7Bi%7D 的特征值之和。
  • equation?tex=N_%7By%7D 表示类 equation?tex=y 的所有样本中全部特征的特征值之和。
  • equation?tex=%5Calpha 表示平滑值( equation?tex=%5Calpha%20%5Cin%20%5Cleft%20%5B%200%2C%201%20%5Cright%20%5D,主要为了防止训练样本中某个特征没出现而导致 equation?tex=N_%7Byi%7D%20%3D0,从而导致条件概率 equation?tex=P%5Cleft%28x_%7Bi%7D%20%5Cmid%20y%5Cright%29%20%3D%200 的情况,如果不加入平滑值,则计算联合概率时由于某一项为0导致后验概率为0的异常情况出现。
  • equation?tex=n 表示特征总数。

更多监督学习的算法模型总结可以查看ShowMeAI的文章 AI知识技能速查 | 机器学习-监督学习

机器学习【算法】系列教程

机器学习【实战】系列教程

ShowMeAI 系列教程推荐

ShowMeAI用知识加速每一次技术成长

相关实践学习
使用PAI+LLaMA Factory微调Qwen2-VL模型,搭建文旅领域知识问答机器人
使用PAI和LLaMA Factory框架,基于全参方法微调 Qwen2-VL模型,使其能够进行文旅领域知识问答,同时通过人工测试验证了微调的效果。
机器学习概览及常见算法
机器学习(Machine Learning, ML)是人工智能的核心,专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能,它是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。 本课程将带你入门机器学习,掌握机器学习的概念和常用的算法。
目录
相关文章
|
10天前
|
机器学习/深度学习 数据采集 人工智能
【机器学习算法篇】K-近邻算法
K近邻(KNN)是一种基于“物以类聚”思想的监督学习算法,通过计算样本间距离,选取最近K个邻居投票决定类别。支持多种距离度量,如欧式、曼哈顿、余弦相似度等,适用于分类与回归任务。结合Scikit-learn可高效实现,需合理选择K值并进行数据预处理,常用于鸢尾花分类等经典案例。(238字)
|
5月前
|
机器学习/深度学习 数据采集 人工智能
20分钟掌握机器学习算法指南
在短短20分钟内,从零开始理解主流机器学习算法的工作原理,掌握算法选择策略,并建立对神经网络的直观认识。本文用通俗易懂的语言和生动的比喻,帮助你告别算法选择的困惑,轻松踏入AI的大门。
|
6月前
|
机器学习/深度学习 存储 Kubernetes
【重磅发布】AllData数据中台核心功能:机器学习算法平台
杭州奥零数据科技有限公司成立于2023年,专注于数据中台业务,维护开源项目AllData并提供商业版解决方案。AllData提供数据集成、存储、开发、治理及BI展示等一站式服务,支持AI大模型应用,助力企业高效利用数据价值。
|
7月前
|
机器学习/深度学习 人工智能 自然语言处理
AI训练师入行指南(三):机器学习算法和模型架构选择
从淘金到雕琢,将原始数据炼成智能珠宝!本文带您走进数字珠宝工坊,用算法工具打磨数据金砂。从基础的经典算法到精密的深度学习模型,结合电商、医疗、金融等场景实战,手把手教您选择合适工具,打造价值连城的智能应用。掌握AutoML改装套件与模型蒸馏术,让复杂问题迎刃而解。握紧算法刻刀,为数字世界雕刻文明!
257 6
|
8月前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于机器学习的人脸识别算法matlab仿真,对比GRNN,PNN,DNN以及BP四种网络
本项目展示了人脸识别算法的运行效果(无水印),基于MATLAB2022A开发。核心程序包含详细中文注释及操作视频。理论部分介绍了广义回归神经网络(GRNN)、概率神经网络(PNN)、深度神经网络(DNN)和反向传播(BP)神经网络在人脸识别中的应用,涵盖各算法的结构特点与性能比较。
|
9月前
|
机器学习/深度学习 算法 网络安全
CCS 2024:如何严格衡量机器学习算法的隐私泄露? ETH有了新发现
在2024年CCS会议上,苏黎世联邦理工学院的研究人员提出,当前对机器学习隐私保护措施的评估可能存在严重误导。研究通过LiRA攻击评估了五种经验性隐私保护措施(HAMP、RelaxLoss、SELENA、DFKD和SSL),发现现有方法忽视最脆弱数据点、使用较弱攻击且未与实际差分隐私基线比较。结果表明这些措施在更强攻击下表现不佳,而强大的差分隐私基线则提供了更好的隐私-效用权衡。
226 14
|
8月前
|
机器学习/深度学习 人工智能 自然语言处理
解锁机器学习的新维度:元学习的算法与应用探秘
元学习作为一个重要的研究领域,正逐渐在多个应用领域展现其潜力。通过理解和应用元学习的基本算法,研究者可以更好地解决在样本不足或任务快速变化的情况下的学习问题。随着研究的深入,元学习有望在人工智能的未来发展中发挥更大的作用。
|
27天前
|
传感器 机器学习/深度学习 编解码
MATLAB|主动噪声和振动控制算法——对较大的次级路径变化具有鲁棒性
MATLAB|主动噪声和振动控制算法——对较大的次级路径变化具有鲁棒性
143 3
|
1月前
|
存储 编解码 算法
【多光谱滤波器阵列设计的最优球体填充】使用MSFA设计方法进行各种重建算法时,图像质量可以提高至多2 dB,并在光谱相似性方面实现了显著提升(Matlab代码实现)
【多光谱滤波器阵列设计的最优球体填充】使用MSFA设计方法进行各种重建算法时,图像质量可以提高至多2 dB,并在光谱相似性方面实现了显著提升(Matlab代码实现)
|
21天前
|
机器学习/深度学习 算法 数据可视化
基于MVO多元宇宙优化的DBSCAN聚类算法matlab仿真
本程序基于MATLAB实现MVO优化的DBSCAN聚类算法,通过多元宇宙优化自动搜索最优参数Eps与MinPts,提升聚类精度。对比传统DBSCAN,MVO-DBSCAN有效克服参数依赖问题,适应复杂数据分布,增强鲁棒性,适用于非均匀密度数据集的高效聚类分析。

热门文章

最新文章