李宏毅机器学习(4)

这篇博客探讨了如何使用概率模型解决分类问题,包括贝叶斯公式、正态分布和最大似然估计。通过训练数据求得平均值μ和协方差矩阵Σ,然后利用这些参数进行分类。当正态分布不足以描述数据时,可以采用朴素贝叶斯分类器。文章还讨论了简化模型,如不同类别共享协方差矩阵,以及sigmoid函数在分类边界上的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Classification

简介

定义:输入一个xxx,输出xxx属于哪一种类

  • x⇒Function⇒Class nx \Rightarrow Function \Rightarrow Class\ nxFunctionClass n

应用场景:

  • 金融:输入:存款、收入、职位、年龄……输出:贷款ororor拒绝。
  • 医疗诊断:输入:症状、年龄、性别……输出:得了什么病。
  • 手写识别:输入:图像。输出:是哪个字
  • 人脸识别:输入:人脸图像。输出:是哪个人。
  • 宝可梦识别:输入:物攻、特攻、生命、物防、特防……输出:这是哪个宝可梦。

不能用Regression做Classification,因为两者评价方法不一样。
在这里插入图片描述

一种解法

在这里插入图片描述
用类似贝叶斯公式的方法测算概率。
对training data求正态分布,然后用来预测。
fμ,Σ=1(2π)D/2⋅1∣Σ∣1/2e−12(x−μ)TΣ−1(x−μ)f_{μ,Σ}=\frac{1}{(2π)^{D/2}}·\frac{1}{|Σ|^{1/2}}e^{-\frac{1}{2}(x-μ)^TΣ^{-1}(x-μ)}fμ,Σ=(2π)D/21Σ1/21e21(xμ)TΣ1(xμ)
如何求μμμΣΣΣ
L(μ,Σ)=fμ,Σ(x1)fμ,Σ(x2)...fμ,Σ(xm)L(μ,Σ)=f_{μ,Σ}(x^{1})f_{μ,Σ}(x^{2})...f_{μ,Σ}(x^{m})L(μ,Σ)=fμ,Σ(x1)fμ,Σ(x2)...fμ,Σ(xm)
要求(μ∗,Σ∗)(μ^*,Σ^*)(μ,Σ)使L(μ,Σ)L(μ,Σ)L(μ,Σ)最大,即:

  • (μ∗,Σ∗)=arg maxμ,ΣL(μ,Σ)(μ^*,Σ^*)=arg\ max_{μ,Σ}L(μ,Σ)(μ,Σ)=arg maxμ,ΣL(μ,Σ)
  • μ∗=179∑n=179xn,Σ∗=179∑n=179(xn−μ∗)(xn−μ∗)Tμ^*=\frac{1}{79}\sum_{n=1}^{79}{x_n},Σ^*=\frac{1}{79}\sum_{n=1}{79}{(x_n-μ^*)(x_n-μ^*)^T}μ=791n=179xnΣ=791n=179(xnμ)(xnμ)T

然后就可以进行Classification:

  • P(C1∣x)=P(x∣C1)P(C1)P(x∣C1)P(C1)+P(x∣C2)P(C2),if P(C1∣x)>0.5,then x belongs to class1P(C_1|x)=\frac{P(x|C_1)P(C_1)}{P(x|C_1)P(C_1)+P(x|C_2)P(C_2)},if\ P(C_1|x)>0.5,then\ x\ belongs\ to\ class1P(C1x)=P(xC1)P(C1)+P(xC2)P(C2)P(xC1)P(C1),if P(C1x)>0.5,then x belongs to class1

改进

不同的Class可以共用一组covariance(Σ)。原因:如果Σ太多,会导致参数太多,容易出现过拟合的情况。

找到μ1,μ2,Σμ_1,μ_2,Σμ1,μ2,Σ来最大化L(μ1,μ2,Σ)L(μ_1,μ_2,Σ)L(μ1,μ2,Σ)
L(μ1,μ2,Σ)=fμ1,Σ(x1)fμ1,Σ(x2)...fμ1,Σ(x79)fμ2,Σ(x80)fμ2,Σ(x81)...fμ2,Σ(x140)L(μ_1,μ_2,Σ)=f_{μ_1,Σ}(x_1)f_{μ_1,Σ}(x_2)...f_{μ_1,Σ}(x_{79})f_{μ_2,Σ}(x_{80})f_{μ_2,Σ}(x_{81})...f_{μ_2,Σ}(x_{140})L(μ1,μ2,Σ)=fμ1,Σ(x1)fμ1,Σ(x2)...fμ1,Σ(x79)fμ2,Σ(x80)fμ2,Σ(x81)...fμ2,Σ(x140)
μ1,μ2μ_1,μ_2μ1,μ2与之前一样,Σ=79140Σ1+61140Σ2Σ=\frac{79}{140}Σ_1+\frac{61}{140}Σ_2Σ=14079Σ1+14061Σ2

其他情况

很多情况下使用正态分布就可以了,但有时正态分布并不能满足需求,如:

BinariyfeatureBinariy featureBinariyfeature(二元特征),比如判断一个宝可梦是不是神兽。

如果假设所有dimensions都是独立的,这个方法叫做Naive Bayes Classifier。

Posterior Probability

P(C1∣x)=P(x∣C1)P(C1)P(x∣C1)P(C1)+P(x∣C2)P(C2)=11+P(x∣C2)P(C2)P(x∣C1)P(C1)=σ(z)P(C_1|x)=\frac{P(x|C_1)P(C_1)}{P(x|C_1)P(C_1)+P(x|C_2)P(C_2)}=\frac{1}{1+\frac{P(x|C_2)P(C_2)}{P(x|C_1)P(C_1)}}=σ(z)P(C1x)=P(xC1)P(C1)+P(xC2)P(C2)P(xC1)P(C1)=1+P(xC1)P(C1)P(xC2)P(C2)1=σ(z)称此函数为sigmoid functionsigmoid\ functionsigmoid function
z=lnP(x∣C1)P(C1)P(x∣C2)P(C2)z=ln\frac{P(x|C_1)P(C_1)}{P(x|C_2)P(C_2)}z=lnP(xC2)P(C2)P(xC1)P(C1)P(C1∣x)=11+e−2P(C_1|x)=\frac{1}{1+e^{-2}}P(C1x)=1+e21
z=lnP(x∣C1)P(x∣C2)+lnP(C1)P(C2)=lnP(x∣C1)P(x∣C2)+lnN1N2z=ln\frac{P(x|C_1)}{P(x|C_2)}+ln\frac{P(C_1)}{P(C_2)}=ln\frac{P(x|C_1)}{P(x|C_2)}+ln\frac{N_1}{N_2}z=lnP(xC2)P(xC1)+lnP(C2)P(C1)=lnP(xC2)P(xC1)+lnN2N1
P(x∣C1)=1(2π)D/2⋅1∣Σ1∣1/2e−12(x−μ1)TΣ1−1(x−μ1)P(x|C_1)=\frac{1}{(2π)^{D/2}}·\frac{1}{|Σ_1|^{1/2}}e^{-\frac{1}{2}(x-μ_1)^TΣ_1^{-1}(x-μ_1)}P(xC1)=(2π)D/21Σ11/21e21(xμ1)TΣ11(xμ1)
P(x∣C2)=1(2π)D/2⋅1∣Σ2∣1/2e−12(x−μ2)TΣ2−1(x−μ2)P(x|C_2)=\frac{1}{(2π)^{D/2}}·\frac{1}{|Σ_2|^{1/2}}e^{-\frac{1}{2}(x-μ_2)^TΣ_2^{-1}(x-μ_2)}P(xC2)=(2π)D/21Σ21/21e21(xμ2)TΣ21(xμ2)
相除得到ln∣Σ1∣1/2∣Σ2∣1/2e−12(x−μ1)TΣ1−1(x−μ1)+12(x−μ2)TΣ2−1(x−μ2)ln\frac{|Σ_1|^{1/2}}{|Σ_2|^{1/2}}e^{-\frac{1}{2}(x-μ_1)^TΣ_1^{-1}(x-μ_1)+\frac{1}{2}(x-μ_2)^TΣ_2^{-1}(x-μ_2)}lnΣ21/2Σ11/2e21(xμ1)TΣ11(xμ1)+21(xμ2)TΣ21(xμ2)
但一般情况下,Σ1=Σ2=ΣΣ_1=Σ_2=ΣΣ1=Σ2=Σ
所以z=(μ1−μ2)TΣ−1x−12μ1TΣ1−1μ1+12μ2TΣ2−1μ2+lnN1N2=wTx+bz=(μ_1-μ_2)^TΣ^{-1}x-\frac{1}{2}μ_1^TΣ_1^{-1}μ_1+\frac{1}{2}μ_2^TΣ_2^{-1}μ_2+ln\frac{N_1}{N_2}=w^Tx+bz=(μ1μ2)TΣ1x21μ1TΣ11μ1+21μ2TΣ21μ2+lnN2N1=wTx+b
P(C1∣x)=σ(w⋅x+b)P(C_1|x)=σ(w·x+b)P(C1x)=σ(wx+b)

总结

In generative model,we estimate N1,N2,μ1,μ2,ΣN_1,N_2,μ_1,μ_2,ΣN1,N2,μ1,μ2,Σ,Then,we have www and bbb.
但是,能否直接求出wwwbbb呢?
请看下篇

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值