ai(四) 分类
4 分类:概率生成模型
分类概念

分类:找一个 f u n c t i o n function function 函数,输入对象 x x x 特征, 输出是该对象在 n n n 个类别中对应的类别。
回归模型vs概率模型
回归模型
如果把分类当作回归硬解:
1.二分类

举一个二分类的例子:输入神奇宝贝的特征
x
x
x,判断属于类别1或者类别2。
用回归处理:
- 类别1 → \rightarrow → y y y预测值为1
- 类别2
→
\rightarrow
→
y
y
y 预测值为-1
训练模型:接近1的当作类别1,接近-1的当作类别2.
这样处理二分类出现的问题: - 当数据比较集中时候,如左图,模型准确度较高。
- 如果数据比较分散,如右图,绿色线是理想的 b + w 1 x 1 + w 2 x 2 = 0 b+w_1x_1+w_2x_2=0 b+w1x1+w2x2=0 的位置,但是由于回归模型的判断模型好坏的机制会导致模型训练的时候,为了减少error而将函数进行偏移(如图中紫色的线)
2.多分类问题
如果用回归问题解决多分类问题会导致不同类别间存在某种关系,但实际这个关系是不存在的。
所以分类问题不能通过回归解决。
理想模型

二分类问题为例:
模型定义:
f
(
g
(
x
)
)
f(g(x))
f(g(x))
损失函数定义:在训练集上面测试错误的次数。
优化模型的方法:SVM,Perceptron(感知机),后面介绍。
概率生成模型(generative model)
简称生成模型。
![![[attachment/Pasted image 20260321224656.png]]](https://i-blog.csdnimg.cn/direct/74ed608827f647b7aa2c66264b3caebc.png)
-
先验概率:
- P ( C 1 ) P(C_1) P(C1): 所有类别中选到 C 1 C_1 C1类别的概率
- P ( C 2 ) : P(C_2): P(C2): 所有类别中选到 C 2 C_2 C2类别的概率
-
条件概率:
- P ( x ∣ C 1 ) P(x|C_1) P(x∣C1) :抽到类别 C 1 C_1 C1中的 x x x的概率
- P ( x ∣ C 2 ) P(x|C_2) P(x∣C2) :抽到类别 C 2 C_2 C2中的 x x x的概率
-
后验概率:
- P ( C 1 ∣ x ) P(C_1|x) P(C1∣x):抽到 x x x是属于 C 1 C_1 C1类别的概率
-
P
(
C
2
∣
x
)
P(C_2|x)
P(C2∣x):抽到
x
x
x是属于
C
2
C_2
C2类别的概率
生成模型:(以二分类为例)知道 P ( C 1 ) 、 P ( C 2 ) 、 P ( x ∣ C 1 ) 、 P ( x ∣ C 2 ) P(C_1)、P(C_2)、P(x|C_1)、P(x|C_2) P(C1)、P(C2)、P(x∣C1)、P(x∣C2) 【红色方框中的值】的值,就可以计算 P ( C 1 ∣ x ) 、 P ( C 2 ∣ x ) P(C_1|x)、P(C_2|x) P(C1∣x)、P(C2∣x)。那个数值大就属于哪个分类。根据训练数据集来估计红色方框中的值。
-
P ( C 1 ) 、 P ( C 2 ) P(C_1)、P(C_2) P(C1)、P(C2): 直接通过训练数据集计算
-
P ( x ∣ C 1 ) P(x|C_1) P(x∣C1) 、 P ( x ∣ C 2 ) P(x|C_2) P(x∣C2) :利用已有训练数据,估测出期望 μ \mu μ、 ∑ \sum ∑ ,根据高斯分布计算
高斯分布:
高斯分布:相当于函数
f
u
n
c
t
i
o
n
function
function 输入是向量
x
x
x 输出是选中
x
x
x 的概率。(并不完全等价于概率,只是和概率成正比)

- 参数:
- μ \mu μ :期望 → \rightarrow → 决定概率分布的最高点
-
∑
\sum
∑ :协方差矩阵
→
\rightarrow
→ 决定概率分布的离散程度
![![[attachment/Pasted image 20260322162525.png]]](https://i-blog.csdnimg.cn/direct/ceaed2d7a79b4d52b596388894b7b644.png)
测试集的点会在任意期望和协方差构成的高斯分布中,不同处是在不同的高斯分布图中测试集的点的概率大小不同。这时使用到似然函数(Likelihood function)(根据已有数据进行参数估计)
机器学习 - 似然函数:概念、应用与代码实例-腾讯云开发者社区-腾讯云
似然函数:用于量化在给定某参数时,观察到某样本数据的”可能性“,数学定义:
![![[attachment/Pasted image 20260322165203.png]]](https://i-blog.csdnimg.cn/direct/f6f681b983f7481cad75472703344c3e.png)
最大似然估计(Maximum Likelihood Estimation,MLE):最大化似然函数找到最“适合”参数。
举例:给定参数
μ
\mu
μ 、
∑
\sum
∑ 后,通过
L
(
μ
,
∑
)
L(\mu,\sum)
L(μ,∑) 计算训练集中所有数据出现的概率.这里
L
(
μ
,
∑
)
L(\mu,\sum)
L(μ,∑)就是似然函数。使
L
(
μ
,
∑
)
L(\mu,\sum)
L(μ,∑)最大的
L
(
μ
,
∑
)
L(\mu,\sum)
L(μ,∑)记做
L
(
μ
∗
,
∑
∗
)
L(\mu^*,\sum^*)
L(μ∗,∑∗) ,也就是最大似然估计。
(具体计算“最适合”参数的方法没了解)
![[attachment/Pasted image 20260322175301.png]]
生成模型应用
神奇宝贝属性预测
- 输入:一只神奇宝贝的特征(整体强度,生命值,攻击力,防御力,特殊攻击力,特殊防御力,速度等)
- 输出:属于水属性或者是一般属性
假设:训练数据集(79只水属性,61只一般属性)
计算模型参数:四个概率
![![[attachment/Pasted image 20260322171427.png]]](https://i-blog.csdnimg.cn/direct/46d5b1c01be64a1d8f03751f34597375.png)
![![[attachment/Pasted image 20260322171441.png]]](https://i-blog.csdnimg.cn/direct/59aa21417de14f95afe2bb4a832b1971.png)
根据参数计算需要的数值:

得到模型结果:

左上角的图中: 蓝色 → \rightarrow → 水属性 红色 → \rightarrow → 一般属性 ,越红的地方说明是水属性的可能越高。
右上角是在训练集上的结果。 - 红色部分: P ( C 1 ∣ x ) P(C_1|x) P(C1∣x) >0.5 ,属于类别1 → \rightarrow → 水属性
- 蓝色部分
→
\rightarrow
→ 一般属性
右下角是在测试集上的结果,准确度:47%
47%的准确率是只处理二维(两个属性)的情况,如果加入更多的特征,比如处理7维,在测试集上的准确度也只能达到54%.
模型优化:

一般不会为每个高斯分布计算不同的协方差矩阵。协方差矩阵中参数的多少和特征
x
x
x成正比。比如:3个特征
x
x
x,对应协方差矩阵中参数个数为9个。如果模型参数过多容易过拟合,所以为两个不同类别的高斯分布相同的协方差矩阵。
![![[attachment/Pasted image 20260322175040.png]]](https://i-blog.csdnimg.cn/direct/ee5f2c1caba54fa784b29c285133ed4d.png)
μ
1
\mu_1
μ1和
μ
2
\mu_2
μ2的计算方法不变,还是直接将特征相加求平均。
∑
\sum
∑ 计算不同(没了解具体怎么算)。
经过上面的简化获得新的模型,在测试集上面的测试结果(7维,54%
→
\rightarrow
→ 73%):

新分类的边界是线性 → \rightarrow → 这种分类叫做线性模型。
概率模型-建模三部曲
简化为前面的三大步:实际找到可以产生较为准确的输入特征对应分类的概率的函数。
![![[attachment/Pasted image 20260322175934.png]]](https://i-blog.csdnimg.cn/direct/d2e2f94e8c3842faa5edbf98084cdf14.png)
为什么是通过高斯分布作为几率模型?(各个特征间存在一定的联系)
![![[attachment/Pasted image 20260322181526.png]]](https://i-blog.csdnimg.cn/direct/c3d2a91cfa3248c89976d7cc219b06e8.png)
如果每个维度用概率分布模型产生产生出来的几率是相互独立的,可以将
P
(
x
∣
C
1
)
P(x|C_1)
P(x∣C1) 进行上面的拆分,会使协方差矩阵除去对角线都是0,减少参数量,但是这种行为不可取。一般不同维度间会有一定的关联。
- 二元分类:通常不会用高斯分布,可以假设是符合 Bernoulli distribution(伯努利分布)
- 假设所有的feature都是相互独立产生的,这种分类叫做 Naive Bayes Classifier(朴素贝叶斯分类器)
对后验概率进行处理:
exp 是 指数函数 (Exponential function) 的缩写:
exp
(
−
z
)
\exp(-z)
exp(−z) 时,它等同于:
e
−
z
或者
1
e
z
e^{-z} \quad \text{或者} \quad \frac{1}{e^z}
e−z或者ez1
![![[attachment/Pasted image 20260322182731.png]]](https://i-blog.csdnimg.cn/direct/7dbe11b5b6eb4dadbbddf1d1cb25a00f.png)
对z进行处理:(推导过程,记下最后结论好了)
![![[attachment/Pasted image 20260322184152.png]]](https://i-blog.csdnimg.cn/direct/f5dabd1ae98a4d74adce80436641ee63.png)
![![[attachment/Pasted image 20260322184209.png]]](https://i-blog.csdnimg.cn/direct/1eea39387d7d42ad9df6398c90837f2e.png)

一般协方差矩阵是共用的,所以根据条件
∑
1
=
∑
2
=
∑
\sum^1=\sum^2=\sum
∑1=∑2=∑继续对
z
z
z进行化简:
![![[attachment/Pasted image 20260322184337.png]]](https://i-blog.csdnimg.cn/direct/2576d4ab2fbd4fac9f1e99cc1c60c4d7.png)
-
w
T
=
(
μ
1
−
μ
2
)
T
∑
−
1
w^T=(\mu^1-\mu^2)^T\sum^{-1}
wT=(μ1−μ2)T∑−1 ,后面3项都是标量作为
b
b
b
得到最终化简结果: P ( C 1 ∣ x ) = σ ( w ⋅ x + b ) P(C1|x)=σ(w⋅x+b) P(C1∣x)=σ(w⋅x+b)
结论:知道 N 1 . N 2 , μ 1 , μ 2 , ∑ N_1.N_2,\mu^1,\mu^2,\sum N1.N2,μ1,μ2,∑ 就能够计算出 w , b w,b w,b .
如果是作为线性模型处理为什么要先计算一大堆的概率后再得出 w , b w,b w,b,后面介绍其他方法。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)